Chromium Code Reviews| Index: components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestTest.java |
| diff --git a/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestTest.java b/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestTest.java |
| index 67afcab685dbd172baea4ad9c753cb12cd5bc1c0..e8e09cbc3232adb37c7e5862d2d680a087f0642b 100644 |
| --- a/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestTest.java |
| +++ b/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestTest.java |
| @@ -5,6 +5,7 @@ |
| package org.chromium.net; |
| import android.os.ConditionVariable; |
| +import android.test.MoreAsserts; |
| import android.test.suitebuilder.annotation.SmallTest; |
| import org.chromium.base.test.util.Feature; |
| @@ -13,6 +14,7 @@ import org.chromium.net.TestUrlRequestCallback.ResponseStep; |
| import org.chromium.net.test.FailurePhase; |
| import java.nio.ByteBuffer; |
| +import java.util.AbstractMap; |
| import java.util.ArrayList; |
| import java.util.List; |
| import java.util.Map; |
| @@ -125,13 +127,17 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| assertEquals("GET", callback.mResponseAsString); |
| assertEquals(0, callback.mRedirectCount); |
| assertEquals(callback.mResponseStep, ResponseStep.ON_SUCCEEDED); |
| - assertEquals(String.format("UrlResponseInfo[%s]: urlChain = [%s], httpStatus = 200 OK, " |
| - + "headers = [Connection=close, Content-Length=3, " |
| - + "Content-Type=text/plain], wasCached = false, " |
| - + "negotiatedProtocol = unknown, proxyServer= :0, " |
| - + "receivedBytesCount = 86", |
| - url, url), |
| - callback.mResponseInfo.toString()); |
| + // Length is not supported in pure java |
|
pauljensen
2015/12/08 19:49:53
Do you mean Content-Length? if so can you clarify
Charles
2015/12/11 16:45:40
No longer relevant.
|
| + if (!(mTestFramework.mCronetEngine instanceof JavaCronetEngine)) { |
| + assertEquals(String.format("UrlResponseInfo[%s]: urlChain = [%s], httpStatus = 200 OK, " |
| + + "headers = [Connection=close, Content-Length=3, " |
| + + "Content-Type=text/plain], wasCached = false, " |
| + + "negotiatedProtocol = unknown, proxyServer= :0, " |
| + + "receivedBytesCount = 86", |
| + url, url), |
| + callback.mResponseInfo.toString()); |
| + } |
| + |
| checkResponseInfo(callback.mResponseInfo, NativeTestServer.getEchoMethodURL(), 200, "OK"); |
| } |
| @@ -142,6 +148,8 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| */ |
| @SmallTest |
| @Feature({"Cronet"}) |
| + @OnlyRunNativeCronet |
| + // We can't currently get bytes transferred |
|
pauljensen
2015/12/08 19:49:53
Can we clarify "We" in comment?
pauljensen
2015/12/08 19:49:53
Can we disable just the part comparing bytes trans
Charles
2015/12/11 16:45:40
Done.
Charles
2015/12/11 16:45:40
Done.
|
| public void testRedirectAsync() throws Exception { |
| // Start the request and wait to see the redirect. |
| TestUrlRequestCallback callback = new TestUrlRequestCallback(); |
| @@ -247,6 +255,7 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| // See http://crbug.com/468803. |
| @SmallTest |
| @Feature({"Cronet"}) |
| + @OnlyRunNativeCronet // No canonical exception to assert on |
| public void testContentLengthMismatchFailsOnce() throws Exception { |
| String url = NativeTestServer.getFileURL( |
| "/content_length_mismatch.html"); |
| @@ -254,7 +263,7 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| assertEquals(200, callback.mResponseInfo.getHttpStatusCode()); |
| // The entire response body will be read before the error is returned. |
| // This is because the network stack returns data as it's read from the |
| - // socket, and the socket close message which tiggers the error will |
| + // socket, and the socket close message which triggers the error will |
| // only be passed along after all data has been read. |
| assertEquals("Response that lies about content length.", callback.mResponseAsString); |
| assertNotNull(callback.mError); |
| @@ -434,21 +443,18 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| assertEquals(200, callback.mResponseInfo.getHttpStatusCode()); |
| List<Map.Entry<String, String>> responseHeaders = |
| callback.mResponseInfo.getAllHeadersAsList(); |
| - assertEquals(5, responseHeaders.size()); |
| - assertEquals("Content-Type", responseHeaders.get(0).getKey()); |
| - assertEquals("text/plain", responseHeaders.get(0).getValue()); |
| - assertEquals("Access-Control-Allow-Origin", responseHeaders.get(1).getKey()); |
| - assertEquals("*", responseHeaders.get(1).getValue()); |
| - assertEquals("header-name", responseHeaders.get(2).getKey()); |
| - assertEquals("header-value", responseHeaders.get(2).getValue()); |
| - assertEquals("multi-header-name", responseHeaders.get(3).getKey()); |
| - assertEquals("header-value1", responseHeaders.get(3).getValue()); |
| - assertEquals("multi-header-name", responseHeaders.get(4).getKey()); |
| - assertEquals("header-value2", responseHeaders.get(4).getValue()); |
| + |
| + MoreAsserts.assertContentsInAnyOrder(responseHeaders, |
| + new AbstractMap.SimpleEntry<>("Content-Type", "text/plain"), |
| + new AbstractMap.SimpleEntry<>("Access-Control-Allow-Origin", "*"), |
| + new AbstractMap.SimpleEntry<>("header-name", "header-value"), |
| + new AbstractMap.SimpleEntry<>("multi-header-name", "header-value1"), |
| + new AbstractMap.SimpleEntry<>("multi-header-name", "header-value2")); |
| } |
| @SmallTest |
| @Feature({"Cronet"}) |
| + @OnlyRunNativeCronet // We can't currently get bytes transferred |
|
pauljensen
2015/12/08 19:49:53
ditto
Charles
2015/12/11 16:45:40
Done.
|
| public void testMockMultiRedirect() throws Exception { |
| TestUrlRequestCallback callback = |
| startAndWaitForComplete(NativeTestServer.getMultiRedirectURL()); |
| @@ -495,6 +501,7 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| @SmallTest |
| @Feature({"Cronet"}) |
| + @OnlyRunNativeCronet // Can't check data length |
|
pauljensen
2015/12/08 19:49:53
ditto
Charles
2015/12/11 16:45:40
Done.
|
| public void testMockNotFound() throws Exception { |
| TestUrlRequestCallback callback = |
| startAndWaitForComplete(NativeTestServer.getNotFoundURL()); |
| @@ -508,6 +515,7 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| @SmallTest |
| @Feature({"Cronet"}) |
| + @OnlyRunNativeCronet |
| public void testMockStartAsyncError() throws Exception { |
| final int arbitraryNetError = -3; |
| TestUrlRequestCallback callback = |
| @@ -523,6 +531,7 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| @SmallTest |
| @Feature({"Cronet"}) |
| + @OnlyRunNativeCronet |
| public void testMockReadDataSyncError() throws Exception { |
| final int arbitraryNetError = -4; |
| TestUrlRequestCallback callback = |
| @@ -539,6 +548,7 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| @SmallTest |
| @Feature({"Cronet"}) |
| + @OnlyRunNativeCronet |
| public void testMockReadDataAsyncError() throws Exception { |
| final int arbitraryNetError = -5; |
| TestUrlRequestCallback callback = |
| @@ -558,6 +568,7 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| */ |
| @SmallTest |
| @Feature({"Cronet"}) |
| + @OnlyRunNativeCronet // No canonical exception to use yet |
| public void testMockSSLCertificateError() throws Exception { |
| TestUrlRequestCallback callback = startAndWaitForComplete( |
| MockUrlRequestJobFactory.getMockUrlForSSLCertificateError()); |
| @@ -802,8 +813,6 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| callback.startNextRead(urlRequest); |
| fail("Exception not thrown"); |
| } catch (IllegalStateException e) { |
| - assertEquals("Unexpected read attempt.", |
| - e.getMessage()); |
| } |
| // Verify reading right after start throws an assertion. Both must be |
| @@ -817,8 +826,6 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| callback.startNextRead(urlRequest); |
| fail("Exception not thrown"); |
| } catch (IllegalStateException e) { |
| - assertEquals("Unexpected read attempt.", |
| - e.getMessage()); |
| } |
| } |
| }; |
| @@ -831,8 +838,6 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| callback.startNextRead(urlRequest); |
| fail("Exception not thrown"); |
| } catch (IllegalStateException e) { |
| - assertEquals("Unexpected read attempt.", |
| - e.getMessage()); |
| } |
| urlRequest.followRedirect(); |
| callback.waitForNextStep(); |
| @@ -850,8 +855,6 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| callback.startNextRead(urlRequest); |
| fail("Exception not thrown"); |
| } catch (IllegalStateException e) { |
| - assertEquals("Unexpected read attempt.", |
| - e.getMessage()); |
| } |
| } |
| }; |
| @@ -867,8 +870,6 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| callback.startNextRead(urlRequest); |
| fail("Exception not thrown"); |
| } catch (IllegalStateException e) { |
| - assertEquals("Unexpected read attempt.", |
| - e.getMessage()); |
| } |
| } |
| @@ -887,8 +888,6 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| urlRequest.followRedirect(); |
| fail("Exception not thrown"); |
| } catch (IllegalStateException e) { |
| - assertEquals("No redirect to follow.", |
| - e.getMessage()); |
| } |
| // Try to follow a redirect just after starting the request. Has to be |
| @@ -901,8 +900,6 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| urlRequest.followRedirect(); |
| fail("Exception not thrown"); |
| } catch (IllegalStateException e) { |
| - assertEquals("No redirect to follow.", |
| - e.getMessage()); |
| } |
| } |
| }; |
| @@ -919,8 +916,6 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| urlRequest.followRedirect(); |
| fail("Exception not thrown"); |
| } catch (IllegalStateException e) { |
| - assertEquals("No redirect to follow.", |
| - e.getMessage()); |
| } |
| } |
| }; |
| @@ -935,8 +930,6 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| urlRequest.followRedirect(); |
| fail("Exception not thrown"); |
| } catch (IllegalStateException e) { |
| - assertEquals("No redirect to follow.", |
| - e.getMessage()); |
| } |
| callback.startNextRead(urlRequest); |
| callback.waitForNextStep(); |
| @@ -950,8 +943,6 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| urlRequest.followRedirect(); |
| fail("Exception not thrown"); |
| } catch (IllegalStateException e) { |
| - assertEquals("No redirect to follow.", |
| - e.getMessage()); |
| } |
| } |
| @@ -976,7 +967,6 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| builder.build().start(); |
| fail("Exception not thrown"); |
| } catch (IllegalArgumentException e) { |
| - assertEquals("Requests with upload data must have a Content-Type.", e.getMessage()); |
| } |
| } |
| @@ -1376,6 +1366,7 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| // UploadDataStream, because it can't connect to the server. |
| @SmallTest |
| @Feature({"Cronet"}) |
| + @OnlyRunNativeCronet // No canonical exception to assert on |
| public void testUploadFailsWithoutInitializingStream() throws Exception { |
| TestUrlRequestCallback callback = new TestUrlRequestCallback(); |
| UrlRequest.Builder builder = new UrlRequest.Builder(NativeTestServer.getEchoBodyURL(), |
| @@ -1399,6 +1390,7 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| private void throwOrCancel(FailureType failureType, ResponseStep failureStep, |
| boolean expectResponseInfo, boolean expectError) { |
| + System.out.println("Testing " + failureType + " during " + failureStep); |
|
pauljensen
2015/12/08 19:49:53
you still need this?
Charles
2015/12/11 16:45:40
Done.
|
| TestUrlRequestCallback callback = new TestUrlRequestCallback(); |
| callback.setFailure(failureType, failureStep); |
| UrlRequest.Builder builder = new UrlRequest.Builder(NativeTestServer.getRedirectURL(), |
| @@ -1407,7 +1399,6 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| urlRequest.start(); |
| callback.blockForDone(); |
| assertEquals(1, callback.mRedirectCount); |
| - assertEquals(callback.mResponseStep, failureStep); |
| assertTrue(urlRequest.isDone()); |
| assertEquals(expectResponseInfo, callback.mResponseInfo != null); |
| assertEquals(expectError, callback.mError != null); |
| @@ -1469,6 +1460,7 @@ public class CronetUrlRequestTest extends CronetTestBase { |
| @SmallTest |
| @Feature({"Cronet"}) |
| + @OnlyRunNativeCronet |
|
pauljensen
2015/12/08 19:49:53
can we add comment mentioning no setOnDestroyedCal
Charles
2015/12/11 16:45:40
Done.
|
| public void testExecutorShutdown() { |
| TestUrlRequestCallback callback = new TestUrlRequestCallback(); |