use of okhttp3.Dns in project zipkin by openzipkin.
the class PseudoAddressRecordSetTest method onlyLooksUpHostnames.
@Test
public void onlyLooksUpHostnames() throws UnknownHostException {
underlying = hostname -> {
assertThat(hostname).isEqualTo("myhost");
return asList(InetAddresses.forString("2.2.2.2"));
};
Dns result = PseudoAddressRecordSet.create(asList("http://1.1.1.1:9200", "http://myhost:9200"), underlying);
assertThat(result.lookup("foo")).containsExactly(InetAddresses.forString("1.1.1.1"), InetAddresses.forString("2.2.2.2"));
}
use of okhttp3.Dns in project zipkin by openzipkin.
the class PseudoAddressRecordSetTest method concatenatesIPv4List.
@Test
public void concatenatesIPv4List() throws UnknownHostException {
Dns result = PseudoAddressRecordSet.create(asList("http://1.1.1.1:9200", "http://2.2.2.2:9200"), underlying);
assertThat(result).isInstanceOf(PseudoAddressRecordSet.StaticDns.class);
assertThat(result.lookup("foo")).containsExactly(InetAddresses.forString("1.1.1.1"), InetAddresses.forString("2.2.2.2"));
}
use of okhttp3.Dns in project okhttp by square.
the class ConnectionCoalescingTest method setUp.
@Before
public void setUp() throws Exception {
rootCa = new HeldCertificate.Builder().serialNumber("1").ca(3).commonName("root").build();
certificate = new HeldCertificate.Builder().issuedBy(rootCa).serialNumber("2").commonName(server.getHostName()).subjectAlternativeName(server.getHostName()).subjectAlternativeName("san.com").subjectAlternativeName("*.wildcard.com").subjectAlternativeName("differentdns.com").build();
serverIps = Dns.SYSTEM.lookup(server.getHostName());
dns.set(server.getHostName(), serverIps);
dns.set("san.com", serverIps);
dns.set("nonsan.com", serverIps);
dns.set("www.wildcard.com", serverIps);
dns.set("differentdns.com", Collections.<InetAddress>emptyList());
SslClient sslClient = new SslClient.Builder().addTrustedCertificate(rootCa.certificate).build();
client = new OkHttpClient.Builder().dns(dns).sslSocketFactory(sslClient.socketFactory, sslClient.trustManager).build();
SslClient serverSslClient = new SslClient.Builder().certificateChain(certificate, rootCa).build();
server.useHttps(serverSslClient.socketFactory, false);
url = server.url("/robots.txt");
}
use of okhttp3.Dns in project okhttp by square.
the class HttpOverHttp2Test method recoverFromOneInternalErrorRequiresNewConnection.
@Test
public void recoverFromOneInternalErrorRequiresNewConnection() throws Exception {
server.enqueue(new MockResponse().setSocketPolicy(SocketPolicy.RESET_STREAM_AT_START).setHttp2ErrorCode(ErrorCode.INTERNAL_ERROR.httpCode));
server.enqueue(new MockResponse().setBody("abc"));
client = client.newBuilder().dns(new DoubleInetAddressDns()).build();
Call call = client.newCall(new Request.Builder().url(server.url("/")).build());
Response response = call.execute();
assertEquals("abc", response.body().string());
// New connection.
assertEquals(0, server.takeRequest().getSequenceNumber());
// New connection.
assertEquals(0, server.takeRequest().getSequenceNumber());
}
use of okhttp3.Dns in project okhttp by square.
the class RouteSelectorTest method explicitProxyTriesThatProxysAddressesOnly.
@Test
public void explicitProxyTriesThatProxysAddressesOnly() throws Exception {
Address address = new Address(uriHost, uriPort, dns, socketFactory, null, null, null, authenticator, proxyA, protocols, connectionSpecs, proxySelector);
RouteSelector routeSelector = new RouteSelector(address, routeDatabase);
assertTrue(routeSelector.hasNext());
dns.set(proxyAHost, dns.allocate(2));
assertRoute(routeSelector.next(), address, proxyA, dns.lookup(proxyAHost, 0), proxyAPort);
assertRoute(routeSelector.next(), address, proxyA, dns.lookup(proxyAHost, 1), proxyAPort);
assertFalse(routeSelector.hasNext());
dns.assertRequests(proxyAHost);
// No proxy selector requests!
proxySelector.assertRequests();
}
Aggregations