summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorxunjieli <xunjieli@chromium.org>2015-04-22 08:40:44 -0700
committerCommit bot <commit-bot@chromium.org>2015-04-22 15:41:05 +0000
commitc8697cf7a4a41b631abe279924fd5a5bb27cea47 (patch)
tree7aa0ac100807cc1fc011ca54c7f6ce897332fa62
parent598af7c6bd830d6da9182d485842f7ca4e51a6b4 (diff)
downloadchromium_src-c8697cf7a4a41b631abe279924fd5a5bb27cea47.zip
chromium_src-c8697cf7a4a41b631abe279924fd5a5bb27cea47.tar.gz
chromium_src-c8697cf7a4a41b631abe279924fd5a5bb27cea47.tar.bz2
[Cronet] update test expectations for OutputStream tests
On Lollipop, the default HttpURLConnection implementation sometimes does not trigger the write-out-of-bound error until reading response. This CL updates the test expectations. BUG=398997 Review URL: https://codereview.chromium.org/1094313004 Cr-Commit-Position: refs/heads/master@{#326305}
-rw-r--r--components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetBufferedOutputStreamTest.java4
-rw-r--r--components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetFixedModeOutputStreamTest.java10
2 files changed, 13 insertions, 1 deletions
diff --git a/components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetBufferedOutputStreamTest.java b/components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetBufferedOutputStreamTest.java
index d0d1a8c..698be48 100644
--- a/components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetBufferedOutputStreamTest.java
+++ b/components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetBufferedOutputStreamTest.java
@@ -353,6 +353,8 @@ public class CronetBufferedOutputStreamTest extends CronetTestBase {
try {
// Write remaining bytes.
out.write(UPLOAD_DATA, 3, UPLOAD_DATA.length - 3);
+ // On Lollipop, default implementation only triggers the error when reading response.
+ connection.getInputStream();
fail();
} catch (ProtocolException e) {
assertEquals("exceeded content-length limit of "
@@ -381,6 +383,8 @@ public class CronetBufferedOutputStreamTest extends CronetTestBase {
for (int i = 0; i < UPLOAD_DATA.length; i++) {
out.write(UPLOAD_DATA[i]);
}
+ // On Lollipop, default implementation only triggers the error when reading response.
+ connection.getInputStream();
fail();
} catch (java.net.ProtocolException e) {
assertEquals("exceeded content-length limit of "
diff --git a/components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetFixedModeOutputStreamTest.java b/components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetFixedModeOutputStreamTest.java
index c2b7e45..be00a66 100644
--- a/components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetFixedModeOutputStreamTest.java
+++ b/components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetFixedModeOutputStreamTest.java
@@ -133,6 +133,8 @@ public class CronetFixedModeOutputStreamTest extends CronetTestBase {
OutputStream out = connection.getOutputStream();
try {
out.write(UPLOAD_DATA);
+ // On Lollipop, default implementation only triggers the error when reading response.
+ connection.getInputStream();
fail();
} catch (ProtocolException e) {
// Expected.
@@ -162,10 +164,16 @@ public class CronetFixedModeOutputStreamTest extends CronetTestBase {
try {
// Try upload an extra byte.
out.write(UPLOAD_DATA[UPLOAD_DATA.length - 1]);
+ // On Lollipop, default implementation only triggers the error when reading response.
+ connection.getInputStream();
fail();
} catch (ProtocolException e) {
// Expected.
- assertEquals("expected 0 bytes but received 1", e.getMessage());
+ String expectedVariant = "expected 0 bytes but received 1";
+ String expectedVariantOnLollipop = "expected " + (UPLOAD_DATA.length - 1)
+ + " bytes but received " + UPLOAD_DATA.length;
+ assertTrue(expectedVariant.equals(e.getMessage())
+ || expectedVariantOnLollipop.equals(e.getMessage()));
}
connection.disconnect();
}