}
}
public void testIterator() {
SchemeRegistry schmreg = new SchemeRegistry();
List<String> names = schmreg.getSchemeNames();
assertNotNull(names);
assertTrue(names.isEmpty());
Scheme http = new Scheme
("http", PlainSocketFactory.getSocketFactory(), 80);
Scheme https = new Scheme
("https", SecureSocketFactoryMockup.INSTANCE, 443);
// ("https", SSLSocketFactory.getSocketFactory(), 443);
schmreg.register(http);
schmreg.register(https);
names = schmreg.getSchemeNames();
assertNotNull(names);
assertFalse(names.isEmpty());
boolean flaghttp = false;
boolean flaghttps = false;
String name = names.get(0);
if ("http".equals(name))
flaghttp = true;
else if ("https".equals(name))
flaghttps = true;
else
fail("unexpected name in iterator: " + name);
assertNotNull(schmreg.get(name));
schmreg.unregister(name);
assertNull(schmreg.get(name));
name = names.get(1);
if ("http".equals(name)) {
if (flaghttp) fail("name 'http' found twice");
} else if ("https".equals(name)) {
if (flaghttps) fail("name 'https' found twice");
} else {
fail("unexpected name in iterator: " + name);
}
assertNotNull(schmreg.get(name));
}