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 95f35eed336afe712c640f82540cbb353600e2fb..083be5ce9038ce6013383e16df568df1bd28e09f 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 |
@@ -20,6 +20,7 @@ import org.chromium.base.test.util.FlakyTest; |
import org.chromium.net.CronetEngine.UrlRequestInfo; |
import org.chromium.net.TestUrlRequestCallback.ResponseStep; |
import org.chromium.net.test.EmbeddedTestServer; |
+import org.json.JSONObject; |
import java.io.BufferedReader; |
import java.io.File; |
@@ -1174,4 +1175,28 @@ public class CronetUrlRequestContextTest extends CronetTestBase { |
}); |
assertTrue(uiThreadDone.block(1000)); |
} |
+ |
+ @SmallTest |
+ @Feature({"Cronet"}) |
+ public void testHostResolverRules() throws Exception { |
+ String resolverTestHostname = "some-weird-hostname"; |
+ // Split mUrl into "http:", "", hostname, relative URL |
+ String[] testUrlParts = mUrl.split("/"); |
pauljensen
2016/06/10 14:19:37
this is pretty confusing, why not:
URL testUrl = n
mgersh
2016/06/29 17:43:31
I didn't know that existed. Done.
|
+ CronetEngine.Builder cronetEngineBuilder = new CronetEngine.Builder(getContext()); |
+ JSONObject hostResolverRules = new JSONObject().put( |
+ "host_resolver_rules", "MAP " + resolverTestHostname + " " + testUrlParts[2]); |
+ JSONObject experimentalOptions = |
+ new JSONObject().put("HostResolverRules", hostResolverRules); |
+ cronetEngineBuilder.setExperimentalOptions(experimentalOptions.toString()); |
+ |
+ mTestFramework = |
+ startCronetTestFrameworkWithUrlAndCronetEngineBuilder(null, cronetEngineBuilder); |
+ TestUrlRequestCallback callback = new TestUrlRequestCallback(); |
+ UrlRequest.Builder urlRequestBuilder = |
+ new UrlRequest.Builder("http://" + resolverTestHostname + "/" + testUrlParts[3], |
pauljensen
2016/06/10 14:19:37
nit: maybe build the URL with:
new URL("h
mgersh
2016/06/29 17:43:31
Done.
|
+ callback, callback.getExecutor(), mTestFramework.mCronetEngine); |
+ urlRequestBuilder.build().start(); |
+ callback.blockForDone(); |
+ assertEquals(200, callback.mResponseInfo.getHttpStatusCode()); |
+ } |
} |