OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 package org.chromium.net; | 5 package org.chromium.net; |
6 | 6 |
7 import android.os.ConditionVariable; | 7 import android.os.ConditionVariable; |
8 import android.support.test.filters.LargeTest; | 8 import android.support.test.filters.LargeTest; |
9 import android.support.test.filters.SmallTest; | 9 import android.support.test.filters.SmallTest; |
10 | 10 |
(...skipping 29 matching lines...) Expand all Loading... |
40 QuicTestServer.startQuicTestServer(getContext()); | 40 QuicTestServer.startQuicTestServer(getContext()); |
41 | 41 |
42 mBuilder = new ExperimentalCronetEngine.Builder(getContext()); | 42 mBuilder = new ExperimentalCronetEngine.Builder(getContext()); |
43 mBuilder.enableNetworkQualityEstimator(true).enableQuic(true); | 43 mBuilder.enableNetworkQualityEstimator(true).enableQuic(true); |
44 mBuilder.addQuicHint(QuicTestServer.getServerHost(), QuicTestServer.getS
erverPort(), | 44 mBuilder.addQuicHint(QuicTestServer.getServerHost(), QuicTestServer.getS
erverPort(), |
45 QuicTestServer.getServerPort()); | 45 QuicTestServer.getServerPort()); |
46 | 46 |
47 // TODO(mgersh): Enable connection migration once it works, see http://c
rbug.com/634910 | 47 // TODO(mgersh): Enable connection migration once it works, see http://c
rbug.com/634910 |
48 JSONObject quicParams = new JSONObject() | 48 JSONObject quicParams = new JSONObject() |
49 .put("connection_options", "PACE,IW10,FO
O,DEADBEEF") | 49 .put("connection_options", "PACE,IW10,FO
O,DEADBEEF") |
50 .put("host_whitelist", "test.example.com
") | |
51 .put("max_server_configs_stored_in_prope
rties", 2) | 50 .put("max_server_configs_stored_in_prope
rties", 2) |
52 .put("delay_tcp_race", true) | 51 .put("delay_tcp_race", true) |
53 .put("idle_connection_timeout_seconds",
300) | 52 .put("idle_connection_timeout_seconds",
300) |
54 .put("close_sessions_on_ip_change", fals
e) | 53 .put("close_sessions_on_ip_change", fals
e) |
55 .put("migrate_sessions_on_network_change
", false) | 54 .put("migrate_sessions_on_network_change
", false) |
56 .put("migrate_sessions_early", false) | 55 .put("migrate_sessions_early", false) |
57 .put("race_cert_verification", true); | 56 .put("race_cert_verification", true); |
58 JSONObject hostResolverParams = CronetTestUtil.generateHostResolverRules
(); | 57 JSONObject hostResolverParams = CronetTestUtil.generateHostResolverRules
(); |
59 JSONObject experimentalOptions = new JSONObject() | 58 JSONObject experimentalOptions = new JSONObject() |
60 .put("QUIC", quicParams) | 59 .put("QUIC", quicParams) |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
112 assertTrue(fileContainsString("local_prefs.json", | 111 assertTrue(fileContainsString("local_prefs.json", |
113 QuicTestServer.getServerHost() + ":" + QuicTestServer.getServerP
ort())); | 112 QuicTestServer.getServerHost() + ":" + QuicTestServer.getServerP
ort())); |
114 mTestFramework.mCronetEngine.shutdown(); | 113 mTestFramework.mCronetEngine.shutdown(); |
115 | 114 |
116 // Make another request using a new context but with no QUIC hints. | 115 // Make another request using a new context but with no QUIC hints. |
117 ExperimentalCronetEngine.Builder builder = | 116 ExperimentalCronetEngine.Builder builder = |
118 new ExperimentalCronetEngine.Builder(getContext()); | 117 new ExperimentalCronetEngine.Builder(getContext()); |
119 builder.setStoragePath(CronetTestFramework.getTestStorage(getContext()))
; | 118 builder.setStoragePath(CronetTestFramework.getTestStorage(getContext()))
; |
120 builder.enableHttpCache(CronetEngine.Builder.HTTP_CACHE_DISK, 1000 * 102
4); | 119 builder.enableHttpCache(CronetEngine.Builder.HTTP_CACHE_DISK, 1000 * 102
4); |
121 builder.enableQuic(true); | 120 builder.enableQuic(true); |
122 JSONObject quicParams = new JSONObject().put("host_whitelist", "test.exa
mple.com"); | |
123 JSONObject hostResolverParams = CronetTestUtil.generateHostResolverRules
(); | 121 JSONObject hostResolverParams = CronetTestUtil.generateHostResolverRules
(); |
124 JSONObject experimentalOptions = new JSONObject() | 122 JSONObject experimentalOptions = new JSONObject() |
125 .put("QUIC", quicParams) | |
126 .put("HostResolverRules", hostR
esolverParams); | 123 .put("HostResolverRules", hostR
esolverParams); |
127 builder.setExperimentalOptions(experimentalOptions.toString()); | 124 builder.setExperimentalOptions(experimentalOptions.toString()); |
128 CronetTestUtil.setMockCertVerifierForTesting( | 125 CronetTestUtil.setMockCertVerifierForTesting( |
129 builder, QuicTestServer.createMockCertVerifier()); | 126 builder, QuicTestServer.createMockCertVerifier()); |
130 mTestFramework = startCronetTestFrameworkWithUrlAndCronetEngineBuilder(n
ull, builder); | 127 mTestFramework = startCronetTestFrameworkWithUrlAndCronetEngineBuilder(n
ull, builder); |
131 TestUrlRequestCallback callback2 = new TestUrlRequestCallback(); | 128 TestUrlRequestCallback callback2 = new TestUrlRequestCallback(); |
132 requestBuilder = mTestFramework.mCronetEngine.newUrlRequestBuilder( | 129 requestBuilder = mTestFramework.mCronetEngine.newUrlRequestBuilder( |
133 quicURL, callback2, callback2.getExecutor()); | 130 quicURL, callback2, callback2.getExecutor()); |
134 requestBuilder.build().start(); | 131 requestBuilder.build().start(); |
135 callback2.blockForDone(); | 132 callback2.blockForDone(); |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
277 MetricsTestUtil.checkNoConnectTiming(requestInfo.getMetrics()); | 274 MetricsTestUtil.checkNoConnectTiming(requestInfo.getMetrics()); |
278 | 275 |
279 mTestFramework.mCronetEngine.shutdown(); | 276 mTestFramework.mCronetEngine.shutdown(); |
280 } | 277 } |
281 | 278 |
282 // Helper method to assert that the request is negotiated over QUIC. | 279 // Helper method to assert that the request is negotiated over QUIC. |
283 private void assertIsQuic(UrlResponseInfo responseInfo) { | 280 private void assertIsQuic(UrlResponseInfo responseInfo) { |
284 assertTrue(responseInfo.getNegotiatedProtocol().startsWith(QUIC_PROTOCOL
_STRING_PREFIX)); | 281 assertTrue(responseInfo.getNegotiatedProtocol().startsWith(QUIC_PROTOCOL
_STRING_PREFIX)); |
285 } | 282 } |
286 } | 283 } |
OLD | NEW |