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

Unified Diff: components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlTest.java

Issue 1039693003: [Cronet] Add support to run quic_simple_server (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Use constants Created 5 years, 9 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 side-by-side diff with in-line comments
Download patch
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");
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

Powered by Google App Engine
This is Rietveld 408576698