Search in sources :

Example 6 with HttpClientProxy

use of com.tvd12.ezyhttp.client.HttpClientProxy in project ezyhttp by youngmonkeys.

the class HttpClientProxyTest method downloadToFileWithCancellationTokenTest.

@Test
public void downloadToFileWithCancellationTokenTest() throws Exception {
    // given
    String fileUrl = "https://resources.tvd12.com/ezy-settings-1.0.0.xsd";
    HttpClientProxy sut = HttpClientProxy.builder().requestQueueCapacity(1).threadPoolSize(1).build();
    // when
    String fileName = sut.download(fileUrl, new File("test-output/no-commit"), new DownloadCancellationToken());
    // then
    Asserts.assertEquals(fileName, "ezy-settings-1.0.0.xsd");
    Asserts.assertTrue(new File("test-output/no-commit/ezy-settings-1.0.0.xsd").exists());
    sut.close();
    sut.stop();
}
Also used : DownloadCancellationToken(com.tvd12.ezyhttp.client.concurrent.DownloadCancellationToken) HttpClientProxy(com.tvd12.ezyhttp.client.HttpClientProxy) File(java.io.File) Test(org.testng.annotations.Test) BeforeTest(org.testng.annotations.BeforeTest) BaseTest(com.tvd12.test.base.BaseTest)

Example 7 with HttpClientProxy

use of com.tvd12.ezyhttp.client.HttpClientProxy in project ezyhttp by youngmonkeys.

the class DownloadWithTokenTest method main.

public static void main(String[] args) throws Exception {
    // given
    String fileUrl = "http://localhost:8083/api/v1/files/ansible.jpg";
    DownloadRequest request = new DownloadRequest().setFileURL(fileUrl).setConnectTimeout(5000).setReadTimeout(5000).setHeaders(MultiValueMap.builder().setValue("token", "").build());
    HttpClientProxy sut = HttpClientProxy.builder().requestQueueCapacity(1).threadPoolSize(1).build();
    // when
    String fileName = sut.download(request, new File("test-output/no-commit"));
    System.out.println(fileName);
    // then
    sut.close();
    sut.stop();
}
Also used : DownloadRequest(com.tvd12.ezyhttp.client.request.DownloadRequest) HttpClientProxy(com.tvd12.ezyhttp.client.HttpClientProxy) File(java.io.File)

Example 8 with HttpClientProxy

use of com.tvd12.ezyhttp.client.HttpClientProxy in project ezyhttp by youngmonkeys.

the class HttpClientProxyTest method downloadToOutputStreamButCancelTest.

@Test
public void downloadToOutputStreamButCancelTest() throws Exception {
    // given
    String fileUrl = "https://resources.tvd12.com/ezy-settings-1.0.0.xsd";
    HttpClientProxy sut = HttpClientProxy.builder().requestQueueCapacity(1).threadPoolSize(1).build();
    File outFile = new File("test-output/no-commit/download-test.xml");
    EzyFileUtil.createFileIfNotExists(outFile);
    OutputStream outputStream = new FileOutputStream(outFile);
    DownloadCancellationToken cancelledException = new DownloadCancellationToken();
    cancelledException.cancel();
    // when
    Throwable e = Asserts.assertThrows(() -> sut.download(fileUrl, outputStream, cancelledException));
    // then
    Asserts.assertEqualsType(e, DownloadCancelledException.class);
    sut.close();
    sut.stop();
}
Also used : DownloadCancellationToken(com.tvd12.ezyhttp.client.concurrent.DownloadCancellationToken) OutputStream(java.io.OutputStream) FileOutputStream(java.io.FileOutputStream) FileOutputStream(java.io.FileOutputStream) HttpClientProxy(com.tvd12.ezyhttp.client.HttpClientProxy) File(java.io.File) Test(org.testng.annotations.Test) BeforeTest(org.testng.annotations.BeforeTest) BaseTest(com.tvd12.test.base.BaseTest)

Example 9 with HttpClientProxy

use of com.tvd12.ezyhttp.client.HttpClientProxy in project ezyhttp by youngmonkeys.

the class HttpClientProxyTest method putJsonTest.

