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 274 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
285 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo (); | 285 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo (); |
286 MetricsTestUtil.checkRequestFinishedInfo(requestInfo, mUrl, startTime, e ndTime); | 286 MetricsTestUtil.checkRequestFinishedInfo(requestInfo, mUrl, startTime, e ndTime); |
287 assertEquals(RequestFinishedInfo.CANCELED, requestInfo.getFinishedReason ()); | 287 assertEquals(RequestFinishedInfo.CANCELED, requestInfo.getFinishedReason ()); |
288 MetricsTestUtil.checkHasConnectTiming(requestInfo.getMetrics(), startTim e, endTime, false); | 288 MetricsTestUtil.checkHasConnectTiming(requestInfo.getMetrics(), startTim e, endTime, false); |
289 | 289 |
290 assertEquals(newHashSet("request annotation", this), // Use sets for uno rdered comparison. | 290 assertEquals(newHashSet("request annotation", this), // Use sets for uno rdered comparison. |
291 new HashSet<Object>(requestInfo.getAnnotations())); | 291 new HashSet<Object>(requestInfo.getAnnotations())); |
292 mTestFramework.mCronetEngine.shutdown(); | 292 mTestFramework.mCronetEngine.shutdown(); |
293 } | 293 } |
294 | 294 |
295 // Checks that CronetURLRequestAdapter::DestroyOnNetworkThread() doesn't cra sh when metrics | |
296 // collection is enabled and the URLRequest hasn't been created. See http:// crbug.com/675629. | |
297 @SmallTest | |
298 @OnlyRunNativeCronet | |
299 @Feature({"Cronet"}) | |
300 public void testExceptionInRequestStart() throws Exception { | |
301 mTestFramework = startCronetTestFramework(); | |
302 TestRequestFinishedListener requestFinishedListener = new TestRequestFin ishedListener(); | |
xunjieli
2016/12/19 21:18:31
Can you make sure the executor backing this listen
mgersh
2016/12/19 21:37:25
Oh, that's a better way to do it, thanks. Done.
| |
303 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL istener); | |
304 TestUrlRequestCallback callback = new TestUrlRequestCallback(); | |
305 ExperimentalUrlRequest.Builder urlRequestBuilder = | |
306 mTestFramework.mCronetEngine.newUrlRequestBuilder( | |
307 mUrl, callback, callback.getExecutor()); | |
308 // Empty headers are invalid and will cause start() to throw an exceptio n. | |
309 UrlRequest request = urlRequestBuilder.addHeader("", "") | |
310 .addRequestAnnotation("request annotation") | |
311 .addRequestAnnotation(this) | |
xunjieli
2016/12/19 21:18:31
are these two annotations needed?
mgersh
2016/12/19 21:37:25
Nope, just left over from an earlier version. Remo
| |
312 .build(); | |
313 try { | |
314 request.start(); | |
315 fail("UrlRequest.start() should throw IllegalArgumentException"); | |
316 } catch (IllegalArgumentException e) { | |
317 assertEquals("Invalid header =", e.getMessage()); | |
318 } | |
319 | |
320 mTestFramework.mCronetEngine.shutdown(); | |
321 } | |
322 | |
295 @SmallTest | 323 @SmallTest |
296 @Feature({"Cronet"}) | 324 @Feature({"Cronet"}) |
297 public void testMetricsGetters() throws Exception { | 325 public void testMetricsGetters() throws Exception { |
298 long requestStart = 1; | 326 long requestStart = 1; |
299 long dnsStart = 2; | 327 long dnsStart = 2; |
300 long dnsEnd = -1; | 328 long dnsEnd = -1; |
301 long connectStart = 4; | 329 long connectStart = 4; |
302 long connectEnd = 5; | 330 long connectEnd = 5; |
303 long sslStart = 6; | 331 long sslStart = 6; |
304 long sslEnd = 7; | 332 long sslEnd = 7; |
(...skipping 20 matching lines...) Expand all Loading... | |
325 assertEquals(new Date(sslEnd), metrics.getSslEnd()); | 353 assertEquals(new Date(sslEnd), metrics.getSslEnd()); |
326 assertEquals(new Date(pushStart), metrics.getPushStart()); | 354 assertEquals(new Date(pushStart), metrics.getPushStart()); |
327 assertEquals(new Date(pushEnd), metrics.getPushEnd()); | 355 assertEquals(new Date(pushEnd), metrics.getPushEnd()); |
328 assertEquals(new Date(responseStart), metrics.getResponseStart()); | 356 assertEquals(new Date(responseStart), metrics.getResponseStart()); |
329 assertEquals(new Date(requestEnd), metrics.getRequestEnd()); | 357 assertEquals(new Date(requestEnd), metrics.getRequestEnd()); |
330 assertEquals(socketReused, metrics.getSocketReused()); | 358 assertEquals(socketReused, metrics.getSocketReused()); |
331 assertEquals(sentByteCount, (long) metrics.getSentByteCount()); | 359 assertEquals(sentByteCount, (long) metrics.getSentByteCount()); |
332 assertEquals(receivedByteCount, (long) metrics.getReceivedByteCount()); | 360 assertEquals(receivedByteCount, (long) metrics.getReceivedByteCount()); |
333 } | 361 } |
334 } | 362 } |
OLD | NEW |