| Index: components/cronet/android/test/javatests/src/org/chromium/net/BidirectionalStreamQuicTest.java
|
| diff --git a/components/cronet/android/test/javatests/src/org/chromium/net/BidirectionalStreamQuicTest.java b/components/cronet/android/test/javatests/src/org/chromium/net/BidirectionalStreamQuicTest.java
|
| index 10557b5cbc65c07290ef90cd294c2c00e141911c..446c081cf5bc499b0510342b38bb13c2e80b6534 100644
|
| --- a/components/cronet/android/test/javatests/src/org/chromium/net/BidirectionalStreamQuicTest.java
|
| +++ b/components/cronet/android/test/javatests/src/org/chromium/net/BidirectionalStreamQuicTest.java
|
| @@ -75,6 +75,95 @@ public class BidirectionalStreamQuicTest extends CronetTestBase {
|
| @SmallTest
|
| @Feature({"Cronet"})
|
| @OnlyRunNativeCronet
|
| + public void testSimplePost() throws Exception {
|
| + setUp(QuicBidirectionalStreams.ENABLED);
|
| + String path = "/simple.txt";
|
| + String quicURL = QuicTestServer.getServerURL() + path;
|
| + TestBidirectionalStreamCallback callback = new TestBidirectionalStreamCallback();
|
| + // Although we have no way to verify data sent at this point, this test
|
| + // can make sure that onWriteCompleted is invoked appropriately.
|
| + callback.addWriteData("Test String".getBytes());
|
| + callback.addWriteData("1234567890".getBytes());
|
| + callback.addWriteData("woot!".getBytes());
|
| + BidirectionalStream stream = new BidirectionalStream
|
| + .Builder(quicURL, callback, callback.getExecutor(),
|
| + mTestFramework.mCronetEngine)
|
| + .addHeader("foo", "bar")
|
| + .addHeader("empty", "")
|
| + .addHeader("Content-Type", "zebra")
|
| + .build();
|
| + stream.start();
|
| + callback.blockForDone();
|
| + assertTrue(stream.isDone());
|
| + assertEquals(200, callback.mResponseInfo.getHttpStatusCode());
|
| + assertEquals("This is a simple text file served by QUIC.\n", callback.mResponseAsString);
|
| + assertEquals("quic/1+spdy/3", callback.mResponseInfo.getNegotiatedProtocol());
|
| + }
|
| +
|
| + @SmallTest
|
| + @Feature({"Cronet"})
|
| + @OnlyRunNativeCronet
|
| + public void testSimplePostWithFlush() throws Exception {
|
| + setUp(QuicBidirectionalStreams.ENABLED);
|
| + String path = "/simple.txt";
|
| + String quicURL = QuicTestServer.getServerURL() + path;
|
| + TestBidirectionalStreamCallback callback = new TestBidirectionalStreamCallback();
|
| + // Although we have no way to verify data sent at this point, this test
|
| + // can make sure that onWriteCompleted is invoked appropriately.
|
| + callback.addWriteData("Test String".getBytes(), false);
|
| + callback.addWriteData("1234567890".getBytes(), false);
|
| + callback.addWriteData("woot!".getBytes(), true);
|
| + BidirectionalStream stream = new BidirectionalStream
|
| + .Builder(quicURL, callback, callback.getExecutor(),
|
| + mTestFramework.mCronetEngine)
|
| + .disableAutoFlush(true)
|
| + .addHeader("foo", "bar")
|
| + .addHeader("empty", "")
|
| + .addHeader("Content-Type", "zebra")
|
| + .build();
|
| + stream.start();
|
| + callback.blockForDone();
|
| + assertTrue(stream.isDone());
|
| + assertEquals(200, callback.mResponseInfo.getHttpStatusCode());
|
| + assertEquals("This is a simple text file served by QUIC.\n", callback.mResponseAsString);
|
| + assertEquals("quic/1+spdy/3", callback.mResponseInfo.getNegotiatedProtocol());
|
| + }
|
| +
|
| + @SmallTest
|
| + @Feature({"Cronet"})
|
| + @OnlyRunNativeCronet
|
| + public void testSimplePostWithFlushTwice() throws Exception {
|
| + setUp(QuicBidirectionalStreams.ENABLED);
|
| + String path = "/simple.txt";
|
| + String quicURL = QuicTestServer.getServerURL() + path;
|
| + TestBidirectionalStreamCallback callback = new TestBidirectionalStreamCallback();
|
| + // Although we have no way to verify data sent at this point, this test
|
| + // can make sure that onWriteCompleted is invoked appropriately.
|
| + callback.addWriteData("Test String".getBytes(), false);
|
| + callback.addWriteData("1234567890".getBytes(), false);
|
| + callback.addWriteData("woot!".getBytes(), true);
|
| + callback.addWriteData("Test String".getBytes(), false);
|
| + callback.addWriteData("1234567890".getBytes(), false);
|
| + callback.addWriteData("woot!".getBytes(), true);
|
| + BidirectionalStream stream = new BidirectionalStream
|
| + .Builder(quicURL, callback, callback.getExecutor(),
|
| + mTestFramework.mCronetEngine)
|
| + .disableAutoFlush(true)
|
| + .addHeader("foo", "bar")
|
| + .addHeader("empty", "")
|
| + .addHeader("Content-Type", "zebra")
|
| + .build();
|
| + stream.start();
|
| + callback.blockForDone();
|
| + assertTrue(stream.isDone());
|
| + assertEquals(200, callback.mResponseInfo.getHttpStatusCode());
|
| + assertEquals("This is a simple text file served by QUIC.\n", callback.mResponseAsString);
|
| + assertEquals("quic/1+spdy/3", callback.mResponseInfo.getNegotiatedProtocol());
|
| + }
|
| +
|
| + @SmallTest
|
| + @Feature({"Cronet"})
|
| + @OnlyRunNativeCronet
|
| public void testQuicBidirectionalStreamDisabled() throws Exception {
|
| setUp(QuicBidirectionalStreams.DISABLED);
|
| String path = "/simple.txt";
|
|
|