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 android.content.Context; | 7 import android.content.Context; |
8 import android.content.ContextWrapper; | 8 import android.content.ContextWrapper; |
9 import android.os.ConditionVariable; | 9 import android.os.ConditionVariable; |
10 import android.os.Handler; | 10 import android.os.Handler; |
11 import android.os.Looper; | 11 import android.os.Looper; |
12 import android.os.StrictMode; | 12 import android.os.StrictMode; |
13 import android.test.suitebuilder.annotation.SmallTest; | 13 import android.test.suitebuilder.annotation.SmallTest; |
14 | 14 |
15 import org.chromium.base.FileUtils; | 15 import org.chromium.base.FileUtils; |
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.net.TestUrlRequestCallback.ResponseStep; | 19 import org.chromium.net.TestUrlRequestCallback.ResponseStep; |
20 import org.chromium.net.impl.CronetLibraryLoader; | 20 import org.chromium.net.impl.CronetLibraryLoader; |
21 import org.chromium.net.impl.CronetUrlRequestContext; | 21 import org.chromium.net.impl.CronetUrlRequestContext; |
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; |
| 28 import java.net.URL; |
27 import java.util.Arrays; | 29 import java.util.Arrays; |
28 import java.util.LinkedList; | 30 import java.util.LinkedList; |
29 import java.util.NoSuchElementException; | 31 import java.util.NoSuchElementException; |
30 import java.util.concurrent.Executor; | 32 import java.util.concurrent.Executor; |
31 import java.util.concurrent.Executors; | 33 import java.util.concurrent.Executors; |
32 import java.util.concurrent.ThreadFactory; | 34 import java.util.concurrent.ThreadFactory; |
33 | 35 |
34 /** | 36 /** |
35 * Test CronetEngine. | 37 * Test CronetEngine. |
36 */ | 38 */ |
(...skipping 1345 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1382 cronetEngine.shutdown(); | 1384 cronetEngine.shutdown(); |
1383 } | 1385 } |
1384 }.start(); | 1386 }.start(); |
1385 otherThreadDone.block(); | 1387 otherThreadDone.block(); |
1386 builder.build().shutdown(); | 1388 builder.build().shutdown(); |
1387 uiThreadDone.open(); | 1389 uiThreadDone.open(); |
1388 } | 1390 } |
1389 }); | 1391 }); |
1390 assertTrue(uiThreadDone.block(1000)); | 1392 assertTrue(uiThreadDone.block(1000)); |
1391 } | 1393 } |
| 1394 |
| 1395 @SmallTest |
| 1396 @Feature({"Cronet"}) |
| 1397 public void testHostResolverRules() throws Exception { |
| 1398 String resolverTestHostname = "some-weird-hostname"; |
| 1399 URL testUrl = new URL(mUrl); |
| 1400 CronetEngine.Builder cronetEngineBuilder = new CronetEngine.Builder(getC
ontext()); |
| 1401 JSONObject hostResolverRules = new JSONObject().put( |
| 1402 "host_resolver_rules", "MAP " + resolverTestHostname + " " + tes
tUrl.getHost()); |
| 1403 JSONObject experimentalOptions = |
| 1404 new JSONObject().put("HostResolverRules", hostResolverRules); |
| 1405 cronetEngineBuilder.setExperimentalOptions(experimentalOptions.toString(
)); |
| 1406 |
| 1407 final CronetTestFramework testFramework = |
| 1408 startCronetTestFrameworkWithUrlAndCronetEngineBuilder(null, cron
etEngineBuilder); |
| 1409 TestUrlRequestCallback callback = new TestUrlRequestCallback(); |
| 1410 URL requestUrl = |
| 1411 new URL("http", resolverTestHostname, testUrl.getPort(), testUrl
.getFile()); |
| 1412 UrlRequest.Builder urlRequestBuilder = new UrlRequest.Builder(requestUrl
.toString(), |
| 1413 callback, callback.getExecutor(), testFramework.mCronetEngine); |
| 1414 urlRequestBuilder.build().start(); |
| 1415 callback.blockForDone(); |
| 1416 assertEquals(200, callback.mResponseInfo.getHttpStatusCode()); |
| 1417 } |
1392 } | 1418 } |
OLD | NEW |