java类android.test.suitebuilder.annotation.SmallTest的实例源码

CronetBufferedOutputStreamTest.java 文件源码 项目:chromium-net-for-android 阅读 21 收藏 0 点赞 0 评论 0
@SmallTest
@Feature({"Cronet"})
@CompareDefaultWithCronet
public void testWriteAfterReadingResponse() throws Exception {
    URL url = new URL(NativeTestServer.getEchoBodyURL());
    HttpURLConnection connection =
            (HttpURLConnection) url.openConnection();
    connection.setDoOutput(true);
    connection.setRequestMethod("POST");
    OutputStream out = connection.getOutputStream();
    assertEquals(200, connection.getResponseCode());
    try {
        out.write(TestUtil.UPLOAD_DATA);
        fail();
    } catch (Exception e) {
        // Default implementation gives an IOException and says that the
        // stream is closed. Cronet gives an IllegalStateException and
        // complains about write after connected.
    }
}
CronetUrlRequestTest.java 文件源码 项目:chromium-net-for-android 阅读 33 收藏 0 点赞 0 评论 0
@SmallTest
@Feature({"Cronet"})
public void testUploadRedirectSync() throws Exception {
    TestUrlRequestCallback callback = new TestUrlRequestCallback();
    UrlRequest.Builder builder =
            new UrlRequest.Builder(NativeTestServer.getRedirectToEchoBody(), callback,
                    callback.getExecutor(), mTestFramework.mCronetEngine);

    TestUploadDataProvider dataProvider = new TestUploadDataProvider(
            TestUploadDataProvider.SuccessCallbackMode.SYNC, callback.getExecutor());
    dataProvider.addRead("test".getBytes());
    builder.setUploadDataProvider(dataProvider, callback.getExecutor());
    builder.addHeader("Content-Type", "useless/string");
    builder.build().start();
    callback.blockForDone();
    dataProvider.assertClosed();

    // 1 read call before the rewind, 1 after.
    assertEquals(2, dataProvider.getNumReadCalls());
    assertEquals(1, dataProvider.getNumRewindCalls());

    assertEquals(200, callback.mResponseInfo.getHttpStatusCode());
    assertEquals("test", callback.mResponseAsString);
}
BidirectionalStreamTest.java 文件源码 项目:chromium-net-for-android 阅读 23 收藏 0 点赞 0 评论 0
@SmallTest
@Feature({"Cronet"})
@OnlyRunNativeCronet
public void testSimpleHead() throws Exception {
    String url = Http2TestServer.getEchoMethodUrl();
    TestBidirectionalStreamCallback callback = new TestBidirectionalStreamCallback();
    // Create stream.
    BidirectionalStream stream = new BidirectionalStream
                                         .Builder(url, callback, callback.getExecutor(),
                                                 mTestFramework.mCronetEngine)
                                         .setHttpMethod("HEAD")
                                         .build();
    stream.start();
    callback.blockForDone();
    assertTrue(stream.isDone());
    assertEquals(200, callback.mResponseInfo.getHttpStatusCode());
    assertEquals("HEAD", callback.mResponseAsString);
    UrlResponseInfo urlResponseInfo =
            createUrlResponseInfo(new String[] {url}, "", 200, 28, ":status", "200");
    assertResponseEquals(urlResponseInfo, callback.mResponseInfo);
    checkResponseInfo(callback.mResponseInfo, Http2TestServer.getEchoMethodUrl(), 200, "");
}
SdchTest.java 文件源码 项目:chromium-net-for-android 阅读 21 收藏 0 点赞 0 评论 0
@SmallTest
@Feature({"Cronet"})
@OnlyRunNativeCronet
public void testDictionaryNotFound() throws Exception {
    setUp(Sdch.ENABLED, Api.ASYNC);
    // Make a request to /sdch/index which advertises a bad dictionary that
    // does not exist.
    TestUrlRequestCallback callback1 = startAndWaitForComplete(mTestFramework.mCronetEngine,
            NativeTestServer.getSdchURL() + "/sdch/index?q=NotFound");
    assertEquals(200, callback1.mResponseInfo.getHttpStatusCode());
    assertEquals("This is an index page.\n", callback1.mResponseAsString);
    assertEquals(Arrays.asList("/sdch/dict/NotFound"),
            callback1.mResponseInfo.getAllHeaders().get("Get-Dictionary"));

    // Make a request to fetch /sdch/test, and make sure Sdch encoding is not used.
    TestUrlRequestCallback callback2 = startAndWaitForComplete(
            mTestFramework.mCronetEngine, NativeTestServer.getSdchURL() + "/sdch/test");
    assertEquals(200, callback2.mResponseInfo.getHttpStatusCode());
    assertEquals("Sdch is not used.\n", callback2.mResponseAsString);
}
CronetUrlRequestTest.java 文件源码 项目:chromium-net-for-android 阅读 28 收藏 0 点赞 0 评论 0
@SmallTest
@Feature({"Cronet"})
public void testUploadReadFailSync() throws Exception {
    TestUrlRequestCallback callback = new TestUrlRequestCallback();
    UrlRequest.Builder builder = new UrlRequest.Builder(NativeTestServer.getEchoBodyURL(),
            callback, callback.getExecutor(), mTestFramework.mCronetEngine);

    TestUploadDataProvider dataProvider = new TestUploadDataProvider(
            TestUploadDataProvider.SuccessCallbackMode.SYNC, callback.getExecutor());
    dataProvider.setReadFailure(0, TestUploadDataProvider.FailMode.CALLBACK_SYNC);
    // This will never be read, but if the length is 0, read may never be
    // called.
    dataProvider.addRead("test".getBytes());
    builder.setUploadDataProvider(dataProvider, callback.getExecutor());
    builder.addHeader("Content-Type", "useless/string");
    builder.build().start();
    callback.blockForDone();
    dataProvider.assertClosed();

    assertEquals(1, dataProvider.getNumReadCalls());
    assertEquals(0, dataProvider.getNumRewindCalls());

    assertEquals("Exception received from UploadDataProvider", callback.mError.getMessage());
    assertEquals("Sync read failure", callback.mError.getCause().getMessage());
    assertEquals(null, callback.mResponseInfo);
}
CronetBufferedOutputStreamTest.java 文件源码 项目:chromium-net-for-android 阅读 22 收藏 0 点赞 0 评论 0
@SmallTest
@Feature({"Cronet"})
@CompareDefaultWithCronet
public void testGetOutputStreamAfterConnectionMade() throws Exception {
    URL url = new URL(NativeTestServer.getEchoBodyURL());
    HttpURLConnection connection =
            (HttpURLConnection) url.openConnection();
    connection.setDoOutput(true);
    connection.setRequestMethod("POST");
    assertEquals(200, connection.getResponseCode());
    try {
        connection.getOutputStream();
        fail();
    } catch (java.net.ProtocolException e) {
        // Expected.
    }
}
CronetUrlRequestTest.java 文件源码 项目:chromium-net-for-android 阅读 25 收藏 0 点赞 0 评论 0
@SmallTest
@Feature({"Cronet"})
public void testUploadRewindFailSync() throws Exception {
    TestUrlRequestCallback callback = new TestUrlRequestCallback();
    UrlRequest.Builder builder =
            new UrlRequest.Builder(NativeTestServer.getRedirectToEchoBody(), callback,
                    callback.getExecutor(), mTestFramework.mCronetEngine);

    TestUploadDataProvider dataProvider = new TestUploadDataProvider(
            TestUploadDataProvider.SuccessCallbackMode.SYNC, callback.getExecutor());
    dataProvider.setRewindFailure(TestUploadDataProvider.FailMode.CALLBACK_SYNC);
    dataProvider.addRead("test".getBytes());
    builder.setUploadDataProvider(dataProvider, callback.getExecutor());
    builder.addHeader("Content-Type", "useless/string");
    builder.build().start();
    callback.blockForDone();
    dataProvider.assertClosed();

    assertEquals(1, dataProvider.getNumReadCalls());
    assertEquals(1, dataProvider.getNumRewindCalls());

    assertEquals("Exception received from UploadDataProvider", callback.mError.getMessage());
    assertEquals("Sync rewind failure", callback.mError.getCause().getMessage());
    assertEquals(null, callback.mResponseInfo);
}
CronetHttpURLConnectionTest.java 文件源码 项目:chromium-net-for-android 阅读 21 收藏 0 点赞 0 评论 0
@SmallTest
@Feature({"Cronet"})
@CompareDefaultWithCronet
public void testInitOutputStreamInConnect() throws Exception {
    URL url = new URL(NativeTestServer.getEchoBodyURL());
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    connection.setDoOutput(true);
    String dataString = "some very important data";
    byte[] data = dataString.getBytes();
    connection.setFixedLengthStreamingMode(data.length);
    connection.connect();
    OutputStream out = connection.getOutputStream();
    out.write(data);
    assertEquals(200, connection.getResponseCode());
    assertEquals("OK", connection.getResponseMessage());
    assertEquals(dataString, TestUtil.getResponseAsString(connection));
    connection.disconnect();
}
CronetUrlRequestContextTest.java 文件源码 项目:chromium-net-for-android 阅读 34 收藏 0 点赞 0 评论 0
@SmallTest
@Feature({"Cronet"})
public void testInitEngineStartTwoRequests() throws Exception {
    CronetTestFramework testFramework = startCronetTestFrameworkAndSkipLibraryInit();

    // Make two requests after initializing the context.
    CronetEngine cronetEngine = testFramework.initCronetEngine();
    int[] statusCodes = {0, 0};
    String[] urls = {mUrl, mUrl404};
    for (int i = 0; i < 2; i++) {
        TestUrlRequestCallback callback = new TestUrlRequestCallback();
        UrlRequest.Builder urlRequestBuilder =
                new UrlRequest.Builder(urls[i], callback, callback.getExecutor(), cronetEngine);
        urlRequestBuilder.build().start();
        callback.blockForDone();
        statusCodes[i] = callback.mResponseInfo.getHttpStatusCode();
    }
    assertEquals(200, statusCodes[0]);
    assertEquals(404, statusCodes[1]);
}
CronetBufferedOutputStreamTest.java 文件源码 项目:chromium-net-for-android 阅读 22 收藏 0 点赞 0 评论 0
@SmallTest
@Feature({"Cronet"})
@CompareDefaultWithCronet
public void testPostWithoutContentLengthOneMassiveWrite() throws Exception {
    URL url = new URL(NativeTestServer.getEchoBodyURL());
    HttpURLConnection connection =
            (HttpURLConnection) url.openConnection();
    connection.setDoOutput(true);
    connection.setRequestMethod("POST");
    OutputStream out = connection.getOutputStream();
    byte[] largeData = TestUtil.getLargeData();
    out.write(largeData);
    assertEquals(200, connection.getResponseCode());
    assertEquals("OK", connection.getResponseMessage());
    TestUtil.checkLargeData(TestUtil.getResponseAsString(connection));
    connection.disconnect();
}


问题


面经


文章

微信
公众号

扫码关注公众号