| 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 |