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

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

Issue 2245803002: Remove BidirectionalStream.Builder.disableAutoFlush (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: self review Created 4 years, 4 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
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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.os.ConditionVariable; 7 import android.os.ConditionVariable;
8 import android.test.suitebuilder.annotation.SmallTest; 8 import android.test.suitebuilder.annotation.SmallTest;
9 9
10 import org.chromium.base.test.util.DisabledTest; 10 import org.chromium.base.test.util.DisabledTest;
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after
239 @OnlyRunNativeCronet 239 @OnlyRunNativeCronet
240 public void testSimplePostWithFlush() throws Exception { 240 public void testSimplePostWithFlush() throws Exception {
241 String url = Http2TestServer.getEchoStreamUrl(); 241 String url = Http2TestServer.getEchoStreamUrl();
242 TestBidirectionalStreamCallback callback = new TestBidirectionalStreamCa llback(); 242 TestBidirectionalStreamCallback callback = new TestBidirectionalStreamCa llback();
243 callback.addWriteData("Test String".getBytes(), false); 243 callback.addWriteData("Test String".getBytes(), false);
244 callback.addWriteData("1234567890".getBytes(), false); 244 callback.addWriteData("1234567890".getBytes(), false);
245 callback.addWriteData("woot!".getBytes(), true); 245 callback.addWriteData("woot!".getBytes(), true);
246 BidirectionalStream stream = new BidirectionalStream 246 BidirectionalStream stream = new BidirectionalStream
247 .Builder(url, callback, callback.ge tExecutor(), 247 .Builder(url, callback, callback.ge tExecutor(),
248 mTestFramework.mCronetEngin e) 248 mTestFramework.mCronetEngin e)
249 .disableAutoFlush(true)
250 .addHeader("foo", "bar") 249 .addHeader("foo", "bar")
251 .addHeader("empty", "") 250 .addHeader("empty", "")
252 .addHeader("Content-Type", "zebra") 251 .addHeader("Content-Type", "zebra")
253 .build(); 252 .build();
254 // Flush before stream is started should not crash. 253 // Flush before stream is started should not crash.
255 stream.flush(); 254 stream.flush();
256 255
257 stream.start(); 256 stream.start();
258 callback.blockForDone(); 257 callback.blockForDone();
259 assertTrue(stream.isDone()); 258 assertTrue(stream.isDone());
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
318 }; 317 };
319 callback.addWriteData("1".getBytes(), false); 318 callback.addWriteData("1".getBytes(), false);
320 callback.addWriteData("2".getBytes(), false); 319 callback.addWriteData("2".getBytes(), false);
321 callback.addWriteData("3".getBytes(), true); 320 callback.addWriteData("3".getBytes(), true);
322 callback.addWriteData("4".getBytes(), false); 321 callback.addWriteData("4".getBytes(), false);
323 callback.addWriteData("5".getBytes(), true); 322 callback.addWriteData("5".getBytes(), true);
324 callback.addWriteData("6".getBytes(), false); 323 callback.addWriteData("6".getBytes(), false);
325 CronetBidirectionalStream stream = (CronetBidirectionalStream) new Bidir ectionalStream 324 CronetBidirectionalStream stream = (CronetBidirectionalStream) new Bidir ectionalStream
326 .Builder(url, callback, callb ack.getExecutor(), 325 .Builder(url, callback, callb ack.getExecutor(),
327 mTestFramework.mCrone tEngine) 326 mTestFramework.mCrone tEngine)
328 .disableAutoFlush(true)
329 .addHeader("foo", "bar") 327 .addHeader("foo", "bar")
330 .addHeader("empty", "") 328 .addHeader("empty", "")
331 .addHeader("Content-Type", "z ebra") 329 .addHeader("Content-Type", "z ebra")
332 .build(); 330 .build();
333 callback.setAutoAdvance(false); 331 callback.setAutoAdvance(false);
334 stream.start(); 332 stream.start();
335 callback.waitForNextWriteStep(); // onStreamReady 333 callback.waitForNextWriteStep(); // onStreamReady
336 334
337 assertEquals(0, stream.getPendingDataForTesting().size()); 335 assertEquals(0, stream.getPendingDataForTesting().size());
338 assertEquals(0, stream.getFlushDataForTesting().size()); 336 assertEquals(0, stream.getFlushDataForTesting().size());
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
379 stream.write(ByteBuffer.wrap("dummy".getBytes()), true); 377 stream.write(ByteBuffer.wrap("dummy".getBytes()), true);
380 } catch (IllegalArgumentException e) { 378 } catch (IllegalArgumentException e) {
381 // Expected. 379 // Expected.
382 } 380 }
383 } 381 }
384 }; 382 };
385 BidirectionalStream stream = new BidirectionalStream 383 BidirectionalStream stream = new BidirectionalStream
386 .Builder(url, callback, callbac k.getExecutor(), 384 .Builder(url, callback, callbac k.getExecutor(),
387 mTestFramework.mCronetE ngine) 385 mTestFramework.mCronetE ngine)
388 .setHttpMethod("GET") 386 .setHttpMethod("GET")
389 .disableAutoFlush(true)
390 .delayRequestHeadersUntilFirstF lush(i == 0) 387 .delayRequestHeadersUntilFirstF lush(i == 0)
391 .addHeader("foo", "bar") 388 .addHeader("foo", "bar")
392 .addHeader("empty", "") 389 .addHeader("empty", "")
393 .build(); 390 .build();
394 // Flush before stream is started should not crash. 391 // Flush before stream is started should not crash.
395 stream.flush(); 392 stream.flush();
396 393
397 stream.start(); 394 stream.start();
398 callback.blockForDone(); 395 callback.blockForDone();
399 assertTrue(stream.isDone()); 396 assertTrue(stream.isDone());
(...skipping 14 matching lines...) Expand all
414 @OnlyRunNativeCronet 411 @OnlyRunNativeCronet
415 public void testSimplePostWithFlushAfterOneWrite() throws Exception { 412 public void testSimplePostWithFlushAfterOneWrite() throws Exception {
416 // TODO(xunjieli): Use ParameterizedTest instead of the loop. 413 // TODO(xunjieli): Use ParameterizedTest instead of the loop.
417 for (int i = 0; i < 2; i++) { 414 for (int i = 0; i < 2; i++) {
418 String url = Http2TestServer.getEchoStreamUrl(); 415 String url = Http2TestServer.getEchoStreamUrl();
419 TestBidirectionalStreamCallback callback = new TestBidirectionalStre amCallback(); 416 TestBidirectionalStreamCallback callback = new TestBidirectionalStre amCallback();
420 callback.addWriteData("Test String".getBytes(), true); 417 callback.addWriteData("Test String".getBytes(), true);
421 BidirectionalStream stream = new BidirectionalStream 418 BidirectionalStream stream = new BidirectionalStream
422 .Builder(url, callback, callbac k.getExecutor(), 419 .Builder(url, callback, callbac k.getExecutor(),
423 mTestFramework.mCronetE ngine) 420 mTestFramework.mCronetE ngine)
424 .disableAutoFlush(true)
425 .delayRequestHeadersUntilFirstF lush(i == 0) 421 .delayRequestHeadersUntilFirstF lush(i == 0)
426 .addHeader("foo", "bar") 422 .addHeader("foo", "bar")
427 .addHeader("empty", "") 423 .addHeader("empty", "")
428 .addHeader("Content-Type", "zeb ra") 424 .addHeader("Content-Type", "zeb ra")
429 .build(); 425 .build();
430 stream.start(); 426 stream.start();
431 callback.blockForDone(); 427 callback.blockForDone();
432 assertTrue(stream.isDone()); 428 assertTrue(stream.isDone());
433 429
434 assertEquals(200, callback.mResponseInfo.getHttpStatusCode()); 430 assertEquals(200, callback.mResponseInfo.getHttpStatusCode());
(...skipping 15 matching lines...) Expand all
450 TestBidirectionalStreamCallback callback = new TestBidirectionalStre amCallback(); 446 TestBidirectionalStreamCallback callback = new TestBidirectionalStre amCallback();
451 callback.addWriteData("Test String".getBytes(), false); 447 callback.addWriteData("Test String".getBytes(), false);
452 callback.addWriteData("1234567890".getBytes(), false); 448 callback.addWriteData("1234567890".getBytes(), false);
453 callback.addWriteData("woot!".getBytes(), true); 449 callback.addWriteData("woot!".getBytes(), true);
454 callback.addWriteData("Test String".getBytes(), false); 450 callback.addWriteData("Test String".getBytes(), false);
455 callback.addWriteData("1234567890".getBytes(), false); 451 callback.addWriteData("1234567890".getBytes(), false);
456 callback.addWriteData("woot!".getBytes(), true); 452 callback.addWriteData("woot!".getBytes(), true);
457 BidirectionalStream stream = new BidirectionalStream 453 BidirectionalStream stream = new BidirectionalStream
458 .Builder(url, callback, callbac k.getExecutor(), 454 .Builder(url, callback, callbac k.getExecutor(),
459 mTestFramework.mCronetE ngine) 455 mTestFramework.mCronetE ngine)
460 .disableAutoFlush(true)
461 .delayRequestHeadersUntilFirstF lush(i == 0) 456 .delayRequestHeadersUntilFirstF lush(i == 0)
462 .addHeader("foo", "bar") 457 .addHeader("foo", "bar")
463 .addHeader("empty", "") 458 .addHeader("empty", "")
464 .addHeader("Content-Type", "zeb ra") 459 .addHeader("Content-Type", "zeb ra")
465 .build(); 460 .build();
466 stream.start(); 461 stream.start();
467 callback.blockForDone(); 462 callback.blockForDone();
468 assertTrue(stream.isDone()); 463 assertTrue(stream.isDone());
469 assertEquals(200, callback.mResponseInfo.getHttpStatusCode()); 464 assertEquals(200, callback.mResponseInfo.getHttpStatusCode());
470 assertEquals("Test String1234567890woot!Test String1234567890woot!", 465 assertEquals("Test String1234567890woot!Test String1234567890woot!",
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
533 }; 528 };
534 callback.addWriteData("Test String".getBytes(), false); 529 callback.addWriteData("Test String".getBytes(), false);
535 callback.addWriteData("1234567890".getBytes(), false); 530 callback.addWriteData("1234567890".getBytes(), false);
536 callback.addWriteData("woot!".getBytes(), true); 531 callback.addWriteData("woot!".getBytes(), true);
537 callback.addWriteData("Test String".getBytes(), false); 532 callback.addWriteData("Test String".getBytes(), false);
538 callback.addWriteData("1234567890".getBytes(), false); 533 callback.addWriteData("1234567890".getBytes(), false);
539 callback.addWriteData("woot!".getBytes(), true); 534 callback.addWriteData("woot!".getBytes(), true);
540 BidirectionalStream stream = new BidirectionalStream 535 BidirectionalStream stream = new BidirectionalStream
541 .Builder(url, callback, callback.ge tExecutor(), 536 .Builder(url, callback, callback.ge tExecutor(),
542 mTestFramework.mCronetEngin e) 537 mTestFramework.mCronetEngin e)
543 .disableAutoFlush(true)
544 .addHeader("foo", "bar") 538 .addHeader("foo", "bar")
545 .addHeader("empty", "") 539 .addHeader("empty", "")
546 .addHeader("Content-Type", "zebra") 540 .addHeader("Content-Type", "zebra")
547 .build(); 541 .build();
548 stream.start(); 542 stream.start();
549 callback.blockForDone(); 543 callback.blockForDone();
550 assertTrue(stream.isDone()); 544 assertTrue(stream.isDone());
551 assertEquals(200, callback.mResponseInfo.getHttpStatusCode()); 545 assertEquals(200, callback.mResponseInfo.getHttpStatusCode());
552 assertEquals( 546 assertEquals(
553 "Test String1234567890woot!Test String1234567890woot!", callback .mResponseAsString); 547 "Test String1234567890woot!Test String1234567890woot!", callback .mResponseAsString);
(...skipping 812 matching lines...) Expand 10 before | Expand all | Expand 10 after
1366 private static String bufferContentsToString(ByteBuffer byteBuffer, int star t, int end) { 1360 private static String bufferContentsToString(ByteBuffer byteBuffer, int star t, int end) {
1367 // Use a duplicate to avoid modifying byteBuffer. 1361 // Use a duplicate to avoid modifying byteBuffer.
1368 ByteBuffer duplicate = byteBuffer.duplicate(); 1362 ByteBuffer duplicate = byteBuffer.duplicate();
1369 duplicate.position(start); 1363 duplicate.position(start);
1370 duplicate.limit(end); 1364 duplicate.limit(end);
1371 byte[] contents = new byte[duplicate.remaining()]; 1365 byte[] contents = new byte[duplicate.remaining()];
1372 duplicate.get(contents); 1366 duplicate.get(contents);
1373 return new String(contents); 1367 return new String(contents);
1374 } 1368 }
1375 } 1369 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698