OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 static org.chromium.base.CollectionUtil.newHashSet; | 7 import static org.chromium.base.CollectionUtil.newHashSet; |
8 | 8 |
9 import android.os.ConditionVariable; | 9 import android.os.ConditionVariable; |
10 import android.test.suitebuilder.annotation.SmallTest; | 10 import android.test.suitebuilder.annotation.SmallTest; |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
75 | 75 |
76 @SmallTest | 76 @SmallTest |
77 @OnlyRunNativeCronet | 77 @OnlyRunNativeCronet |
78 @Feature({"Cronet"}) | 78 @Feature({"Cronet"}) |
79 @SuppressWarnings("deprecation") | 79 @SuppressWarnings("deprecation") |
80 public void testRequestFinishedListener() throws Exception { | 80 public void testRequestFinishedListener() throws Exception { |
81 mTestFramework = startCronetTestFramework(); | 81 mTestFramework = startCronetTestFramework(); |
82 TestRequestFinishedListener requestFinishedListener = new TestRequestFin
ishedListener(); | 82 TestRequestFinishedListener requestFinishedListener = new TestRequestFin
ishedListener(); |
83 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); | 83 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); |
84 TestUrlRequestCallback callback = new TestUrlRequestCallback(); | 84 TestUrlRequestCallback callback = new TestUrlRequestCallback(); |
85 UrlRequest.Builder urlRequestBuilder = new UrlRequest.Builder( | 85 ExperimentalUrlRequest.Builder urlRequestBuilder = |
86 mUrl, callback, callback.getExecutor(), mTestFramework.mCronetEn
gine); | 86 (ExperimentalUrlRequest.Builder) mTestFramework.mCronetEngine.ne
wUrlRequestBuilder( |
| 87 mUrl, callback, callback.getExecutor()); |
87 Date startTime = new Date(); | 88 Date startTime = new Date(); |
88 urlRequestBuilder.addRequestAnnotation("request annotation") | 89 urlRequestBuilder.addRequestAnnotation("request annotation") |
89 .addRequestAnnotation(this) | 90 .addRequestAnnotation(this) |
90 .build() | 91 .build() |
91 .start(); | 92 .start(); |
92 callback.blockForDone(); | 93 callback.blockForDone(); |
93 requestFinishedListener.blockUntilDone(); | 94 requestFinishedListener.blockUntilDone(); |
94 Date endTime = new Date(); | 95 Date endTime = new Date(); |
95 | 96 |
96 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); | 97 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); |
(...skipping 24 matching lines...) Expand all Loading... |
121 @OnlyRunNativeCronet | 122 @OnlyRunNativeCronet |
122 @Feature({"Cronet"}) | 123 @Feature({"Cronet"}) |
123 @SuppressWarnings("deprecation") | 124 @SuppressWarnings("deprecation") |
124 public void testRequestFinishedListenerDirectExecutor() throws Exception { | 125 public void testRequestFinishedListenerDirectExecutor() throws Exception { |
125 mTestFramework = startCronetTestFramework(); | 126 mTestFramework = startCronetTestFramework(); |
126 DirectExecutor testExecutor = new DirectExecutor(); | 127 DirectExecutor testExecutor = new DirectExecutor(); |
127 TestRequestFinishedListener requestFinishedListener = | 128 TestRequestFinishedListener requestFinishedListener = |
128 new TestRequestFinishedListener(testExecutor); | 129 new TestRequestFinishedListener(testExecutor); |
129 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); | 130 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); |
130 TestUrlRequestCallback callback = new TestUrlRequestCallback(); | 131 TestUrlRequestCallback callback = new TestUrlRequestCallback(); |
131 UrlRequest.Builder urlRequestBuilder = new UrlRequest.Builder( | 132 ExperimentalUrlRequest.Builder urlRequestBuilder = |
132 mUrl, callback, callback.getExecutor(), mTestFramework.mCronetEn
gine); | 133 (ExperimentalUrlRequest.Builder) mTestFramework.mCronetEngine.ne
wUrlRequestBuilder( |
| 134 mUrl, callback, callback.getExecutor()); |
133 Date startTime = new Date(); | 135 Date startTime = new Date(); |
134 urlRequestBuilder.addRequestAnnotation("request annotation") | 136 urlRequestBuilder.addRequestAnnotation("request annotation") |
135 .addRequestAnnotation(this) | 137 .addRequestAnnotation(this) |
136 .build() | 138 .build() |
137 .start(); | 139 .start(); |
138 callback.blockForDone(); | 140 callback.blockForDone(); |
139 // Block on the executor, not the listener, since blocking on the listen
er doesn't work when | 141 // Block on the executor, not the listener, since blocking on the listen
er doesn't work when |
140 // it's created with a non-default executor. | 142 // it's created with a non-default executor. |
141 testExecutor.blockUntilDone(); | 143 testExecutor.blockUntilDone(); |
142 Date endTime = new Date(); | 144 Date endTime = new Date(); |
(...skipping 21 matching lines...) Expand all Loading... |
164 @OnlyRunNativeCronet | 166 @OnlyRunNativeCronet |
165 @Feature({"Cronet"}) | 167 @Feature({"Cronet"}) |
166 @SuppressWarnings("deprecation") | 168 @SuppressWarnings("deprecation") |
167 public void testRequestFinishedListenerDifferentThreads() throws Exception { | 169 public void testRequestFinishedListenerDifferentThreads() throws Exception { |
168 mTestFramework = startCronetTestFramework(); | 170 mTestFramework = startCronetTestFramework(); |
169 TestRequestFinishedListener firstListener = new TestRequestFinishedListe
ner(); | 171 TestRequestFinishedListener firstListener = new TestRequestFinishedListe
ner(); |
170 TestRequestFinishedListener secondListener = new TestRequestFinishedList
ener(); | 172 TestRequestFinishedListener secondListener = new TestRequestFinishedList
ener(); |
171 mTestFramework.mCronetEngine.addRequestFinishedListener(firstListener); | 173 mTestFramework.mCronetEngine.addRequestFinishedListener(firstListener); |
172 mTestFramework.mCronetEngine.addRequestFinishedListener(secondListener); | 174 mTestFramework.mCronetEngine.addRequestFinishedListener(secondListener); |
173 TestUrlRequestCallback callback = new TestUrlRequestCallback(); | 175 TestUrlRequestCallback callback = new TestUrlRequestCallback(); |
174 UrlRequest.Builder urlRequestBuilder = new UrlRequest.Builder( | 176 ExperimentalUrlRequest.Builder urlRequestBuilder = |
175 mUrl, callback, callback.getExecutor(), mTestFramework.mCronetEn
gine); | 177 (ExperimentalUrlRequest.Builder) mTestFramework.mCronetEngine.ne
wUrlRequestBuilder( |
| 178 mUrl, callback, callback.getExecutor()); |
176 Date startTime = new Date(); | 179 Date startTime = new Date(); |
177 urlRequestBuilder.addRequestAnnotation("request annotation") | 180 urlRequestBuilder.addRequestAnnotation("request annotation") |
178 .addRequestAnnotation(this) | 181 .addRequestAnnotation(this) |
179 .build() | 182 .build() |
180 .start(); | 183 .start(); |
181 callback.blockForDone(); | 184 callback.blockForDone(); |
182 firstListener.blockUntilDone(); | 185 firstListener.blockUntilDone(); |
183 secondListener.blockUntilDone(); | 186 secondListener.blockUntilDone(); |
184 Date endTime = new Date(); | 187 Date endTime = new Date(); |
185 | 188 |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
221 @SmallTest | 224 @SmallTest |
222 @OnlyRunNativeCronet | 225 @OnlyRunNativeCronet |
223 @Feature({"Cronet"}) | 226 @Feature({"Cronet"}) |
224 @SuppressWarnings("deprecation") | 227 @SuppressWarnings("deprecation") |
225 public void testRequestFinishedListenerFailedRequest() throws Exception { | 228 public void testRequestFinishedListenerFailedRequest() throws Exception { |
226 String connectionRefusedUrl = "http://127.0.0.1:3"; | 229 String connectionRefusedUrl = "http://127.0.0.1:3"; |
227 mTestFramework = startCronetTestFramework(); | 230 mTestFramework = startCronetTestFramework(); |
228 TestRequestFinishedListener requestFinishedListener = new TestRequestFin
ishedListener(); | 231 TestRequestFinishedListener requestFinishedListener = new TestRequestFin
ishedListener(); |
229 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); | 232 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); |
230 TestUrlRequestCallback callback = new TestUrlRequestCallback(); | 233 TestUrlRequestCallback callback = new TestUrlRequestCallback(); |
231 UrlRequest.Builder urlRequestBuilder = new UrlRequest.Builder(connection
RefusedUrl, | 234 UrlRequest.Builder urlRequestBuilder = mTestFramework.mCronetEngine.newU
rlRequestBuilder( |
232 callback, callback.getExecutor(), mTestFramework.mCronetEngine); | 235 connectionRefusedUrl, callback, callback.getExecutor()); |
233 Date startTime = new Date(); | 236 Date startTime = new Date(); |
234 urlRequestBuilder.build().start(); | 237 urlRequestBuilder.build().start(); |
235 callback.blockForDone(); | 238 callback.blockForDone(); |
236 assertTrue(callback.mOnErrorCalled); | 239 assertTrue(callback.mOnErrorCalled); |
237 requestFinishedListener.blockUntilDone(); | 240 requestFinishedListener.blockUntilDone(); |
238 Date endTime = new Date(); | 241 Date endTime = new Date(); |
239 | 242 |
240 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); | 243 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); |
241 assertNotNull("RequestFinishedInfo.Listener must be called", requestInfo
); | 244 assertNotNull("RequestFinishedInfo.Listener must be called", requestInfo
); |
242 assertEquals(connectionRefusedUrl, requestInfo.getUrl()); | 245 assertEquals(connectionRefusedUrl, requestInfo.getUrl()); |
(...skipping 30 matching lines...) Expand all Loading... |
273 @OnlyRunNativeCronet | 276 @OnlyRunNativeCronet |
274 @Feature({"Cronet"}) | 277 @Feature({"Cronet"}) |
275 @SuppressWarnings("deprecation") | 278 @SuppressWarnings("deprecation") |
276 public void testRequestFinishedListenerRemoved() throws Exception { | 279 public void testRequestFinishedListenerRemoved() throws Exception { |
277 mTestFramework = startCronetTestFramework(); | 280 mTestFramework = startCronetTestFramework(); |
278 TestExecutor testExecutor = new TestExecutor(); | 281 TestExecutor testExecutor = new TestExecutor(); |
279 TestRequestFinishedListener requestFinishedListener = | 282 TestRequestFinishedListener requestFinishedListener = |
280 new TestRequestFinishedListener(testExecutor); | 283 new TestRequestFinishedListener(testExecutor); |
281 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); | 284 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); |
282 TestUrlRequestCallback callback = new TestUrlRequestCallback(); | 285 TestUrlRequestCallback callback = new TestUrlRequestCallback(); |
283 UrlRequest.Builder urlRequestBuilder = new UrlRequest.Builder( | 286 UrlRequest.Builder urlRequestBuilder = mTestFramework.mCronetEngine.newU
rlRequestBuilder( |
284 mUrl, callback, callback.getExecutor(), mTestFramework.mCronetEn
gine); | 287 mUrl, callback, callback.getExecutor()); |
285 UrlRequest request = urlRequestBuilder.build(); | 288 UrlRequest request = urlRequestBuilder.build(); |
286 mTestFramework.mCronetEngine.removeRequestFinishedListener(requestFinish
edListener); | 289 mTestFramework.mCronetEngine.removeRequestFinishedListener(requestFinish
edListener); |
287 request.start(); | 290 request.start(); |
288 callback.blockForDone(); | 291 callback.blockForDone(); |
289 testExecutor.runAllTasks(); | 292 testExecutor.runAllTasks(); |
290 | 293 |
291 assertNull("RequestFinishedInfo.Listener must not be called", | 294 assertNull("RequestFinishedInfo.Listener must not be called", |
292 requestFinishedListener.getRequestInfo()); | 295 requestFinishedListener.getRequestInfo()); |
293 mTestFramework.mCronetEngine.shutdown(); | 296 mTestFramework.mCronetEngine.shutdown(); |
294 } | 297 } |
295 | 298 |
296 @SmallTest | 299 @SmallTest |
297 @OnlyRunNativeCronet | 300 @OnlyRunNativeCronet |
298 @Feature({"Cronet"}) | 301 @Feature({"Cronet"}) |
299 public void testRequestFinishedListenerCanceledRequest() throws Exception { | 302 public void testRequestFinishedListenerCanceledRequest() throws Exception { |
300 mTestFramework = startCronetTestFramework(); | 303 mTestFramework = startCronetTestFramework(); |
301 TestRequestFinishedListener requestFinishedListener = new TestRequestFin
ishedListener(); | 304 TestRequestFinishedListener requestFinishedListener = new TestRequestFin
ishedListener(); |
302 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); | 305 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); |
303 TestUrlRequestCallback callback = new TestUrlRequestCallback() { | 306 TestUrlRequestCallback callback = new TestUrlRequestCallback() { |
304 @Override | 307 @Override |
305 public void onResponseStarted(UrlRequest request, UrlResponseInfo in
fo) { | 308 public void onResponseStarted(UrlRequest request, UrlResponseInfo in
fo) { |
306 super.onResponseStarted(request, info); | 309 super.onResponseStarted(request, info); |
307 request.cancel(); | 310 request.cancel(); |
308 } | 311 } |
309 }; | 312 }; |
310 UrlRequest.Builder urlRequestBuilder = new UrlRequest.Builder( | 313 ExperimentalUrlRequest.Builder urlRequestBuilder = |
311 mUrl, callback, callback.getExecutor(), mTestFramework.mCronetEn
gine); | 314 mTestFramework.mCronetEngine.newUrlRequestBuilder( |
| 315 mUrl, callback, callback.getExecutor()); |
312 Date startTime = new Date(); | 316 Date startTime = new Date(); |
313 urlRequestBuilder.addRequestAnnotation("request annotation") | 317 urlRequestBuilder.addRequestAnnotation("request annotation") |
314 .addRequestAnnotation(this) | 318 .addRequestAnnotation(this) |
315 .build() | 319 .build() |
316 .start(); | 320 .start(); |
317 callback.blockForDone(); | 321 callback.blockForDone(); |
318 requestFinishedListener.blockUntilDone(); | 322 requestFinishedListener.blockUntilDone(); |
319 Date endTime = new Date(); | 323 Date endTime = new Date(); |
320 | 324 |
321 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); | 325 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
374 assertEquals(new Date(sslEnd), metrics.getSslEnd()); | 378 assertEquals(new Date(sslEnd), metrics.getSslEnd()); |
375 assertEquals(new Date(pushStart), metrics.getPushStart()); | 379 assertEquals(new Date(pushStart), metrics.getPushStart()); |
376 assertEquals(new Date(pushEnd), metrics.getPushEnd()); | 380 assertEquals(new Date(pushEnd), metrics.getPushEnd()); |
377 assertEquals(new Date(responseStart), metrics.getResponseStart()); | 381 assertEquals(new Date(responseStart), metrics.getResponseStart()); |
378 assertEquals(new Date(requestEnd), metrics.getRequestEnd()); | 382 assertEquals(new Date(requestEnd), metrics.getRequestEnd()); |
379 assertEquals(socketReused, metrics.getSocketReused()); | 383 assertEquals(socketReused, metrics.getSocketReused()); |
380 assertEquals(sentBytesCount, (long) metrics.getSentBytesCount()); | 384 assertEquals(sentBytesCount, (long) metrics.getSentBytesCount()); |
381 assertEquals(receivedBytesCount, (long) metrics.getReceivedBytesCount())
; | 385 assertEquals(receivedBytesCount, (long) metrics.getReceivedBytesCount())
; |
382 } | 386 } |
383 } | 387 } |
OLD | NEW |