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

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

Issue 1417973002: [Cronet] Switch from InstrumentationTest to junit (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: address Helen's comments 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
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.test.suitebuilder.annotation.LargeTest; 7 import android.test.suitebuilder.annotation.LargeTest;
8 import android.test.suitebuilder.annotation.SmallTest; 8 import android.test.suitebuilder.annotation.SmallTest;
9 9
10 import org.chromium.base.annotations.SuppressFBWarnings; 10 import org.chromium.base.annotations.SuppressFBWarnings;
11 import org.chromium.base.test.util.Feature; 11 import org.chromium.base.test.util.Feature;
12 import org.chromium.net.test.FailurePhase; 12 import org.chromium.net.test.FailurePhase;
13 13
14 import java.io.IOException; 14 import java.io.IOException;
15 import java.nio.ByteBuffer; 15 import java.nio.ByteBuffer;
16 import java.util.HashMap; 16 import java.util.HashMap;
17 import java.util.List; 17 import java.util.List;
18 import java.util.concurrent.Executors; 18 import java.util.concurrent.Executors;
19 19
20 /** 20 /**
21 * Tests making requests using {@link ChromiumUrlRequest}. 21 * Tests making requests using {@link ChromiumUrlRequest}.
22 */ 22 */
23 public class ChromiumUrlRequestTest extends CronetTestBase { 23 public class ChromiumUrlRequestTest extends CronetTestBase {
24 private CronetTestActivity mActivity; 24 private CronetTestFramework mTestFramework;
25 private TestHttpUrlRequestListener mListener; 25 private TestHttpUrlRequestListener mListener;
26 private HttpUrlRequest mRequest; 26 private HttpUrlRequest mRequest;
27 27
28 @Override 28 @Override
29 protected void setUp() throws Exception { 29 protected void setUp() throws Exception {
30 super.setUp(); 30 super.setUp();
31 mActivity = launchCronetTestApp(); 31 mTestFramework = startCronetTestFramework();
32 assertTrue(NativeTestServer.startNativeTestServer( 32 assertTrue(NativeTestServer.startNativeTestServer(getContext()));
33 getInstrumentation().getTargetContext()));
34 MockUrlRequestJobFactory.setUp(); 33 MockUrlRequestJobFactory.setUp();
35 } 34 }
36 35
37 @Override 36 @Override
38 protected void tearDown() throws Exception { 37 protected void tearDown() throws Exception {
39 NativeTestServer.shutdownNativeTestServer(); 38 NativeTestServer.shutdownNativeTestServer();
40 super.tearDown(); 39 super.tearDown();
41 } 40 }
42 41
43 // Helper function to create a HttpUrlRequest with the specified url. 42 // Helper function to create a HttpUrlRequest with the specified url.
44 private void createRequestAndWaitForComplete( 43 private void createRequestAndWaitForComplete(
45 String url, boolean disableRedirects) { 44 String url, boolean disableRedirects) {
46 HashMap<String, String> headers = new HashMap<String, String>(); 45 HashMap<String, String> headers = new HashMap<String, String>();
47 mListener = new TestHttpUrlRequestListener(); 46 mListener = new TestHttpUrlRequestListener();
48 mRequest = mActivity.mRequestFactory.createRequest( 47 mRequest = mTestFramework.mRequestFactory.createRequest(
49 url, 48 url, HttpUrlRequest.REQUEST_PRIORITY_MEDIUM, headers, mListener) ;
50 HttpUrlRequest.REQUEST_PRIORITY_MEDIUM,
51 headers,
52 mListener);
53 if (disableRedirects) { 49 if (disableRedirects) {
54 mRequest.disableRedirects(); 50 mRequest.disableRedirects();
55 } 51 }
56 mRequest.start(); 52 mRequest.start();
57 mListener.blockForComplete(); 53 mListener.blockForComplete();
58 } 54 }
59 55
60 /** 56 /**
61 * Helper method to check that we are not calling methods on the native 57 * Helper method to check that we are not calling methods on the native
62 * adapter after it has been destroyed. 58 * adapter after it has been destroyed.
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after
233 // WritableByteChannel.close if request is canceled from another 229 // WritableByteChannel.close if request is canceled from another
234 // thread. 230 // thread.
235 for (int i = 0; i < 100; ++i) { 231 for (int i = 0; i < 100; ++i) {
236 HashMap<String, String> headers = new HashMap<String, String>(); 232 HashMap<String, String> headers = new HashMap<String, String>();
237 TestByteChannel channel = new TestByteChannel(); 233 TestByteChannel channel = new TestByteChannel();
238 TestHttpUrlRequestListener listener = 234 TestHttpUrlRequestListener listener =
239 new TestHttpUrlRequestListener(); 235 new TestHttpUrlRequestListener();
240 236
241 // Create request. 237 // Create request.
242 final HttpUrlRequest request = 238 final HttpUrlRequest request =
243 mActivity.mRequestFactory.createRequest( 239 mTestFramework.mRequestFactory.createRequest(NativeTestServe r.getSuccessURL(),
244 NativeTestServer.getSuccessURL(), 240 HttpUrlRequest.REQUEST_PRIORITY_LOW, headers, channe l, listener);
245 HttpUrlRequest.REQUEST_PRIORITY_LOW, headers,
246 channel, listener);
247 request.start(); 241 request.start();
248 listener.blockForStart(); 242 listener.blockForStart();
249 Runnable cancelTask = new Runnable() { 243 Runnable cancelTask = new Runnable() {
250 public void run() { 244 public void run() {
251 request.cancel(); 245 request.cancel();
252 } 246 }
253 }; 247 };
254 Executors.newCachedThreadPool().execute(cancelTask); 248 Executors.newCachedThreadPool().execute(cancelTask);
255 listener.blockForComplete(); 249 listener.blockForComplete();
256 assertFalse(channel.isOpen()); 250 assertFalse(channel.isOpen());
(...skipping 12 matching lines...) Expand all
269 TestByteChannel channel = new TestByteChannel(); 263 TestByteChannel channel = new TestByteChannel();
270 TestHttpUrlRequestListener listener = new TestHttpUrlRequestListener(); 264 TestHttpUrlRequestListener listener = new TestHttpUrlRequestListener();
271 265
272 String data = "MyBigFunkyData"; 266 String data = "MyBigFunkyData";
273 int dataLength = data.length(); 267 int dataLength = data.length();
274 int repeatCount = 10000; 268 int repeatCount = 10000;
275 String mockUrl = MockUrlRequestJobFactory.getMockUrlForData(data, 269 String mockUrl = MockUrlRequestJobFactory.getMockUrlForData(data,
276 repeatCount); 270 repeatCount);
277 271
278 // Create request. 272 // Create request.
279 final HttpUrlRequest request = 273 final HttpUrlRequest request = mTestFramework.mRequestFactory.createRequ est(
280 mActivity.mRequestFactory.createRequest( 274 mockUrl, HttpUrlRequest.REQUEST_PRIORITY_LOW, headers, channel, listener);
281 mockUrl,
282 HttpUrlRequest.REQUEST_PRIORITY_LOW, headers,
283 channel, listener);
284 // Channel will cancel the request from the network thread during the 275 // Channel will cancel the request from the network thread during the
285 // first write. 276 // first write.
286 channel.setRequestToCancelOnWrite(request); 277 channel.setRequestToCancelOnWrite(request);
287 request.start(); 278 request.start();
288 listener.blockForComplete(); 279 listener.blockForComplete();
289 assertTrue(request.isCanceled()); 280 assertTrue(request.isCanceled());
290 assertFalse(channel.isOpen()); 281 assertFalse(channel.isOpen());
291 // Test that ChromiumUrlRequest caches information which is available 282 // Test that ChromiumUrlRequest caches information which is available
292 // after the native request adapter has been destroyed. 283 // after the native request adapter has been destroyed.
293 // Since the request is canceled after onResponseStarted, status code 284 // Since the request is canceled after onResponseStarted, status code
(...skipping 12 matching lines...) Expand all
306 String mockUrl = MockUrlRequestJobFactory.getMockUrlForData(data, 297 String mockUrl = MockUrlRequestJobFactory.getMockUrlForData(data,
307 repeatCount); 298 repeatCount);
308 createRequestAndWaitForComplete(mockUrl, false); 299 createRequestAndWaitForComplete(mockUrl, false);
309 assertEquals(mockUrl, mListener.mUrl); 300 assertEquals(mockUrl, mListener.mUrl);
310 for (int i = 0; i < repeatCount; ++i) { 301 for (int i = 0; i < repeatCount; ++i) {
311 assertEquals(data, mListener.mResponseAsString.substring( 302 assertEquals(data, mListener.mResponseAsString.substring(
312 dataLength * i, dataLength * (i + 1))); 303 dataLength * i, dataLength * (i + 1)));
313 } 304 }
314 } 305 }
315 } 306 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698