| 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 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 92 callback.blockForDone(); | 92 callback.blockForDone(); |
| 93 requestFinishedListener.blockUntilDone(); | 93 requestFinishedListener.blockUntilDone(); |
| 94 Date endTime = new Date(); | 94 Date endTime = new Date(); |
| 95 | 95 |
| 96 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); | 96 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); |
| 97 assertNotNull("RequestFinishedInfo.Listener must be called", requestInfo
); | 97 assertNotNull("RequestFinishedInfo.Listener must be called", requestInfo
); |
| 98 assertEquals(mUrl, requestInfo.getUrl()); | 98 assertEquals(mUrl, requestInfo.getUrl()); |
| 99 assertNotNull(requestInfo.getResponseInfo()); | 99 assertNotNull(requestInfo.getResponseInfo()); |
| 100 assertEquals(newHashSet("request annotation", this), // Use sets for uno
rdered comparison. | 100 assertEquals(newHashSet("request annotation", this), // Use sets for uno
rdered comparison. |
| 101 new HashSet<Object>(requestInfo.getAnnotations())); | 101 new HashSet<Object>(requestInfo.getAnnotations())); |
| 102 assertEquals(RequestFinishedInfo.SUCCEEDED, requestInfo.getFinishedReaso
n()); |
| 103 assertNull(requestInfo.getException()); |
| 102 RequestFinishedInfo.Metrics metrics = requestInfo.getMetrics(); | 104 RequestFinishedInfo.Metrics metrics = requestInfo.getMetrics(); |
| 103 assertNotNull("RequestFinishedInfo.getMetrics() must not be null", metri
cs); | 105 assertNotNull("RequestFinishedInfo.getMetrics() must not be null", metri
cs); |
| 104 // Check old (deprecated) timing metrics | 106 // Check old (deprecated) timing metrics |
| 105 assertTrue(metrics.getTotalTimeMs() > 0); | 107 assertTrue(metrics.getTotalTimeMs() > 0); |
| 106 assertTrue(metrics.getTotalTimeMs() >= metrics.getTtfbMs()); | 108 assertTrue(metrics.getTotalTimeMs() >= metrics.getTtfbMs()); |
| 107 // Check new timing metrics | 109 // Check new timing metrics |
| 108 MetricsTestUtil.checkTimingMetrics(metrics, startTime, endTime); | 110 MetricsTestUtil.checkTimingMetrics(metrics, startTime, endTime); |
| 109 MetricsTestUtil.checkHasConnectTiming(metrics, startTime, endTime, false
); | 111 MetricsTestUtil.checkHasConnectTiming(metrics, startTime, endTime, false
); |
| 110 assertNull(metrics.getPushStart()); | 112 assertNull(metrics.getPushStart()); |
| 111 assertNull(metrics.getPushEnd()); | 113 assertNull(metrics.getPushEnd()); |
| (...skipping 25 matching lines...) Expand all Loading... |
| 137 // it's created with a non-default executor. | 139 // it's created with a non-default executor. |
| 138 testExecutor.blockUntilDone(); | 140 testExecutor.blockUntilDone(); |
| 139 Date endTime = new Date(); | 141 Date endTime = new Date(); |
| 140 | 142 |
| 141 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); | 143 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); |
| 142 assertNotNull("RequestFinishedInfo.Listener must be called", requestInfo
); | 144 assertNotNull("RequestFinishedInfo.Listener must be called", requestInfo
); |
| 143 assertEquals(mUrl, requestInfo.getUrl()); | 145 assertEquals(mUrl, requestInfo.getUrl()); |
| 144 assertNotNull(requestInfo.getResponseInfo()); | 146 assertNotNull(requestInfo.getResponseInfo()); |
| 145 assertEquals(newHashSet("request annotation", this), // Use sets for uno
rdered comparison. | 147 assertEquals(newHashSet("request annotation", this), // Use sets for uno
rdered comparison. |
| 146 new HashSet<Object>(requestInfo.getAnnotations())); | 148 new HashSet<Object>(requestInfo.getAnnotations())); |
| 149 assertEquals(RequestFinishedInfo.SUCCEEDED, requestInfo.getFinishedReaso
n()); |
| 150 assertNull(requestInfo.getException()); |
| 147 RequestFinishedInfo.Metrics metrics = requestInfo.getMetrics(); | 151 RequestFinishedInfo.Metrics metrics = requestInfo.getMetrics(); |
| 148 assertNotNull("RequestFinishedInfo.getMetrics() must not be null", metri
cs); | 152 assertNotNull("RequestFinishedInfo.getMetrics() must not be null", metri
cs); |
| 149 assertTrue(metrics.getTotalTimeMs() > 0); | 153 assertTrue(metrics.getTotalTimeMs() > 0); |
| 150 assertTrue(metrics.getTotalTimeMs() >= metrics.getTtfbMs()); | 154 assertTrue(metrics.getTotalTimeMs() >= metrics.getTtfbMs()); |
| 151 MetricsTestUtil.checkTimingMetrics(metrics, startTime, endTime); | 155 MetricsTestUtil.checkTimingMetrics(metrics, startTime, endTime); |
| 152 MetricsTestUtil.checkHasConnectTiming(metrics, startTime, endTime, false
); | 156 MetricsTestUtil.checkHasConnectTiming(metrics, startTime, endTime, false
); |
| 153 assertTrue(metrics.getReceivedBytesCount() > 0); | 157 assertTrue(metrics.getReceivedBytesCount() > 0); |
| 154 mTestFramework.mCronetEngine.shutdown(); | 158 mTestFramework.mCronetEngine.shutdown(); |
| 155 } | 159 } |
| 156 | 160 |
| (...skipping 25 matching lines...) Expand all Loading... |
| 182 assertNotNull("First RequestFinishedInfo.Listener must be called", first
RequestInfo); | 186 assertNotNull("First RequestFinishedInfo.Listener must be called", first
RequestInfo); |
| 183 assertNotNull("Second RequestFinishedInfo.Listener must be called", seco
ndRequestInfo); | 187 assertNotNull("Second RequestFinishedInfo.Listener must be called", seco
ndRequestInfo); |
| 184 assertEquals(mUrl, firstRequestInfo.getUrl()); | 188 assertEquals(mUrl, firstRequestInfo.getUrl()); |
| 185 assertEquals(mUrl, secondRequestInfo.getUrl()); | 189 assertEquals(mUrl, secondRequestInfo.getUrl()); |
| 186 assertNotNull(firstRequestInfo.getResponseInfo()); | 190 assertNotNull(firstRequestInfo.getResponseInfo()); |
| 187 assertNotNull(secondRequestInfo.getResponseInfo()); | 191 assertNotNull(secondRequestInfo.getResponseInfo()); |
| 188 assertEquals(newHashSet("request annotation", this), // Use sets for uno
rdered comparison. | 192 assertEquals(newHashSet("request annotation", this), // Use sets for uno
rdered comparison. |
| 189 new HashSet<Object>(firstRequestInfo.getAnnotations())); | 193 new HashSet<Object>(firstRequestInfo.getAnnotations())); |
| 190 assertEquals(newHashSet("request annotation", this), | 194 assertEquals(newHashSet("request annotation", this), |
| 191 new HashSet<Object>(secondRequestInfo.getAnnotations())); | 195 new HashSet<Object>(secondRequestInfo.getAnnotations())); |
| 196 assertEquals(RequestFinishedInfo.SUCCEEDED, firstRequestInfo.getFinished
Reason()); |
| 197 assertEquals(RequestFinishedInfo.SUCCEEDED, secondRequestInfo.getFinishe
dReason()); |
| 198 assertNull(firstRequestInfo.getException()); |
| 199 assertNull(secondRequestInfo.getException()); |
| 192 RequestFinishedInfo.Metrics firstMetrics = firstRequestInfo.getMetrics()
; | 200 RequestFinishedInfo.Metrics firstMetrics = firstRequestInfo.getMetrics()
; |
| 193 assertNotNull("RequestFinishedInfo.getMetrics() must not be null", first
Metrics); | 201 assertNotNull("RequestFinishedInfo.getMetrics() must not be null", first
Metrics); |
| 194 assertTrue(firstMetrics.getTotalTimeMs() > 0); | 202 assertTrue(firstMetrics.getTotalTimeMs() > 0); |
| 195 assertTrue(firstMetrics.getTotalTimeMs() >= firstMetrics.getTtfbMs()); | 203 assertTrue(firstMetrics.getTotalTimeMs() >= firstMetrics.getTtfbMs()); |
| 196 MetricsTestUtil.checkTimingMetrics(firstMetrics, startTime, endTime); | 204 MetricsTestUtil.checkTimingMetrics(firstMetrics, startTime, endTime); |
| 197 MetricsTestUtil.checkHasConnectTiming(firstMetrics, startTime, endTime,
false); | 205 MetricsTestUtil.checkHasConnectTiming(firstMetrics, startTime, endTime,
false); |
| 198 assertTrue(firstMetrics.getReceivedBytesCount() > 0); | 206 assertTrue(firstMetrics.getReceivedBytesCount() > 0); |
| 199 RequestFinishedInfo.Metrics secondMetrics = secondRequestInfo.getMetrics
(); | 207 RequestFinishedInfo.Metrics secondMetrics = secondRequestInfo.getMetrics
(); |
| 200 assertNotNull("RequestFinishedInfo.getMetrics() must not be null", secon
dMetrics); | 208 assertNotNull("RequestFinishedInfo.getMetrics() must not be null", secon
dMetrics); |
| 201 assertTrue(secondMetrics.getTotalTimeMs() > 0); | 209 assertTrue(secondMetrics.getTotalTimeMs() > 0); |
| (...skipping 20 matching lines...) Expand all Loading... |
| 222 urlRequestBuilder.build().start(); | 230 urlRequestBuilder.build().start(); |
| 223 callback.blockForDone(); | 231 callback.blockForDone(); |
| 224 assertTrue(callback.mOnErrorCalled); | 232 assertTrue(callback.mOnErrorCalled); |
| 225 requestFinishedListener.blockUntilDone(); | 233 requestFinishedListener.blockUntilDone(); |
| 226 Date endTime = new Date(); | 234 Date endTime = new Date(); |
| 227 | 235 |
| 228 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); | 236 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); |
| 229 assertNotNull("RequestFinishedInfo.Listener must be called", requestInfo
); | 237 assertNotNull("RequestFinishedInfo.Listener must be called", requestInfo
); |
| 230 assertEquals(connectionRefusedUrl, requestInfo.getUrl()); | 238 assertEquals(connectionRefusedUrl, requestInfo.getUrl()); |
| 231 assertTrue(requestInfo.getAnnotations().isEmpty()); | 239 assertTrue(requestInfo.getAnnotations().isEmpty()); |
| 240 assertEquals(RequestFinishedInfo.FAILED, requestInfo.getFinishedReason()
); |
| 241 assertNotNull(requestInfo.getException()); |
| 242 assertEquals(UrlRequestException.ERROR_CONNECTION_REFUSED, |
| 243 requestInfo.getException().getErrorCode()); |
| 232 RequestFinishedInfo.Metrics metrics = requestInfo.getMetrics(); | 244 RequestFinishedInfo.Metrics metrics = requestInfo.getMetrics(); |
| 233 assertNotNull("RequestFinishedInfo.getMetrics() must not be null", metri
cs); | 245 assertNotNull("RequestFinishedInfo.getMetrics() must not be null", metri
cs); |
| 234 // The failure is occasionally fast enough that time reported is 0, so j
ust check for null | 246 // The failure is occasionally fast enough that time reported is 0, so j
ust check for null |
| 235 assertNotNull(metrics.getTotalTimeMs()); | 247 assertNotNull(metrics.getTotalTimeMs()); |
| 236 assertNull(metrics.getTtfbMs()); | 248 assertNull(metrics.getTtfbMs()); |
| 237 | 249 |
| 238 // Check the timing metrics | 250 // Check the timing metrics |
| 239 assertNotNull(metrics.getRequestStart()); | 251 assertNotNull(metrics.getRequestStart()); |
| 240 assertTrue(metrics.getRequestStart().after(startTime) | 252 assertTrue(metrics.getRequestStart().after(startTime) |
| 241 || metrics.getRequestStart().equals(startTime)); | 253 || metrics.getRequestStart().equals(startTime)); |
| (...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 357 assertEquals(new Date(sslEnd), metrics.getSslEnd()); | 369 assertEquals(new Date(sslEnd), metrics.getSslEnd()); |
| 358 assertEquals(new Date(pushStart), metrics.getPushStart()); | 370 assertEquals(new Date(pushStart), metrics.getPushStart()); |
| 359 assertEquals(new Date(pushEnd), metrics.getPushEnd()); | 371 assertEquals(new Date(pushEnd), metrics.getPushEnd()); |
| 360 assertEquals(new Date(responseStart), metrics.getResponseStart()); | 372 assertEquals(new Date(responseStart), metrics.getResponseStart()); |
| 361 assertEquals(new Date(responseEnd), metrics.getResponseEnd()); | 373 assertEquals(new Date(responseEnd), metrics.getResponseEnd()); |
| 362 assertEquals(socketReused, metrics.getSocketReused()); | 374 assertEquals(socketReused, metrics.getSocketReused()); |
| 363 assertEquals(sentBytesCount, (long) metrics.getSentBytesCount()); | 375 assertEquals(sentBytesCount, (long) metrics.getSentBytesCount()); |
| 364 assertEquals(receivedBytesCount, (long) metrics.getReceivedBytesCount())
; | 376 assertEquals(receivedBytesCount, (long) metrics.getReceivedBytesCount())
; |
| 365 } | 377 } |
| 366 } | 378 } |
| OLD | NEW |