Search in sources :

Example 11 with MockClient

use of com.recurly.v3.fixtures.MockClient in project recurly-client-java by recurly.

the class BaseClientTest method testMakeRequestWithoutResource.

@Test
public void testMakeRequestWithoutResource() throws IOException {
    final Call mCall = mock(Call.class);
    Answer answer = (i) -> {
        Request request = i.getArgument(0);
        HttpUrl url = request.url();
        assertEquals("DELETE", request.method());
        assertEquals("/resources/resource-id", url.url().getPath());
        return mCall;
    };
    when(mCall.execute()).thenReturn(MockClient.buildResponse(200, "OK", ""));
    OkHttpClient mockOkHttpClient = MockClient.getMockOkHttpClient(answer);
    final MockClient client = new MockClient("apiKey", mockOkHttpClient);
    client.removeResource("resource-id");
}
Also used : Assertions.assertThrows(org.junit.jupiter.api.Assertions.assertThrows) NotFoundException(com.recurly.v3.exception.NotFoundException) AtomicBoolean(java.util.concurrent.atomic.AtomicBoolean) FixtureConstants(com.recurly.v3.fixtures.FixtureConstants) HashMap(java.util.HashMap) Headers(okhttp3.Headers) MockQueryParams(com.recurly.v3.fixtures.MockQueryParams) ArrayList(java.util.ArrayList) Answer(org.mockito.stubbing.Answer) MockClient(com.recurly.v3.fixtures.MockClient) ApiException(com.recurly.v3.ApiException) Map(java.util.Map) Response(okhttp3.Response) Call(okhttp3.Call) Assertions.assertEquals(org.junit.jupiter.api.Assertions.assertEquals) MediaType(okhttp3.MediaType) Request(okhttp3.Request) TransactionException(com.recurly.v3.exception.TransactionException) InvalidApiKeyException(com.recurly.v3.exception.InvalidApiKeyException) MyResource(com.recurly.v3.fixtures.MyResource) DateTime(org.joda.time.DateTime) Assert.assertTrue(org.junit.Assert.assertTrue) IOException(java.io.IOException) Mockito.when(org.mockito.Mockito.when) Field(java.lang.reflect.Field) StandardCharsets(java.nio.charset.StandardCharsets) Test(org.junit.jupiter.api.Test) IOUtils(org.apache.commons.io.IOUtils) OkHttpClient(okhttp3.OkHttpClient) ValidationException(com.recurly.v3.exception.ValidationException) MyRequest(com.recurly.v3.fixtures.MyRequest) HttpUrl(okhttp3.HttpUrl) Assert(org.junit.Assert) InternalServerException(com.recurly.v3.exception.InternalServerException) Collections(java.util.Collections) ExceptionFactory(com.recurly.v3.exception.ExceptionFactory) InputStream(java.io.InputStream) Mockito.mock(org.mockito.Mockito.mock) Call(okhttp3.Call) Answer(org.mockito.stubbing.Answer) OkHttpClient(okhttp3.OkHttpClient) Request(okhttp3.Request) MyRequest(com.recurly.v3.fixtures.MyRequest) HttpUrl(okhttp3.HttpUrl) MockClient(com.recurly.v3.fixtures.MockClient) Test(org.junit.jupiter.api.Test)

Example 12 with MockClient

use of com.recurly.v3.fixtures.MockClient in project recurly-client-java by recurly.

the class BaseClientTest method testInterpolatePathWithParams.

@Test
public void testInterpolatePathWithParams() {
    final MockClient client = new MockClient("apiKey");
    final String path = "/accounts/{account_id}/notes/{account_note_id}";
    final HashMap<String, String> urlParams = new HashMap<String, String>();
    urlParams.put("account_id", "accountId/");
    urlParams.put("account_note_id", "noteId,");
    final String interpolatedPath = client.interpolatePath(path, urlParams);
    assertEquals("/accounts/accountId%2F/notes/noteId%2C", interpolatedPath);
}
Also used : HashMap(java.util.HashMap) MockClient(com.recurly.v3.fixtures.MockClient) Test(org.junit.jupiter.api.Test)

Example 13 with MockClient

use of com.recurly.v3.fixtures.MockClient in project recurly-client-java by recurly.

the class BaseClientTest method testInterpolatePathValidations.