@Test
public void putJsonTest() throws Exception {
    // given
    HttpClientProxy sut = newClientProxy();
    PutRequest request = new PutRequest().setConnectTimeout(15000).setEntity(new TestRequest("Monkey")).setResponseType(TestResponse.class).setResponseType(StatusCodes.OK, TestResponse.class).setURL("http://127.0.0.1:18081/greet").setURL(new URL("http://127.0.0.1:18081/greet")).setURL(URI.create("http://127.0.0.1:18081/greet"));
    // when
    TestResponse actual = sut.call(request, 15000);
    // then
    TestResponse expectation = new TestResponse("Greet Monkey!");
    Asserts.assertEquals(expectation, actual);
    sut.close();
    sut.stop();
}
Also used : HttpClientProxy(com.tvd12.ezyhttp.client.HttpClientProxy) URL(java.net.URL) Test(org.testng.annotations.Test) BeforeTest(org.testng.annotations.BeforeTest) BaseTest(com.tvd12.test.base.BaseTest)

Example 10 with HttpClientProxy

use of com.tvd12.ezyhttp.client.HttpClientProxy in project ezyhttp by youngmonkeys.

the class HttpClientProxyTest method fireJsonButExceptionInCallbackTest.

@Test
public void fireJsonButExceptionInCallbackTest() throws Exception {
    // given
    HttpClientProxy sut = newClientProxy();
    GetRequest request = new GetRequest().setConnectTimeout(15000).setResponseType(TestResponse.class).setResponseType(StatusCodes.OK, TestResponse.class).setURL("http://127.0.0.1:18081/greet?who=Monkey");
    // when
    CountDownLatch countDownLatch = new CountDownLatch(1);
    EzyWrap<TestResponse> wrap = new EzyWrap<>();
    sut.fire(request, new RequestCallback<TestResponse>() {

        @Override
        public void onResponse(TestResponse response) {
            wrap.setValue(response);
            countDownLatch.countDown();
            throw new RuntimeException("just test");
        }

        @Override
        public void onException(Exception e) {
        }
    });
    countDownLatch.await();
    Thread.sleep(100);
    // then
    TestResponse expectation = new TestResponse("Greet Monkey!");
    Asserts.assertEquals(expectation, wrap.getValue());
    sut.close();
    sut.stop();
}
Also used : EzyWrap(com.tvd12.ezyfox.util.EzyWrap) HttpClientProxy(com.tvd12.ezyhttp.client.HttpClientProxy) CountDownLatch(java.util.concurrent.CountDownLatch) DownloadCancelledException(com.tvd12.ezyhttp.client.exception.DownloadCancelledException) RequestQueueFullException(com.tvd12.ezyhttp.client.exception.RequestQueueFullException) UnknownHostException(java.net.UnknownHostException) BadRequestException(com.tvd12.ezyfox.exception.BadRequestException) ClientNotActiveException(com.tvd12.ezyhttp.client.exception.ClientNotActiveException) Test(org.testng.annotations.Test) BeforeTest(org.testng.annotations.BeforeTest) BaseTest(com.tvd12.test.base.BaseTest)

Aggregations

HttpClientProxy (com.tvd12.ezyhttp.client.HttpClientProxy)31 BaseTest (com.tvd12.test.base.BaseTest)27 BeforeTest (org.testng.annotations.BeforeTest)27 Test (org.testng.annotations.Test)27 File (java.io.File)11 BadRequestException (com.tvd12.ezyfox.exception.BadRequestException)8 ClientNotActiveException (com.tvd12.ezyhttp.client.exception.ClientNotActiveException)8 DownloadCancelledException (com.tvd12.ezyhttp.client.exception.DownloadCancelledException)8 RequestQueueFullException (com.tvd12.ezyhttp.client.exception.RequestQueueFullException)8 UnknownHostException (java.net.UnknownHostException)8 DownloadCancellationToken (com.tvd12.ezyhttp.client.concurrent.DownloadCancellationToken)6 EzyWrap (com.tvd12.ezyfox.util.EzyWrap)5 FileOutputStream (java.io.FileOutputStream)5 OutputStream (java.io.OutputStream)5 CountDownLatch (java.util.concurrent.CountDownLatch)5 URL (java.net.URL)4 HelloRequest (com.tvd12.ezyhttp.client.test.request.HelloRequest)3 ResponseEntity (com.tvd12.ezyhttp.core.response.ResponseEntity)3 DownloadRequest (com.tvd12.ezyhttp.client.request.DownloadRequest)2 Request (com.tvd12.ezyhttp.client.request.Request)2