diff options
author | xunjieli <xunjieli@chromium.org> | 2015-04-22 08:40:44 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-04-22 15:41:05 +0000 |
commit | c8697cf7a4a41b631abe279924fd5a5bb27cea47 (patch) | |
tree | 7aa0ac100807cc1fc011ca54c7f6ce897332fa62 | |
parent | 598af7c6bd830d6da9182d485842f7ca4e51a6b4 (diff) | |
download | chromium_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}
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(); } |