@Test
public void testInterpolatePathValidations() {
    final MockClient client = new MockClient("apiKey");
    final String path = "/accounts/{account_id}/notes/{account_note_id}";
    final HashMap<String, String> urlParams = new HashMap<String, String>();
    urlParams.put("account_id", "");
    urlParams.put("account_note_id", "");
    assertThrows(RecurlyException.class, () -> {
        client.interpolatePath(path, urlParams);
    });
}
Also used : HashMap(java.util.HashMap) MockClient(com.recurly.v3.fixtures.MockClient) Test(org.junit.jupiter.api.Test)

Example 14 with MockClient

use of com.recurly.v3.fixtures.MockClient in project recurly-client-java by recurly.

the class BaseClientTest method testMakeRequestWithQueryParams.

@Test
public void testMakeRequestWithQueryParams() throws IOException {
    DateTime dateTime = new DateTime();
    final Call mCall = mock(Call.class);
    Answer answer = (i) -> {
        Request request = i.getArgument(0);
        HttpUrl url = request.url();
        assertEquals("Aaron", url.queryParameter("my_string"));
        assertEquals(dateTime.toString(), url.queryParameter("my_date_time"));
        assertEquals("1", url.queryParameter("my_integer"));
        assertEquals("2.3", url.queryParameter("my_float"));
        assertEquals("4.5", url.queryParameter("my_double"));
        assertEquals("6", url.queryParameter("my_long"));
        assertEquals("twenty-three", url.queryParameter("my_enum"));
        assertEquals(null, url.queryParameter("my_random"));
        assertEquals("[]", url.queryParameter("unsupported"));
        return mCall;
    };
    when(mCall.execute()).thenReturn(MockClient.buildResponse(200, "OK", getResponseListJson()));
    OkHttpClient mockOkHttpClient = MockClient.getMockOkHttpClient(answer);
    final MockClient client = new MockClient("apiKey", mockOkHttpClient);
    final MockQueryParams qp = new MockQueryParams();
    qp.setMyString("Aaron");
    qp.setMyDateTime(dateTime);
    qp.setMyInteger(1);
    qp.setMyFloat(2.3f);
    qp.setMyDouble(4.5);
    qp.setMyLong(6L);
    qp.setMyEnum(FixtureConstants.ConstantType.TWENTY_THREE);
    qp.setMyRandom(null);
    qp.setUnsupported(new ArrayList<>());
    final Pager<MyResource> pager = client.listResources(qp);
    pager.getNextPage();
}
Also used : Assertions.assertThrows(org.junit.jupiter.api.Assertions.assertThrows) NotFoundException(com.recurly.v3.exception.NotFoundException) AtomicBoolean(java.util.concurrent.atomic.AtomicBoolean) FixtureConstants(com.recurly.v3.fixtures.FixtureConstants) HashMap(java.util.HashMap) Headers(okhttp3.Headers) MockQueryParams(com.recurly.v3.fixtures.MockQueryParams) ArrayList(java.util.ArrayList) Answer(org.mockito.stubbing.Answer) MockClient(com.recurly.v3.fixtures.MockClient) ApiException(com.recurly.v3.ApiException) Map(java.util.Map) Response(okhttp3.Response) Call(okhttp3.Call) Assertions.assertEquals(org.junit.jupiter.api.Assertions.assertEquals) MediaType(okhttp3.MediaType) Request(okhttp3.Request) TransactionException(com.recurly.v3.exception.TransactionException) InvalidApiKeyException(com.recurly.v3.exception.InvalidApiKeyException) MyResource(com.recurly.v3.fixtures.MyResource) DateTime(org.joda.time.DateTime) Assert.assertTrue(org.junit.Assert.assertTrue) IOException(java.io.IOException) Mockito.when(org.mockito.Mockito.when) Field(java.lang.reflect.Field) StandardCharsets(java.nio.charset.StandardCharsets) Test(org.junit.jupiter.api.Test) IOUtils(org.apache.commons.io.IOUtils) OkHttpClient(okhttp3.OkHttpClient) ValidationException(com.recurly.v3.exception.ValidationException) MyRequest(com.recurly.v3.fixtures.MyRequest) HttpUrl(okhttp3.HttpUrl) Assert(org.junit.Assert) InternalServerException(com.recurly.v3.exception.InternalServerException) Collections(java.util.Collections) ExceptionFactory(com.recurly.v3.exception.ExceptionFactory) InputStream(java.io.InputStream) Mockito.mock(org.mockito.Mockito.mock) Call(okhttp3.Call) Answer(org.mockito.stubbing.Answer) OkHttpClient(okhttp3.OkHttpClient) Request(okhttp3.Request) MyRequest(com.recurly.v3.fixtures.MyRequest) MockQueryParams(com.recurly.v3.fixtures.MockQueryParams) DateTime(org.joda.time.DateTime) HttpUrl(okhttp3.HttpUrl) MockClient(com.recurly.v3.fixtures.MockClient) MyResource(com.recurly.v3.fixtures.MyResource) Test(org.junit.jupiter.api.Test)

