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

Side by Side Diff: components/cronet/android/test/javatests/src/org/chromium/net/BrotliTest.java

Issue 2805053005: [Cronet] Enable Brotli (Closed)
Patch Set: restore 0x03 in test Created 3 years, 8 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 unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2017 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 package org.chromium.net;
6
7 import android.support.test.filters.SmallTest;
8
9 import org.chromium.base.test.util.Feature;
10
11 /**
12 * Simple test for Brotli support.
13 */
14 public class BrotliTest extends CronetTestBase {
15 private CronetTestFramework mTestFramework;
16
17 @Override
18 protected void setUp() throws Exception {
19 super.setUp();
20 // Load library first to create MockCertVerifier.
21 System.loadLibrary("cronet_tests");
22 assertTrue(Http2TestServer.startHttp2TestServer(
23 getContext(), QuicTestServer.getServerCert(), QuicTestServer.get ServerCertKey()));
24 }
25
26 @Override
27 protected void tearDown() throws Exception {
28 assertTrue(Http2TestServer.shutdownHttp2TestServer());
29 mTestFramework.mCronetEngine.shutdown();
30 super.tearDown();
31 }
32
33 @SmallTest
34 @Feature({"Cronet"})
35 @OnlyRunNativeCronet
36 public void testBrotliAdvertised() throws Exception {
37 ExperimentalCronetEngine.Builder builder =
38 new ExperimentalCronetEngine.Builder(getContext());
39 builder.enableBrotli(true);
40 CronetTestUtil.setMockCertVerifierForTesting(
41 builder, QuicTestServer.createMockCertVerifier());
42 mTestFramework = startCronetTestFrameworkWithUrlAndCronetEngineBuilder(n ull, builder);
43 String url = Http2TestServer.getEchoAllHeadersUrl();
44 TestUrlRequestCallback callback = startAndWaitForComplete(url);
45 assertEquals(200, callback.mResponseInfo.getHttpStatusCode());
46 assertTrue(callback.mResponseAsString.contains("accept-encoding: gzip, d eflate, br"));
47 }
48
49 @SmallTest
50 @Feature({"Cronet"})
51 @OnlyRunNativeCronet
52 public void testBrotliNotAdvertised() throws Exception {
53 ExperimentalCronetEngine.Builder builder =
54 new ExperimentalCronetEngine.Builder(getContext());
55 CronetTestUtil.setMockCertVerifierForTesting(
56 builder, QuicTestServer.createMockCertVerifier());
57 mTestFramework = startCronetTestFrameworkWithUrlAndCronetEngineBuilder(n ull, builder);
58 String url = Http2TestServer.getEchoAllHeadersUrl();
59 TestUrlRequestCallback callback = startAndWaitForComplete(url);
60 assertEquals(200, callback.mResponseInfo.getHttpStatusCode());
61 assertFalse(callback.mResponseAsString.contains("br"));
62 }
63
64 @SmallTest
65 @Feature({"Cronet"})
66 @OnlyRunNativeCronet
67 public void testBrotliDecoded() throws Exception {
68 ExperimentalCronetEngine.Builder builder =
69 new ExperimentalCronetEngine.Builder(getContext());
70 builder.enableBrotli(true);
71 CronetTestUtil.setMockCertVerifierForTesting(
72 builder, QuicTestServer.createMockCertVerifier());
73 mTestFramework = startCronetTestFrameworkWithUrlAndCronetEngineBuilder(n ull, builder);
74 String url = Http2TestServer.getServeSimpleBrotliResponse();
75 TestUrlRequestCallback callback = startAndWaitForComplete(url);
76 assertEquals(200, callback.mResponseInfo.getHttpStatusCode());
77 String expectedResponse = "The quick brown fox jumps over the lazy dog";
78 assertEquals(expectedResponse, callback.mResponseAsString);
79 assertEquals(callback.mResponseInfo.getAllHeaders().get("content-encodin g").get(0), "br");
80 }
81
82 private TestUrlRequestCallback startAndWaitForComplete(String url) {
83 TestUrlRequestCallback callback = new TestUrlRequestCallback();
84 UrlRequest.Builder builder = mTestFramework.mCronetEngine.newUrlRequestB uilder(
85 url, callback, callback.getExecutor());
86 builder.build().start();
87 callback.blockForDone();
88 return callback;
89 }
90 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698