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.test.suitebuilder.annotation.SmallTest; | 9 import android.test.suitebuilder.annotation.SmallTest; |
10 | 10 |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
68 @SmallTest | 68 @SmallTest |
69 @Feature({"Cronet"}) | 69 @Feature({"Cronet"}) |
70 @SuppressWarnings("deprecation") | 70 @SuppressWarnings("deprecation") |
71 public void testRequestFinishedListener() throws Exception { | 71 public void testRequestFinishedListener() throws Exception { |
72 mTestFramework = startCronetTestFramework(); | 72 mTestFramework = startCronetTestFramework(); |
73 TestExecutor testExecutor = new TestExecutor(); | 73 TestExecutor testExecutor = new TestExecutor(); |
74 TestRequestFinishedListener requestFinishedListener = | 74 TestRequestFinishedListener requestFinishedListener = |
75 new TestRequestFinishedListener(testExecutor); | 75 new TestRequestFinishedListener(testExecutor); |
76 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); | 76 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); |
77 TestUrlRequestCallback callback = new TestUrlRequestCallback(); | 77 TestUrlRequestCallback callback = new TestUrlRequestCallback(); |
78 UrlRequest.Builder urlRequestBuilder = new UrlRequest.Builder( | 78 ExperimentalUrlRequest.Builder urlRequestBuilder = |
79 mUrl, callback, callback.getExecutor(), mTestFramework.mCronetEn
gine); | 79 (ExperimentalUrlRequest.Builder) mTestFramework.mCronetEngine.ne
wUrlRequestBuilder( |
| 80 mUrl, callback, callback.getExecutor()); |
80 urlRequestBuilder.addRequestAnnotation("request annotation") | 81 urlRequestBuilder.addRequestAnnotation("request annotation") |
81 .addRequestAnnotation(this) | 82 .addRequestAnnotation(this) |
82 .build() | 83 .build() |
83 .start(); | 84 .start(); |
84 callback.blockForDone(); | 85 callback.blockForDone(); |
85 testExecutor.runAllTasks(); | 86 testExecutor.runAllTasks(); |
86 | 87 |
87 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); | 88 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); |
88 assertNotNull("RequestFinishedInfo.Listener must be called", requestInfo
); | 89 assertNotNull("RequestFinishedInfo.Listener must be called", requestInfo
); |
89 assertEquals(mUrl, requestInfo.getUrl()); | 90 assertEquals(mUrl, requestInfo.getUrl()); |
(...skipping 11 matching lines...) Expand all Loading... |
101 @SmallTest | 102 @SmallTest |
102 @Feature({"Cronet"}) | 103 @Feature({"Cronet"}) |
103 @SuppressWarnings("deprecation") | 104 @SuppressWarnings("deprecation") |
104 public void testRequestFinishedListenerDirectExecutor() throws Exception { | 105 public void testRequestFinishedListenerDirectExecutor() throws Exception { |
105 mTestFramework = startCronetTestFramework(); | 106 mTestFramework = startCronetTestFramework(); |
106 Executor testExecutor = new DirectExecutor(); | 107 Executor testExecutor = new DirectExecutor(); |
107 TestRequestFinishedListener requestFinishedListener = | 108 TestRequestFinishedListener requestFinishedListener = |
108 new TestRequestFinishedListener(testExecutor); | 109 new TestRequestFinishedListener(testExecutor); |
109 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); | 110 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); |
110 TestUrlRequestCallback callback = new TestUrlRequestCallback(); | 111 TestUrlRequestCallback callback = new TestUrlRequestCallback(); |
111 UrlRequest.Builder urlRequestBuilder = new UrlRequest.Builder( | 112 ExperimentalUrlRequest.Builder urlRequestBuilder = |
112 mUrl, callback, callback.getExecutor(), mTestFramework.mCronetEn
gine); | 113 (ExperimentalUrlRequest.Builder) mTestFramework.mCronetEngine.ne
wUrlRequestBuilder( |
| 114 mUrl, callback, callback.getExecutor()); |
113 urlRequestBuilder.addRequestAnnotation("request annotation") | 115 urlRequestBuilder.addRequestAnnotation("request annotation") |
114 .addRequestAnnotation(this) | 116 .addRequestAnnotation(this) |
115 .build() | 117 .build() |
116 .start(); | 118 .start(); |
117 callback.blockForDone(); | 119 callback.blockForDone(); |
118 | 120 |
119 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); | 121 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); |
120 assertNotNull("RequestFinishedInfo.Listener must be called", requestInfo
); | 122 assertNotNull("RequestFinishedInfo.Listener must be called", requestInfo
); |
121 assertEquals(mUrl, requestInfo.getUrl()); | 123 assertEquals(mUrl, requestInfo.getUrl()); |
122 assertNotNull(requestInfo.getResponseInfo()); | 124 assertNotNull(requestInfo.getResponseInfo()); |
(...skipping 11 matching lines...) Expand all Loading... |
134 @Feature({"Cronet"}) | 136 @Feature({"Cronet"}) |
135 @SuppressWarnings("deprecation") | 137 @SuppressWarnings("deprecation") |
136 public void testRequestFinishedListenerDifferentThreads() throws Exception { | 138 public void testRequestFinishedListenerDifferentThreads() throws Exception { |
137 mTestFramework = startCronetTestFramework(); | 139 mTestFramework = startCronetTestFramework(); |
138 ThreadExecutor testExecutor = new ThreadExecutor(); | 140 ThreadExecutor testExecutor = new ThreadExecutor(); |
139 TestRequestFinishedListener firstListener = new TestRequestFinishedListe
ner(testExecutor); | 141 TestRequestFinishedListener firstListener = new TestRequestFinishedListe
ner(testExecutor); |
140 TestRequestFinishedListener secondListener = new TestRequestFinishedList
ener(testExecutor); | 142 TestRequestFinishedListener secondListener = new TestRequestFinishedList
ener(testExecutor); |
141 mTestFramework.mCronetEngine.addRequestFinishedListener(firstListener); | 143 mTestFramework.mCronetEngine.addRequestFinishedListener(firstListener); |
142 mTestFramework.mCronetEngine.addRequestFinishedListener(secondListener); | 144 mTestFramework.mCronetEngine.addRequestFinishedListener(secondListener); |
143 TestUrlRequestCallback callback = new TestUrlRequestCallback(); | 145 TestUrlRequestCallback callback = new TestUrlRequestCallback(); |
144 UrlRequest.Builder urlRequestBuilder = new UrlRequest.Builder( | 146 ExperimentalUrlRequest.Builder urlRequestBuilder = |
145 mUrl, callback, callback.getExecutor(), mTestFramework.mCronetEn
gine); | 147 (ExperimentalUrlRequest.Builder) mTestFramework.mCronetEngine.ne
wUrlRequestBuilder( |
| 148 mUrl, callback, callback.getExecutor()); |
146 urlRequestBuilder.addRequestAnnotation("request annotation") | 149 urlRequestBuilder.addRequestAnnotation("request annotation") |
147 .addRequestAnnotation(this) | 150 .addRequestAnnotation(this) |
148 .build() | 151 .build() |
149 .start(); | 152 .start(); |
150 callback.blockForDone(); | 153 callback.blockForDone(); |
151 testExecutor.joinAll(); | 154 testExecutor.joinAll(); |
152 | 155 |
153 RequestFinishedInfo firstRequestInfo = firstListener.getRequestInfo(); | 156 RequestFinishedInfo firstRequestInfo = firstListener.getRequestInfo(); |
154 RequestFinishedInfo secondRequestInfo = secondListener.getRequestInfo(); | 157 RequestFinishedInfo secondRequestInfo = secondListener.getRequestInfo(); |
155 assertNotNull("First RequestFinishedInfo.Listener must be called", first
RequestInfo); | 158 assertNotNull("First RequestFinishedInfo.Listener must be called", first
RequestInfo); |
(...skipping 23 matching lines...) Expand all Loading... |
179 @Feature({"Cronet"}) | 182 @Feature({"Cronet"}) |
180 @SuppressWarnings("deprecation") | 183 @SuppressWarnings("deprecation") |
181 public void testRequestFinishedListenerFailedRequest() throws Exception { | 184 public void testRequestFinishedListenerFailedRequest() throws Exception { |
182 String connectionRefusedUrl = "http://127.0.0.1:3"; | 185 String connectionRefusedUrl = "http://127.0.0.1:3"; |
183 mTestFramework = startCronetTestFramework(); | 186 mTestFramework = startCronetTestFramework(); |
184 TestExecutor testExecutor = new TestExecutor(); | 187 TestExecutor testExecutor = new TestExecutor(); |
185 TestRequestFinishedListener requestFinishedListener = | 188 TestRequestFinishedListener requestFinishedListener = |
186 new TestRequestFinishedListener(testExecutor); | 189 new TestRequestFinishedListener(testExecutor); |
187 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); | 190 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); |
188 TestUrlRequestCallback callback = new TestUrlRequestCallback(); | 191 TestUrlRequestCallback callback = new TestUrlRequestCallback(); |
189 UrlRequest.Builder urlRequestBuilder = new UrlRequest.Builder(connection
RefusedUrl, | 192 UrlRequest.Builder urlRequestBuilder = mTestFramework.mCronetEngine.newU
rlRequestBuilder( |
190 callback, callback.getExecutor(), mTestFramework.mCronetEngine); | 193 connectionRefusedUrl, callback, callback.getExecutor()); |
191 urlRequestBuilder.build().start(); | 194 urlRequestBuilder.build().start(); |
192 callback.blockForDone(); | 195 callback.blockForDone(); |
193 assertTrue(callback.mOnErrorCalled); | 196 assertTrue(callback.mOnErrorCalled); |
194 testExecutor.runAllTasks(); | 197 testExecutor.runAllTasks(); |
195 | 198 |
196 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); | 199 RequestFinishedInfo requestInfo = requestFinishedListener.getRequestInfo
(); |
197 assertNotNull("RequestFinishedInfo.Listener must be called", requestInfo
); | 200 assertNotNull("RequestFinishedInfo.Listener must be called", requestInfo
); |
198 assertEquals(connectionRefusedUrl, requestInfo.getUrl()); | 201 assertEquals(connectionRefusedUrl, requestInfo.getUrl()); |
199 assertTrue(requestInfo.getAnnotations().isEmpty()); | 202 assertTrue(requestInfo.getAnnotations().isEmpty()); |
200 RequestFinishedInfo.Metrics metrics = requestInfo.getMetrics(); | 203 RequestFinishedInfo.Metrics metrics = requestInfo.getMetrics(); |
201 assertNotNull("RequestFinishedInfo.getMetrics() must not be null", metri
cs); | 204 assertNotNull("RequestFinishedInfo.getMetrics() must not be null", metri
cs); |
202 // The failure is occasionally fast enough that time reported is 0, so j
ust check for null | 205 // The failure is occasionally fast enough that time reported is 0, so j
ust check for null |
203 assertNotNull(metrics.getTotalTimeMs()); | 206 assertNotNull(metrics.getTotalTimeMs()); |
204 assertNull(metrics.getTtfbMs()); | 207 assertNull(metrics.getTtfbMs()); |
205 assertTrue(metrics.getReceivedBytesCount() == null || metrics.getReceive
dBytesCount() == 0); | 208 assertTrue(metrics.getReceivedBytesCount() == null || metrics.getReceive
dBytesCount() == 0); |
206 mTestFramework.mCronetEngine.shutdown(); | 209 mTestFramework.mCronetEngine.shutdown(); |
207 } | 210 } |
208 | 211 |
209 @SmallTest | 212 @SmallTest |
210 @Feature({"Cronet"}) | 213 @Feature({"Cronet"}) |
211 @SuppressWarnings("deprecation") | 214 @SuppressWarnings("deprecation") |
212 public void testRequestFinishedListenerRemoved() throws Exception { | 215 public void testRequestFinishedListenerRemoved() throws Exception { |
213 mTestFramework = startCronetTestFramework(); | 216 mTestFramework = startCronetTestFramework(); |
214 TestExecutor testExecutor = new TestExecutor(); | 217 TestExecutor testExecutor = new TestExecutor(); |
215 TestRequestFinishedListener requestFinishedListener = | 218 TestRequestFinishedListener requestFinishedListener = |
216 new TestRequestFinishedListener(testExecutor); | 219 new TestRequestFinishedListener(testExecutor); |
217 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); | 220 mTestFramework.mCronetEngine.addRequestFinishedListener(requestFinishedL
istener); |
218 mTestFramework.mCronetEngine.removeRequestFinishedListener(requestFinish
edListener); | 221 mTestFramework.mCronetEngine.removeRequestFinishedListener(requestFinish
edListener); |
219 TestUrlRequestCallback callback = new TestUrlRequestCallback(); | 222 TestUrlRequestCallback callback = new TestUrlRequestCallback(); |
220 UrlRequest.Builder urlRequestBuilder = new UrlRequest.Builder( | 223 UrlRequest.Builder urlRequestBuilder = mTestFramework.mCronetEngine.newU
rlRequestBuilder( |
221 mUrl, callback, callback.getExecutor(), mTestFramework.mCronetEn
gine); | 224 mUrl, callback, callback.getExecutor()); |
222 urlRequestBuilder.build().start(); | 225 urlRequestBuilder.build().start(); |
223 callback.blockForDone(); | 226 callback.blockForDone(); |
224 testExecutor.runAllTasks(); | 227 testExecutor.runAllTasks(); |
225 | 228 |
226 assertNull("RequestFinishedInfo.Listener must not be called", | 229 assertNull("RequestFinishedInfo.Listener must not be called", |
227 requestFinishedListener.getRequestInfo()); | 230 requestFinishedListener.getRequestInfo()); |
228 mTestFramework.mCronetEngine.shutdown(); | 231 mTestFramework.mCronetEngine.shutdown(); |
229 } | 232 } |
230 | 233 |
231 @SmallTest | 234 @SmallTest |
(...skipping 30 matching lines...) Expand all Loading... |
262 assertEquals(new Date(sslEnd), metrics.getSslEnd()); | 265 assertEquals(new Date(sslEnd), metrics.getSslEnd()); |
263 assertEquals(new Date(pushStart), metrics.getPushStart()); | 266 assertEquals(new Date(pushStart), metrics.getPushStart()); |
264 assertEquals(new Date(pushEnd), metrics.getPushEnd()); | 267 assertEquals(new Date(pushEnd), metrics.getPushEnd()); |
265 assertEquals(new Date(responseStart), metrics.getResponseStart()); | 268 assertEquals(new Date(responseStart), metrics.getResponseStart()); |
266 assertEquals(new Date(responseEnd), metrics.getResponseEnd()); | 269 assertEquals(new Date(responseEnd), metrics.getResponseEnd()); |
267 assertEquals(socketReused, metrics.getSocketReused()); | 270 assertEquals(socketReused, metrics.getSocketReused()); |
268 assertEquals(sentBytesCount, (long) metrics.getSentBytesCount()); | 271 assertEquals(sentBytesCount, (long) metrics.getSentBytesCount()); |
269 assertEquals(receivedBytesCount, (long) metrics.getReceivedBytesCount())
; | 272 assertEquals(receivedBytesCount, (long) metrics.getReceivedBytesCount())
; |
270 } | 273 } |
271 } | 274 } |
OLD | NEW |