Example 15 with MockClient

use of com.recurly.v3.fixtures.MockClient in project recurly-client-java by recurly.

the class BaseClientTest method testValidationError.

@Test
public void testValidationError() throws IOException {
    final Call mCall = mock(Call.class);
    Answer answer = (i) -> {
        return mCall;
    };
    when(mCall.execute()).thenReturn(MockClient.buildResponse(422, "Unprocessable Entity", getErrorResponse("validation")));
    OkHttpClient mockOkHttpClient = MockClient.getMockOkHttpClient(answer);
    final MockClient client = new MockClient("apiKey", mockOkHttpClient);
    assertThrows(ValidationException.class, () -> {
        client.removeResource("code-aaron");
    });
}
Also used : Assertions.assertThrows(org.junit.jupiter.api.Assertions.assertThrows) NotFoundException(com.recurly.v3.exception.NotFoundException) AtomicBoolean(java.util.concurrent.atomic.AtomicBoolean) FixtureConstants(com.recurly.v3.fixtures.FixtureConstants) HashMap(java.util.HashMap) Headers(okhttp3.Headers) MockQueryParams(com.recurly.v3.fixtures.MockQueryParams) ArrayList(java.util.ArrayList) Answer(org.mockito.stubbing.Answer) MockClient(com.recurly.v3.fixtures.MockClient) ApiException(com.recurly.v3.ApiException) Map(java.util.Map) Response(okhttp3.Response) Call(okhttp3.Call) Assertions.assertEquals(org.junit.jupiter.api.Assertions.assertEquals) MediaType(okhttp3.MediaType) Request(okhttp3.Request) TransactionException(com.recurly.v3.exception.TransactionException) InvalidApiKeyException(com.recurly.v3.exception.InvalidApiKeyException) MyResource(com.recurly.v3.fixtures.MyResource) DateTime(org.joda.time.DateTime) Assert.assertTrue(org.junit.Assert.assertTrue) IOException(java.io.IOException) Mockito.when(org.mockito.Mockito.when) Field(java.lang.reflect.Field) StandardCharsets(java.nio.charset.StandardCharsets) Test(org.junit.jupiter.api.Test) IOUtils(org.apache.commons.io.IOUtils) OkHttpClient(okhttp3.OkHttpClient) ValidationException(com.recurly.v3.exception.ValidationException) MyRequest(com.recurly.v3.fixtures.MyRequest) HttpUrl(okhttp3.HttpUrl) Assert(org.junit.Assert) InternalServerException(com.recurly.v3.exception.InternalServerException) Collections(java.util.Collections) ExceptionFactory(com.recurly.v3.exception.ExceptionFactory) InputStream(java.io.InputStream) Mockito.mock(org.mockito.Mockito.mock) Call(okhttp3.Call) Answer(org.mockito.stubbing.Answer) OkHttpClient(okhttp3.OkHttpClient) MockClient(com.recurly.v3.fixtures.MockClient) Test(org.junit.jupiter.api.Test)

Aggregations

MockClient (com.recurly.v3.fixtures.MockClient)26 Test (org.junit.jupiter.api.Test)26 MyResource (com.recurly.v3.fixtures.MyResource)20 IOException (java.io.IOException)20 AtomicBoolean (java.util.concurrent.atomic.AtomicBoolean)20 Request (okhttp3.Request)20 Answer (org.mockito.stubbing.Answer)20 HashMap (java.util.HashMap)18 ApiException (com.recurly.v3.ApiException)14 ExceptionFactory (com.recurly.v3.exception.ExceptionFactory)14 InternalServerException (com.recurly.v3.exception.InternalServerException)14 InvalidApiKeyException (com.recurly.v3.exception.InvalidApiKeyException)14 NotFoundException (com.recurly.v3.exception.NotFoundException)14 TransactionException (com.recurly.v3.exception.TransactionException)14 ValidationException (com.recurly.v3.exception.ValidationException)14 FixtureConstants (com.recurly.v3.fixtures.FixtureConstants)14 MockQueryParams (com.recurly.v3.fixtures.MockQueryParams)14 MyRequest (com.recurly.v3.fixtures.MyRequest)14 InputStream (java.io.InputStream)14 Field (java.lang.reflect.Field)14