| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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.test.suitebuilder.annotation.SmallTest; | 7 import android.test.suitebuilder.annotation.SmallTest; |
| 8 | 8 |
| 9 import org.chromium.base.test.util.Feature; | 9 import org.chromium.base.test.util.Feature; |
| 10 import org.chromium.net.CronetTestBase.OnlyRunNativeCronet; | 10 import org.chromium.net.CronetTestBase.OnlyRunNativeCronet; |
| (...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 113 String quicURL = QuicTestServer.getServerURL() + path; | 113 String quicURL = QuicTestServer.getServerURL() + path; |
| 114 TestBidirectionalStreamCallback callback = new TestBidirectionalStre
amCallback(); | 114 TestBidirectionalStreamCallback callback = new TestBidirectionalStre
amCallback(); |
| 115 // Although we have no way to verify data sent at this point, this t
est | 115 // Although we have no way to verify data sent at this point, this t
est |
| 116 // can make sure that onWriteCompleted is invoked appropriately. | 116 // can make sure that onWriteCompleted is invoked appropriately. |
| 117 callback.addWriteData("Test String".getBytes(), false); | 117 callback.addWriteData("Test String".getBytes(), false); |
| 118 callback.addWriteData("1234567890".getBytes(), false); | 118 callback.addWriteData("1234567890".getBytes(), false); |
| 119 callback.addWriteData("woot!".getBytes(), true); | 119 callback.addWriteData("woot!".getBytes(), true); |
| 120 BidirectionalStream stream = new BidirectionalStream | 120 BidirectionalStream stream = new BidirectionalStream |
| 121 .Builder(quicURL, callback, cal
lback.getExecutor(), | 121 .Builder(quicURL, callback, cal
lback.getExecutor(), |
| 122 mTestFramework.mCronetE
ngine) | 122 mTestFramework.mCronetE
ngine) |
| 123 .disableAutoFlush(true) | |
| 124 .delayRequestHeadersUntilFirstF
lush(i == 0) | 123 .delayRequestHeadersUntilFirstF
lush(i == 0) |
| 125 .addHeader("foo", "bar") | 124 .addHeader("foo", "bar") |
| 126 .addHeader("empty", "") | 125 .addHeader("empty", "") |
| 127 .addHeader("Content-Type", "zeb
ra") | 126 .addHeader("Content-Type", "zeb
ra") |
| 128 .build(); | 127 .build(); |
| 129 stream.start(); | 128 stream.start(); |
| 130 callback.blockForDone(); | 129 callback.blockForDone(); |
| 131 assertTrue(stream.isDone()); | 130 assertTrue(stream.isDone()); |
| 132 assertEquals(200, callback.mResponseInfo.getHttpStatusCode()); | 131 assertEquals(200, callback.mResponseInfo.getHttpStatusCode()); |
| 133 assertEquals( | 132 assertEquals( |
| (...skipping 16 matching lines...) Expand all Loading... |
| 150 // can make sure that onWriteCompleted is invoked appropriately. | 149 // can make sure that onWriteCompleted is invoked appropriately. |
| 151 callback.addWriteData("Test String".getBytes(), false); | 150 callback.addWriteData("Test String".getBytes(), false); |
| 152 callback.addWriteData("1234567890".getBytes(), false); | 151 callback.addWriteData("1234567890".getBytes(), false); |
| 153 callback.addWriteData("woot!".getBytes(), true); | 152 callback.addWriteData("woot!".getBytes(), true); |
| 154 callback.addWriteData("Test String".getBytes(), false); | 153 callback.addWriteData("Test String".getBytes(), false); |
| 155 callback.addWriteData("1234567890".getBytes(), false); | 154 callback.addWriteData("1234567890".getBytes(), false); |
| 156 callback.addWriteData("woot!".getBytes(), true); | 155 callback.addWriteData("woot!".getBytes(), true); |
| 157 BidirectionalStream stream = new BidirectionalStream | 156 BidirectionalStream stream = new BidirectionalStream |
| 158 .Builder(quicURL, callback, cal
lback.getExecutor(), | 157 .Builder(quicURL, callback, cal
lback.getExecutor(), |
| 159 mTestFramework.mCronetE
ngine) | 158 mTestFramework.mCronetE
ngine) |
| 160 .disableAutoFlush(true) | |
| 161 .delayRequestHeadersUntilFirstF
lush(i == 0) | 159 .delayRequestHeadersUntilFirstF
lush(i == 0) |
| 162 .addHeader("foo", "bar") | 160 .addHeader("foo", "bar") |
| 163 .addHeader("empty", "") | 161 .addHeader("empty", "") |
| 164 .addHeader("Content-Type", "zeb
ra") | 162 .addHeader("Content-Type", "zeb
ra") |
| 165 .build(); | 163 .build(); |
| 166 stream.start(); | 164 stream.start(); |
| 167 callback.blockForDone(); | 165 callback.blockForDone(); |
| 168 assertTrue(stream.isDone()); | 166 assertTrue(stream.isDone()); |
| 169 assertEquals(200, callback.mResponseInfo.getHttpStatusCode()); | 167 assertEquals(200, callback.mResponseInfo.getHttpStatusCode()); |
| 170 assertEquals( | 168 assertEquals( |
| (...skipping 17 matching lines...) Expand all Loading... |
| 188 public void onStreamReady(BidirectionalStream stream) { | 186 public void onStreamReady(BidirectionalStream stream) { |
| 189 // This flush should send the delayed headers. | 187 // This flush should send the delayed headers. |
| 190 stream.flush(); | 188 stream.flush(); |
| 191 super.onStreamReady(stream); | 189 super.onStreamReady(stream); |
| 192 } | 190 } |
| 193 }; | 191 }; |
| 194 BidirectionalStream stream = new BidirectionalStream | 192 BidirectionalStream stream = new BidirectionalStream |
| 195 .Builder(url, callback, callbac
k.getExecutor(), | 193 .Builder(url, callback, callbac
k.getExecutor(), |
| 196 mTestFramework.mCronetE
ngine) | 194 mTestFramework.mCronetE
ngine) |
| 197 .setHttpMethod("GET") | 195 .setHttpMethod("GET") |
| 198 .disableAutoFlush(true) | |
| 199 .delayRequestHeadersUntilFirstF
lush(i == 0) | 196 .delayRequestHeadersUntilFirstF
lush(i == 0) |
| 200 .addHeader("foo", "bar") | 197 .addHeader("foo", "bar") |
| 201 .addHeader("empty", "") | 198 .addHeader("empty", "") |
| 202 .build(); | 199 .build(); |
| 203 // Flush before stream is started should not crash. | 200 // Flush before stream is started should not crash. |
| 204 stream.flush(); | 201 stream.flush(); |
| 205 | 202 |
| 206 stream.start(); | 203 stream.start(); |
| 207 callback.blockForDone(); | 204 callback.blockForDone(); |
| 208 assertTrue(stream.isDone()); | 205 assertTrue(stream.isDone()); |
| (...skipping 17 matching lines...) Expand all Loading... |
| 226 // TODO(xunjieli): Use ParameterizedTest instead of the loop. | 223 // TODO(xunjieli): Use ParameterizedTest instead of the loop. |
| 227 for (int i = 0; i < 2; i++) { | 224 for (int i = 0; i < 2; i++) { |
| 228 String path = "/simple.txt"; | 225 String path = "/simple.txt"; |
| 229 String url = QuicTestServer.getServerURL() + path; | 226 String url = QuicTestServer.getServerURL() + path; |
| 230 | 227 |
| 231 TestBidirectionalStreamCallback callback = new TestBidirectionalStre
amCallback(); | 228 TestBidirectionalStreamCallback callback = new TestBidirectionalStre
amCallback(); |
| 232 callback.addWriteData("Test String".getBytes(), true); | 229 callback.addWriteData("Test String".getBytes(), true); |
| 233 BidirectionalStream stream = new BidirectionalStream | 230 BidirectionalStream stream = new BidirectionalStream |
| 234 .Builder(url, callback, callbac
k.getExecutor(), | 231 .Builder(url, callback, callbac
k.getExecutor(), |
| 235 mTestFramework.mCronetE
ngine) | 232 mTestFramework.mCronetE
ngine) |
| 236 .disableAutoFlush(true) | |
| 237 .delayRequestHeadersUntilFirstF
lush(i == 0) | 233 .delayRequestHeadersUntilFirstF
lush(i == 0) |
| 238 .addHeader("foo", "bar") | 234 .addHeader("foo", "bar") |
| 239 .addHeader("empty", "") | 235 .addHeader("empty", "") |
| 240 .addHeader("Content-Type", "zeb
ra") | 236 .addHeader("Content-Type", "zeb
ra") |
| 241 .build(); | 237 .build(); |
| 242 stream.start(); | 238 stream.start(); |
| 243 callback.blockForDone(); | 239 callback.blockForDone(); |
| 244 assertTrue(stream.isDone()); | 240 assertTrue(stream.isDone()); |
| 245 | 241 |
| 246 assertEquals(200, callback.mResponseInfo.getHttpStatusCode()); | 242 assertEquals(200, callback.mResponseInfo.getHttpStatusCode()); |
| (...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 345 builder.enableQuic(true); | 341 builder.enableQuic(true); |
| 346 builder.setMockCertVerifierForTesting(QuicTestServer.createMockCertVerif
ier()); | 342 builder.setMockCertVerifierForTesting(QuicTestServer.createMockCertVerif
ier()); |
| 347 builder.setCertVerifierData(serialized_data); | 343 builder.setCertVerifierData(serialized_data); |
| 348 | 344 |
| 349 CronetTestFramework testFramework = | 345 CronetTestFramework testFramework = |
| 350 startCronetTestFrameworkWithUrlAndCronetEngineBuilder(null, buil
der); | 346 startCronetTestFrameworkWithUrlAndCronetEngineBuilder(null, buil
der); |
| 351 String deserialized_data = testFramework.mCronetEngine.getCertVerifierDa
ta(100); | 347 String deserialized_data = testFramework.mCronetEngine.getCertVerifierDa
ta(100); |
| 352 assertEquals(deserialized_data, serialized_data); | 348 assertEquals(deserialized_data, serialized_data); |
| 353 } | 349 } |
| 354 } | 350 } |
| OLD | NEW |