diff --git a/README.md b/README.md index 37a930eb..247b1e45 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ If you are using maven simply add the messagebird API to your dependencies like com.messagebird messagebird-api - 2.1.0 + 2.1.1 ``` @@ -37,7 +37,7 @@ In case you are building without maven you still need maven to build the librari then simply copy the following jar's over to your project ``` -messagebird-api-2.1.0.jar +messagebird-api-2.1.1.jar jackson-core-2.9.8.jar jackson-databind-2.9.8.jar jackson-dataformat-csv-2.9.8.jar diff --git a/api/pom.xml b/api/pom.xml index 3b64b194..6715612f 100644 --- a/api/pom.xml +++ b/api/pom.xml @@ -1,12 +1,10 @@ - + 4.0.0 com.messagebird messagebird-api - 2.1.0 @@ -44,7 +42,8 @@ scm:git:git@github.com:messagebird/java-rest-api.git scm:git:git@github.com:messagebird/java-rest-api.git git@github.com:messagebird/java-rest-api.git - + HEAD + @@ -54,8 +53,8 @@ true - - + + UTF-8 @@ -73,8 +72,8 @@ none true - - + + UTF-8 @@ -102,6 +101,12 @@ 4.11 test + + org.unitils + unitils-core + 3.4.2 + test + org.mockito mockito-core diff --git a/api/src/main/java/com/messagebird/MessageBirdServiceImpl.java b/api/src/main/java/com/messagebird/MessageBirdServiceImpl.java index f9c359e0..abe70e7d 100644 --- a/api/src/main/java/com/messagebird/MessageBirdServiceImpl.java +++ b/api/src/main/java/com/messagebird/MessageBirdServiceImpl.java @@ -57,7 +57,7 @@ public class MessageBirdServiceImpl implements MessageBirdService { private final String accessKey; private final String serviceUrl; - private final String clientVersion = "2.1.0"; + private final String clientVersion = "2.1.1"; private final String userAgentString; private Proxy proxy = null; diff --git a/api/src/test/java/com/messagebird/ContactTest.java b/api/src/test/java/com/messagebird/ContactTest.java index 7e6f9ee0..d289a4fe 100644 --- a/api/src/test/java/com/messagebird/ContactTest.java +++ b/api/src/test/java/com/messagebird/ContactTest.java @@ -5,13 +5,16 @@ import com.messagebird.exceptions.UnauthorizedException; import com.messagebird.objects.*; import org.junit.*; - +import org.mockito.Mockito; import static org.junit.Assert.*; +import static org.mockito.Mockito.*; +import static org.unitils.reflectionassert.ReflectionAssert.assertReflectionEquals; public class ContactTest { private static MessageBirdServiceImpl messageBirdService; private static MessageBirdClient messageBirdClient; + private static final String CONTACTPATH = "/contacts"; private static String msisdn; @@ -62,12 +65,20 @@ public static void tearDown() throws UnauthorizedException, GeneralException, No @Test public void testList() throws UnauthorizedException, GeneralException { - ContactList actual = messageBirdClient.listContacts(); + final ContactList contactResponseList = TestUtil.createContactList(); + + MessageBirdService messageBirdServiceMock = mock(MessageBirdService.class); + MessageBirdClient messageBirdClientInjectMock = new MessageBirdClient(messageBirdServiceMock); + + when(messageBirdServiceMock.requestList(Mockito.eq(CONTACTPATH), Mockito.eq(0), Mockito.eq(20), + Mockito.eq(ContactList.class))) + .thenReturn(contactResponseList); - assertSame(20, actual.getLimit()); - assertSame(0, actual.getOffset()); - assertNotSame(0, actual.getTotalCount()); - assertNotNull(actual.getItems().get(0).getId()); + final ContactList response = messageBirdClientInjectMock.listContacts(); + verify(messageBirdServiceMock, times(1)) + .requestList(Mockito.eq(CONTACTPATH), Mockito.eq(0), Mockito.eq(20), + Mockito.eq(ContactList.class)); + assertReflectionEquals(response.getItems().get(0),contactResponseList.getItems().get(0)); } @Test diff --git a/api/src/test/java/com/messagebird/TestUtil.java b/api/src/test/java/com/messagebird/TestUtil.java index ebb3691e..c49642e8 100644 --- a/api/src/test/java/com/messagebird/TestUtil.java +++ b/api/src/test/java/com/messagebird/TestUtil.java @@ -115,4 +115,37 @@ static WebhookResponseData createWebhookResponseData() { webhookResponseData.setData(Collections.singletonList(createWebhookResponse())); return webhookResponseData; } + + private static Contact createContact(){ + final CustomDetails customDetails = new CustomDetails(); + customDetails.setCustom1("ANY_DETAIL"); + + final MessageReference messageReference = new MessageReference(); + messageReference.setHREF("ANY_HREF"); + messageReference.setTotalCount(30); + + final GroupReference groupReference = new GroupReference(); + groupReference.setHREF("ANY_HREF"); + groupReference.setTotalCount(30); + + final Contact contact = new Contact(); + contact.setFirstName("ANY_NAME"); + contact.setLastName("ANY_LAST_NAME"); + contact.setId("ANY_ID"); + contact.setCreatedDatetime(new Date()); + contact.setMsisdn("ANY_MSISDN"); + contact.setCustomDetails(customDetails); + contact.setMessages(messageReference); + contact.setHref("ANY_HREF"); + contact.setGroups(groupReference); + contact.setUpdatedDatetime(new Date()); + + return contact; + } + static ContactList createContactList() { + final ContactList contactList = new ContactList(); + contactList.setItems(Collections.singletonList(createContact())); + return contactList; + } + } diff --git a/examples/pom.xml b/examples/pom.xml index a4b7979e..00936a20 100644 --- a/examples/pom.xml +++ b/examples/pom.xml @@ -6,7 +6,7 @@ com.messagebird examples - 2.1.0 + 2.1.1 @@ -20,7 +20,7 @@ com.messagebird messagebird-api - 2.1.0 + 2.1.1