Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(114)

Side by Side Diff: components/cronet/android/test/javatests/src/org/chromium/net/TestUrlRequestListener.java

Issue 1359343005: Update ResponseInfo to UrlResponseInfo with API review comments. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Update README.md Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « components/cronet/android/test/javatests/src/org/chromium/net/QuicTest.java ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 android.os.ConditionVariable; 7 import android.os.ConditionVariable;
8 8
9 import static junit.framework.Assert.assertEquals; 9 import static junit.framework.Assert.assertEquals;
10 import static junit.framework.Assert.assertFalse; 10 import static junit.framework.Assert.assertFalse;
11 import static junit.framework.Assert.assertNull; 11 import static junit.framework.Assert.assertNull;
12 import static junit.framework.Assert.assertTrue; 12 import static junit.framework.Assert.assertTrue;
13 13
14 import java.nio.ByteBuffer; 14 import java.nio.ByteBuffer;
15 import java.util.ArrayList; 15 import java.util.ArrayList;
16 import java.util.concurrent.Executor; 16 import java.util.concurrent.Executor;
17 import java.util.concurrent.ExecutorService; 17 import java.util.concurrent.ExecutorService;
18 import java.util.concurrent.Executors; 18 import java.util.concurrent.Executors;
19 import java.util.concurrent.ThreadFactory; 19 import java.util.concurrent.ThreadFactory;
20 20
21 /** 21 /**
22 * Listener that tracks information from different callbacks and and has a 22 * Listener that tracks information from different callbacks and and has a
23 * method to block thread until the request completes on another thread. 23 * method to block thread until the request completes on another thread.
24 * Allows to cancel, block request or throw an exception from an arbitrary step. 24 * Allows to cancel, block request or throw an exception from an arbitrary step.
25 */ 25 */
26 class TestUrlRequestListener extends UrlRequestListener { 26 class TestUrlRequestListener extends UrlRequestListener {
27 public ArrayList<ResponseInfo> mRedirectResponseInfoList = 27 public ArrayList<UrlResponseInfo> mRedirectResponseInfoList = new ArrayList< UrlResponseInfo>();
28 new ArrayList<ResponseInfo>();
29 public ArrayList<String> mRedirectUrlList = new ArrayList<String>(); 28 public ArrayList<String> mRedirectUrlList = new ArrayList<String>();
30 public ResponseInfo mResponseInfo; 29 public UrlResponseInfo mResponseInfo;
31 public ExtendedResponseInfo mExtendedResponseInfo;
32 public UrlRequestException mError; 30 public UrlRequestException mError;
33 31
34 public ResponseStep mResponseStep = ResponseStep.NOTHING; 32 public ResponseStep mResponseStep = ResponseStep.NOTHING;
35 33
36 public int mRedirectCount = 0; 34 public int mRedirectCount = 0;
37 public boolean mOnErrorCalled = false; 35 public boolean mOnErrorCalled = false;
38 36
39 public int mHttpResponseDataLength = 0; 37 public int mHttpResponseDataLength = 0;
40 public String mResponseAsString = ""; 38 public String mResponseAsString = "";
41 39
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 111
114 public Executor getExecutor() { 112 public Executor getExecutor() {
115 return mExecutorService; 113 return mExecutorService;
116 } 114 }
117 115
118 public void shutdownExecutor() { 116 public void shutdownExecutor() {
119 mExecutorService.shutdown(); 117 mExecutorService.shutdown();
120 } 118 }
121 119
122 @Override 120 @Override
123 public void onReceivedRedirect(UrlRequest request, 121 public void onReceivedRedirect(
124 ResponseInfo info, 122 UrlRequest request, UrlResponseInfo info, String newLocationUrl) {
125 String newLocationUrl) {
126 assertEquals(mExecutorThread, Thread.currentThread()); 123 assertEquals(mExecutorThread, Thread.currentThread());
127 assertFalse(request.isDone()); 124 assertFalse(request.isDone());
128 assertTrue(mResponseStep == ResponseStep.NOTHING 125 assertTrue(mResponseStep == ResponseStep.NOTHING
129 || mResponseStep == ResponseStep.ON_RECEIVED_REDIRECT); 126 || mResponseStep == ResponseStep.ON_RECEIVED_REDIRECT);
130 assertNull(mError); 127 assertNull(mError);
131 128
132 mResponseStep = ResponseStep.ON_RECEIVED_REDIRECT; 129 mResponseStep = ResponseStep.ON_RECEIVED_REDIRECT;
133 mRedirectUrlList.add(newLocationUrl); 130 mRedirectUrlList.add(newLocationUrl);
134 mRedirectResponseInfoList.add(info); 131 mRedirectResponseInfoList.add(info);
135 ++mRedirectCount; 132 ++mRedirectCount;
136 if (maybeThrowCancelOrPause(request)) { 133 if (maybeThrowCancelOrPause(request)) {
137 return; 134 return;
138 } 135 }
139 request.followRedirect(); 136 request.followRedirect();
140 } 137 }
141 138
142 @Override 139 @Override
143 public void onResponseStarted(UrlRequest request, ResponseInfo info) { 140 public void onResponseStarted(UrlRequest request, UrlResponseInfo info) {
144 assertEquals(mExecutorThread, Thread.currentThread()); 141 assertEquals(mExecutorThread, Thread.currentThread());
145 assertFalse(request.isDone()); 142 assertFalse(request.isDone());
146 assertTrue(mResponseStep == ResponseStep.NOTHING 143 assertTrue(mResponseStep == ResponseStep.NOTHING
147 || mResponseStep == ResponseStep.ON_RECEIVED_REDIRECT); 144 || mResponseStep == ResponseStep.ON_RECEIVED_REDIRECT);
148 assertNull(mError); 145 assertNull(mError);
149 146
150 mResponseStep = ResponseStep.ON_RESPONSE_STARTED; 147 mResponseStep = ResponseStep.ON_RESPONSE_STARTED;
151 mResponseInfo = info; 148 mResponseInfo = info;
152 if (maybeThrowCancelOrPause(request)) { 149 if (maybeThrowCancelOrPause(request)) {
153 return; 150 return;
154 } 151 }
155 startNextRead(request); 152 startNextRead(request);
156 } 153 }
157 154
158 @Override 155 @Override
159 public void onReadCompleted(UrlRequest request, 156 public void onReadCompleted(UrlRequest request, UrlResponseInfo info, ByteBu ffer byteBuffer) {
160 ResponseInfo info,
161 ByteBuffer byteBuffer) {
162 assertEquals(mExecutorThread, Thread.currentThread()); 157 assertEquals(mExecutorThread, Thread.currentThread());
163 assertFalse(request.isDone()); 158 assertFalse(request.isDone());
164 assertTrue(mResponseStep == ResponseStep.ON_RESPONSE_STARTED 159 assertTrue(mResponseStep == ResponseStep.ON_RESPONSE_STARTED
165 || mResponseStep == ResponseStep.ON_READ_COMPLETED); 160 || mResponseStep == ResponseStep.ON_READ_COMPLETED);
166 assertNull(mError); 161 assertNull(mError);
167 162
168 mResponseStep = ResponseStep.ON_READ_COMPLETED; 163 mResponseStep = ResponseStep.ON_READ_COMPLETED;
169 164
170 final byte[] lastDataReceivedAsBytes; 165 final byte[] lastDataReceivedAsBytes;
171 if (mLegacyReadByteBufferAdjustment) { 166 if (mLegacyReadByteBufferAdjustment) {
(...skipping 15 matching lines...) Expand all
187 } 182 }
188 mResponseAsString += new String(lastDataReceivedAsBytes); 183 mResponseAsString += new String(lastDataReceivedAsBytes);
189 184
190 if (maybeThrowCancelOrPause(request)) { 185 if (maybeThrowCancelOrPause(request)) {
191 return; 186 return;
192 } 187 }
193 startNextRead(request); 188 startNextRead(request);
194 } 189 }
195 190
196 @Override 191 @Override
197 public void onSucceeded(UrlRequest request, ExtendedResponseInfo info) { 192 public void onSucceeded(UrlRequest request, UrlResponseInfo info) {
198 assertEquals(mExecutorThread, Thread.currentThread()); 193 assertEquals(mExecutorThread, Thread.currentThread());
199 assertTrue(request.isDone()); 194 assertTrue(request.isDone());
200 assertTrue(mResponseStep == ResponseStep.ON_RESPONSE_STARTED 195 assertTrue(mResponseStep == ResponseStep.ON_RESPONSE_STARTED
201 || mResponseStep == ResponseStep.ON_READ_COMPLETED); 196 || mResponseStep == ResponseStep.ON_READ_COMPLETED);
202 assertNull(mError); 197 assertNull(mError);
203 198
204 mResponseStep = ResponseStep.ON_SUCCEEDED; 199 mResponseStep = ResponseStep.ON_SUCCEEDED;
205 mExtendedResponseInfo = info; 200 mResponseInfo = info;
206 openDone(); 201 openDone();
207 maybeThrowCancelOrPause(request); 202 maybeThrowCancelOrPause(request);
208 } 203 }
209 204
210 @Override 205 @Override
211 public void onFailed(UrlRequest request, 206 public void onFailed(UrlRequest request, UrlResponseInfo info, UrlRequestExc eption error) {
212 ResponseInfo info,
213 UrlRequestException error) {
214 assertEquals(mExecutorThread, Thread.currentThread()); 207 assertEquals(mExecutorThread, Thread.currentThread());
215 assertTrue(request.isDone()); 208 assertTrue(request.isDone());
216 // Shouldn't happen after success. 209 // Shouldn't happen after success.
217 assertTrue(mResponseStep != ResponseStep.ON_SUCCEEDED); 210 assertTrue(mResponseStep != ResponseStep.ON_SUCCEEDED);
218 // Should happen at most once for a single request. 211 // Should happen at most once for a single request.
219 assertFalse(mOnErrorCalled); 212 assertFalse(mOnErrorCalled);
220 assertNull(mError); 213 assertNull(mError);
221 214
222 mOnErrorCalled = true; 215 mOnErrorCalled = true;
223 mError = error; 216 mError = error;
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
270 if (mFailureType == FailureType.CANCEL_ASYNC 263 if (mFailureType == FailureType.CANCEL_ASYNC
271 || mFailureType == FailureType.CANCEL_ASYNC_WITHOUT_PAUSE) { 264 || mFailureType == FailureType.CANCEL_ASYNC_WITHOUT_PAUSE) {
272 getExecutor().execute(task); 265 getExecutor().execute(task);
273 } else { 266 } else {
274 task.run(); 267 task.run();
275 } 268 }
276 return mFailureType != FailureType.CANCEL_ASYNC_WITHOUT_PAUSE; 269 return mFailureType != FailureType.CANCEL_ASYNC_WITHOUT_PAUSE;
277 } 270 }
278 } 271 }
279 272
OLDNEW
« no previous file with comments | « components/cronet/android/test/javatests/src/org/chromium/net/QuicTest.java ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698