aboutsummaryrefslogtreecommitdiff
path: root/okhttp-tests/src/test/java/com/squareup/okhttp/URLConnectionTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'okhttp-tests/src/test/java/com/squareup/okhttp/URLConnectionTest.java')
-rw-r--r--okhttp-tests/src/test/java/com/squareup/okhttp/URLConnectionTest.java21
1 files changed, 19 insertions, 2 deletions
diff --git a/okhttp-tests/src/test/java/com/squareup/okhttp/URLConnectionTest.java b/okhttp-tests/src/test/java/com/squareup/okhttp/URLConnectionTest.java
index a3e1450..613a995 100644
--- a/okhttp-tests/src/test/java/com/squareup/okhttp/URLConnectionTest.java
+++ b/okhttp-tests/src/test/java/com/squareup/okhttp/URLConnectionTest.java
@@ -105,6 +105,20 @@ public final class URLConnectionTest {
@Rule public final MockWebServer server2 = new MockWebServer();
@Rule public final TemporaryFolder tempDir = new TemporaryFolder();
+ // Android-added: Use TLS 1.3 and 1.2 for testing
+ private static final ConnectionSpec TLS_SPEC_1_3 =
+ new ConnectionSpec.Builder(ConnectionSpec.MODERN_TLS)
+ .tlsVersions(TlsVersion.TLS_1_3)
+ .build();
+
+ private static final ConnectionSpec TLS_SPEC_1_2 =
+ new ConnectionSpec.Builder(ConnectionSpec.MODERN_TLS)
+ .tlsVersions(TlsVersion.TLS_1_2)
+ .build();
+
+ private static final List<ConnectionSpec> TLS_SPEC_NO_V1
+ = Arrays.asList(TLS_SPEC_1_3, TLS_SPEC_1_2);
+
private SSLContext sslContext = SslContextBuilder.localhost();
private OkUrlFactory client;
private HttpURLConnection connection;
@@ -605,6 +619,7 @@ public final class URLConnectionTest {
server.enqueue(new MockResponse().setBody("this response comes via SSL"));
suppressTlsFallbackScsv(client.client());
+ client.client().setConnectionSpecs(TLS_SPEC_NO_V1);
client.client().setHostnameVerifier(new RecordingHostnameVerifier());
connection = client.open(server.getUrl("/foo"));
@@ -612,7 +627,7 @@ public final class URLConnectionTest {
RecordedRequest request = server.takeRequest();
assertEquals("GET /foo HTTP/1.1", request.getRequestLine());
- assertEquals(TlsVersion.TLS_1_0, request.getTlsVersion());
+ assertEquals(TlsVersion.TLS_1_2, request.getTlsVersion());
}
@Test public void connectViaHttpsWithSSLFallbackFailuresRecorded() throws Exception {
@@ -621,6 +636,7 @@ public final class URLConnectionTest {
server.enqueue(new MockResponse().setSocketPolicy(SocketPolicy.FAIL_HANDSHAKE));
suppressTlsFallbackScsv(client.client());
+ client.client().setConnectionSpecs(TLS_SPEC_NO_V1);
client.client().setDns(new SingleInetAddressDns());
client.client().setHostnameVerifier(new RecordingHostnameVerifier());
@@ -648,6 +664,7 @@ public final class URLConnectionTest {
server.enqueue(new MockResponse().setBody("def"));
suppressTlsFallbackScsv(client.client());
+ client.client().setConnectionSpecs(TLS_SPEC_NO_V1);
client.client().setHostnameVerifier(new RecordingHostnameVerifier());
assertContent("abc", client.open(server.getUrl("/")));
@@ -658,7 +675,7 @@ public final class URLConnectionTest {
assertContent("def", client.open(server.getUrl("/")));
Set<TlsVersion> tlsVersions =
- EnumSet.of(TlsVersion.TLS_1_0, TlsVersion.TLS_1_2); // v1.2 on OpenJDK 8.
+ EnumSet.of(TlsVersion.TLS_1_3);
RecordedRequest request1 = server.takeRequest();
assertTrue(tlsVersions.contains(request1.getTlsVersion()));