Chromium Code Reviews| 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 |