Index: components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlTest.java |
diff --git a/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlTest.java b/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlTest.java |
index 481cebad8cc2df09f5a9c25b6b8cf60c5010c74d..d0ce29656b77eb8ee135ce045b835c4aac82312e 100644 |
--- a/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlTest.java |
+++ b/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlTest.java |
@@ -134,13 +134,16 @@ public class CronetUrlTest extends CronetTestBase { |
@SmallTest |
@Feature({"Cronet"}) |
- public void disabled_testQuicLoadUrl() throws Exception { |
+ public void testQuicLoadUrl() throws Exception { |
+ // Loads library first since native functions are used to retrieve |
+ // QuicTestServer info before config is constructed. |
+ System.loadLibrary("cronet_tests"); |
mef
2015/04/06 20:30:56
Thanks for the comment!
That's annoying that we h
xunjieli
2015/04/06 21:23:50
Done. Makes sense, since we will be adding more te
|
HttpUrlRequestFactoryConfig config = new HttpUrlRequestFactoryConfig(); |
- // TODO(mef): Test Quic end-to-end using local QUIC server. |
- String quicURL = "https://www.google.com:443"; |
- String quicNegotiatedProtocol = "quic/1+spdy/3"; |
+ String quicURL = QuicTestServer.getServerURL() + "/simple.txt"; |
config.enableQUIC(true); |
- config.addQuicHint("www.google.com", 443, 443); |
+ config.setLibraryName("cronet_tests"); |
+ config.addQuicHint(QuicTestServer.getServerHost(), |
+ QuicTestServer.getServerPort(), QuicTestServer.getServerPort()); |
config.setExperimentalQuicConnectionOptions("PACE,IW10,FOO,DEADBEEF"); |
String[] commandLineArgs = { |
@@ -148,32 +151,26 @@ public class CronetUrlTest extends CronetTestBase { |
CronetTestActivity activity = |
launchCronetTestAppWithUrlAndCommandLineArgs(null, |
commandLineArgs); |
+ QuicTestServer.startQuicTestServer(activity.getApplicationContext()); |
activity.startNetLog(); |
HashMap<String, String> headers = new HashMap<String, String>(); |
TestHttpUrlRequestListener listener = new TestHttpUrlRequestListener(); |
- // Try several times as first request may not use QUIC. |
- // TODO(mef): Remove loop after adding http server properties manager. |
- for (int i = 0; i < 10; ++i) { |
- HttpUrlRequest request = |
- activity.mRequestFactory.createRequest( |
- quicURL, |
- HttpUrlRequest.REQUEST_PRIORITY_MEDIUM, |
- headers, |
- listener); |
- request.start(); |
- listener.blockForComplete(); |
- assertEquals(200, listener.mHttpStatusCode); |
- if (listener.mNegotiatedProtocol.equals(quicNegotiatedProtocol)) { |
- break; |
- } |
- Thread.sleep(1000); |
- listener.resetComplete(); |
- } |
- |
- assertEquals(quicNegotiatedProtocol, listener.mNegotiatedProtocol); |
+ HttpUrlRequest request = |
+ activity.mRequestFactory.createRequest( |
+ quicURL, |
+ HttpUrlRequest.REQUEST_PRIORITY_MEDIUM, |
+ headers, |
+ listener); |
+ request.start(); |
+ listener.blockForComplete(); |
+ assertEquals(200, listener.mHttpStatusCode); |
+ assertEquals( |
+ "This is a simple text file served by QUIC.\n", listener.mResponseAsString); |
+ assertEquals("quic/1+spdy/3", listener.mNegotiatedProtocol); |
activity.stopNetLog(); |
+ QuicTestServer.shutdownQuicTestServer(); |
} |
@SmallTest |