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

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

Issue 1417973002: [Cronet] Switch from InstrumentationTest to junit (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 import android.test.suitebuilder.annotation.SmallTest; 8 import android.test.suitebuilder.annotation.SmallTest;
9 9
10 import org.chromium.base.test.util.Feature; 10 import org.chromium.base.test.util.Feature;
11 import org.chromium.net.TestUrlRequestListener.ResponseStep; 11 import org.chromium.net.TestUrlRequestListener.ResponseStep;
12 import org.chromium.net.UrlRequest.Status; 12 import org.chromium.net.UrlRequest.Status;
13 import org.chromium.net.UrlRequest.StatusListener; 13 import org.chromium.net.UrlRequest.StatusListener;
14 14
15 /** 15 /**
16 * Tests that {@link CronetUrlRequest#getStatus} works as expected. 16 * Tests that {@link CronetUrlRequest#getStatus} works as expected.
17 */ 17 */
18 public class GetStatusTest extends CronetTestBase { 18 public class GetStatusTest extends CronetTestBase {
19 private CronetTestActivity mActivity; 19 private CronetTestFramework mTestFramework;
20 20
21 private static class TestStatusListener extends StatusListener { 21 private static class TestStatusListener extends StatusListener {
22 boolean mOnStatusCalled = false; 22 boolean mOnStatusCalled = false;
23 int mStatus = Integer.MAX_VALUE; 23 int mStatus = Integer.MAX_VALUE;
24 private final ConditionVariable mBlock = new ConditionVariable(); 24 private final ConditionVariable mBlock = new ConditionVariable();
25 25
26 @Override 26 @Override
27 public void onStatus(int status) { 27 public void onStatus(int status) {
28 mOnStatusCalled = true; 28 mOnStatusCalled = true;
29 mStatus = status; 29 mStatus = status;
30 mBlock.open(); 30 mBlock.open();
31 } 31 }
32 32
33 public void waitUntilOnStatusCalled() { 33 public void waitUntilOnStatusCalled() {
34 mBlock.block(); 34 mBlock.block();
35 mBlock.close(); 35 mBlock.close();
36 } 36 }
37 } 37 }
38 @Override 38 @Override
39 protected void setUp() throws Exception { 39 protected void setUp() throws Exception {
40 super.setUp(); 40 super.setUp();
41 mActivity = launchCronetTestApp(); 41 mTestFramework = startCronetTestFramework();
42 assertTrue(NativeTestServer.startNativeTestServer(getInstrumentation().g etTargetContext())); 42 assertTrue(NativeTestServer.startNativeTestServer(getContext()));
43 } 43 }
44 44
45 @Override 45 @Override
46 protected void tearDown() throws Exception { 46 protected void tearDown() throws Exception {
47 NativeTestServer.shutdownNativeTestServer(); 47 NativeTestServer.shutdownNativeTestServer();
48 mActivity.mCronetEngine.shutdown(); 48 mTestFramework.mCronetEngine.shutdown();
49 super.tearDown(); 49 super.tearDown();
50 } 50 }
51 51
52 @SmallTest 52 @SmallTest
53 @Feature({"Cronet"}) 53 @Feature({"Cronet"})
54 public void testSimpleGet() throws Exception { 54 public void testSimpleGet() throws Exception {
55 String url = NativeTestServer.getEchoMethodURL(); 55 String url = NativeTestServer.getEchoMethodURL();
56 TestUrlRequestListener listener = new TestUrlRequestListener(); 56 TestUrlRequestListener listener = new TestUrlRequestListener();
57 listener.setAutoAdvance(false); 57 listener.setAutoAdvance(false);
58 UrlRequest.Builder builder = new UrlRequest.Builder( 58 UrlRequest.Builder builder = new UrlRequest.Builder(
59 url, listener, listener.getExecutor(), mActivity.mCronetEngine); 59 url, listener, listener.getExecutor(), mTestFramework.mCronetEng ine);
60 UrlRequest urlRequest = builder.build(); 60 UrlRequest urlRequest = builder.build();
61 // Calling before request is started should give Status.INVALID, 61 // Calling before request is started should give Status.INVALID,
62 // since the native adapter is not created. 62 // since the native adapter is not created.
63 TestStatusListener statusListener0 = new TestStatusListener(); 63 TestStatusListener statusListener0 = new TestStatusListener();
64 urlRequest.getStatus(statusListener0); 64 urlRequest.getStatus(statusListener0);
65 statusListener0.waitUntilOnStatusCalled(); 65 statusListener0.waitUntilOnStatusCalled();
66 assertTrue(statusListener0.mOnStatusCalled); 66 assertTrue(statusListener0.mOnStatusCalled);
67 assertEquals(Status.INVALID, statusListener0.mStatus); 67 assertEquals(Status.INVALID, statusListener0.mStatus);
68 68
69 urlRequest.start(); 69 urlRequest.start();
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
130 Status.convertLoadState(16); 130 Status.convertLoadState(16);
131 fail(); 131 fail();
132 } catch (AssertionError e) { 132 } catch (AssertionError e) {
133 // Expected. 133 // Expected.
134 } catch (IllegalArgumentException e) { 134 } catch (IllegalArgumentException e) {
135 // If assertions are disabled, an IllegalArgumentException should be thrown. 135 // If assertions are disabled, an IllegalArgumentException should be thrown.
136 assertEquals("No request status found.", e.getMessage()); 136 assertEquals("No request status found.", e.getMessage());
137 } 137 }
138 } 138 }
139 } 139 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698