OLD | NEW |
---|---|
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 package org.chromium.net; | 5 package org.chromium.net; |
6 | 6 |
7 import static org.chromium.base.CollectionUtil.newHashSet; | 7 import static org.chromium.base.CollectionUtil.newHashSet; |
8 | 8 |
9 import android.content.Context; | 9 import android.content.Context; |
10 import android.content.ContextWrapper; | 10 import android.content.ContextWrapper; |
11 import android.os.ConditionVariable; | 11 import android.os.ConditionVariable; |
12 import android.os.Handler; | 12 import android.os.Handler; |
13 import android.os.Looper; | 13 import android.os.Looper; |
14 import android.test.suitebuilder.annotation.SmallTest; | 14 import android.test.suitebuilder.annotation.SmallTest; |
15 | 15 |
16 import org.chromium.base.PathUtils; | 16 import org.chromium.base.PathUtils; |
17 import org.chromium.base.annotations.JNINamespace; | 17 import org.chromium.base.annotations.JNINamespace; |
18 import org.chromium.base.test.util.Feature; | 18 import org.chromium.base.test.util.Feature; |
19 import org.chromium.base.test.util.FlakyTest; | 19 import org.chromium.base.test.util.FlakyTest; |
20 import org.chromium.net.CronetEngine.UrlRequestInfo; | 20 import org.chromium.net.CronetEngine.UrlRequestInfo; |
21 import org.chromium.net.TestUrlRequestCallback.ResponseStep; | 21 import org.chromium.net.TestUrlRequestCallback.ResponseStep; |
22 import org.chromium.net.test.EmbeddedTestServer; | 22 import org.chromium.net.test.EmbeddedTestServer; |
23 import org.json.JSONObject; | |
23 | 24 |
24 import java.io.BufferedReader; | 25 import java.io.BufferedReader; |
25 import java.io.File; | 26 import java.io.File; |
26 import java.io.FileReader; | 27 import java.io.FileReader; |
27 import java.util.Arrays; | 28 import java.util.Arrays; |
28 import java.util.HashSet; | 29 import java.util.HashSet; |
29 import java.util.LinkedList; | 30 import java.util.LinkedList; |
30 import java.util.NoSuchElementException; | 31 import java.util.NoSuchElementException; |
31 import java.util.concurrent.Executor; | 32 import java.util.concurrent.Executor; |
32 import java.util.concurrent.Executors; | 33 import java.util.concurrent.Executors; |
(...skipping 1134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1167 cronetEngine.shutdown(); | 1168 cronetEngine.shutdown(); |
1168 } | 1169 } |
1169 }.start(); | 1170 }.start(); |
1170 otherThreadDone.block(); | 1171 otherThreadDone.block(); |
1171 builder.build().shutdown(); | 1172 builder.build().shutdown(); |
1172 uiThreadDone.open(); | 1173 uiThreadDone.open(); |
1173 } | 1174 } |
1174 }); | 1175 }); |
1175 assertTrue(uiThreadDone.block(1000)); | 1176 assertTrue(uiThreadDone.block(1000)); |
1176 } | 1177 } |
1178 | |
1179 @SmallTest | |
1180 @Feature({"Cronet"}) | |
1181 public void testHostResolverRules() throws Exception { | |
1182 String resolverTestHostname = "some-weird-hostname"; | |
1183 // Split mUrl into "http:", "", hostname, relative URL | |
1184 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.
| |
1185 CronetEngine.Builder cronetEngineBuilder = new CronetEngine.Builder(getC ontext()); | |
1186 JSONObject hostResolverRules = new JSONObject().put( | |
1187 "host_resolver_rules", "MAP " + resolverTestHostname + " " + tes tUrlParts[2]); | |
1188 JSONObject experimentalOptions = | |
1189 new JSONObject().put("HostResolverRules", hostResolverRules); | |
1190 cronetEngineBuilder.setExperimentalOptions(experimentalOptions.toString( )); | |
1191 | |
1192 mTestFramework = | |
1193 startCronetTestFrameworkWithUrlAndCronetEngineBuilder(null, cron etEngineBuilder); | |
1194 TestUrlRequestCallback callback = new TestUrlRequestCallback(); | |
1195 UrlRequest.Builder urlRequestBuilder = | |
1196 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.
| |
1197 callback, callback.getExecutor(), mTestFramework.mCronet Engine); | |
1198 urlRequestBuilder.build().start(); | |
1199 callback.blockForDone(); | |
1200 assertEquals(200, callback.mResponseInfo.getHttpStatusCode()); | |
1201 } | |
1177 } | 1202 } |
OLD | NEW |