| Index: components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestContextTest.java
|
| diff --git a/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestContextTest.java b/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestContextTest.java
|
| index d458698b8c653067763d5c68e3f9a9a84bc98c86..c69a88a6eb1e7a0ba59429017f0f5140044268aa 100644
|
| --- a/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestContextTest.java
|
| +++ b/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestContextTest.java
|
| @@ -105,6 +105,53 @@ public class CronetUrlRequestContextTest extends CronetTestBase {
|
|
|
| @SmallTest
|
| @Feature({"Cronet"})
|
| + public void testDataReductionProxyEnabled() throws Exception {
|
| + mActivity = launchCronetTestAppAndSkipFactoryInit();
|
| +
|
| + // Ensure native code is loaded before trying to start test server.
|
| + UrlRequestContext.createContext(
|
| + getInstrumentation().getTargetContext(),
|
| + new UrlRequestContextConfig().setLibraryName("cronet_tests"))
|
| + .shutdown();
|
| +
|
| + assertTrue(NativeTestServer.startNativeTestServer(
|
| + getInstrumentation().getTargetContext()));
|
| +
|
| + String serverHostPort = NativeTestServer.getHostPort();
|
| +
|
| + // Enable the Data Reduction Proxy and configure it to use the test
|
| + // server as its primary proxy, and to check successfully that this
|
| + // proxy is OK to use.
|
| + UrlRequestContextConfig config = new UrlRequestContextConfig();
|
| + config.enableDataReductionProxy("test-key");
|
| + config.setDataReductionProxyOptions(
|
| + serverHostPort, "unused.net:9999",
|
| + NativeTestServer.getFileURL("/secureproxychecksuccess.txt"));
|
| + config.setLibraryName("cronet_tests");
|
| + mActivity.mUrlRequestContext =
|
| + mActivity.mUrlRequestContext.createContext(
|
| + getInstrumentation().getTargetContext(), config);
|
| + TestUrlRequestListener listener = new TestUrlRequestListener();
|
| +
|
| + // Construct and start a request that can only be returned by the test
|
| + // server. This request will fail if the configuration logic for the
|
| + // Data Reduction Proxy is not used.
|
| + UrlRequest urlRequest = mActivity.mUrlRequestContext.createRequest(
|
| + "http://google.com/datareductionproxysuccess.txt",
|
| + listener, listener.getExecutor());
|
| + urlRequest.start();
|
| + listener.blockForDone();
|
| +
|
| + // Verify that the request is successful and that the Data Reduction
|
| + // Proxy logic configured to use the test server as its proxy.
|
| + assertEquals(200, listener.mResponseInfo.getHttpStatusCode());
|
| + assertEquals(serverHostPort, listener.mResponseInfo.getProxyServer());
|
| + assertEquals("http://www.google.com/datareductionproxysuccess.txt",
|
| + listener.mResponseInfo.getUrl());
|
| + }
|
| +
|
| + @SmallTest
|
| + @Feature({"Cronet"})
|
| public void testShutdown() throws Exception {
|
| mActivity = launchCronetTestApp();
|
| TestUrlRequestListener listener = new ShutdownTestUrlRequestListener();
|
|
|