/** * This code was generated by * \ / _ _ _| _ _ * | (_)\/(_)(_|\/| |(/_ v1.0.0 * / / */ package com.twilio.rest.chat.v2; import com.fasterxml.jackson.databind.ObjectMapper; import com.twilio.Twilio; import com.twilio.converter.DateConverter; import com.twilio.converter.Promoter; import com.twilio.exception.TwilioException; import com.twilio.http.HttpMethod; import com.twilio.http.Request; import com.twilio.http.Response; import com.twilio.http.TwilioRestClient; import com.twilio.rest.Domains; import mockit.Mocked; import mockit.NonStrictExpectations; import org.junit.Before; import org.junit.Test; import java.net.URI; import static com.twilio.TwilioTest.serialize; import static org.junit.Assert.*; public class CredentialTest { @Mocked private TwilioRestClient twilioRestClient; @Before public void setUp() throws Exception { Twilio.init("AC123", "AUTH TOKEN"); } @Test public void testReadRequest() { new NonStrictExpectations() {{ Request request = new Request(HttpMethod.GET, Domains.CHAT.toString(), "/v2/Credentials"); twilioRestClient.request(request); times = 1; result = new Response("", 500); twilioRestClient.getAccountSid(); result = "AC123"; }}; try { Credential.reader().read(); fail("Expected TwilioException to be thrown for 500"); } catch (TwilioException e) {} } @Test public void testReadFullResponse() { new NonStrictExpectations() {{ twilioRestClient.request((Request) any); result = new Response("{\"credentials\": [{\"sid\": \"CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"account_sid\": \"ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"friendly_name\": \"Test slow create\",\"type\": \"apn\",\"sandbox\": \"False\",\"date_created\": \"2015-10-07T17:50:01Z\",\"date_updated\": \"2015-10-07T17:50:01Z\",\"url\": \"https://chat.twilio.com/v2/Credentials/CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\"}],\"meta\": {\"page\": 0,\"page_size\": 1,\"first_page_url\": \"https://chat.twilio.com/v2/Credentials?PageSize=1&Page=0\",\"previous_page_url\": null,\"url\": \"https://chat.twilio.com/v2/Credentials?PageSize=1&Page=0\",\"next_page_url\": null,\"key\": \"credentials\"}}", TwilioRestClient.HTTP_STATUS_CODE_OK); twilioRestClient.getObjectMapper(); result = new ObjectMapper(); }}; assertNotNull(Credential.reader().read()); } @Test public void testReadEmptyResponse() { new NonStrictExpectations() {{ twilioRestClient.request((Request) any); result = new Response("{\"credentials\": [],\"meta\": {\"page\": 0,\"page_size\": 1,\"first_page_url\": \"https://chat.twilio.com/v2/Credentials?PageSize=1&Page=0\",\"previous_page_url\": null,\"url\": \"https://chat.twilio.com/v2/Credentials?PageSize=1&Page=0\",\"next_page_url\": null,\"key\": \"credentials\"}}", TwilioRestClient.HTTP_STATUS_CODE_OK); twilioRestClient.getObjectMapper(); result = new ObjectMapper(); }}; assertNotNull(Credential.reader().read()); } @Test public void testCreateRequest() { new NonStrictExpectations() {{ Request request = new Request(HttpMethod.POST, Domains.CHAT.toString(), "/v2/Credentials"); request.addPostParam("Type", serialize(Credential.PushService.GCM)); twilioRestClient.request(request); times = 1; result = new Response("", 500); twilioRestClient.getAccountSid(); result = "AC123"; }}; try { Credential.creator(Credential.PushService.GCM).create(); fail("Expected TwilioException to be thrown for 500"); } catch (TwilioException e) {} } @Test public void testCreateResponse() { new NonStrictExpectations() {{ twilioRestClient.request((Request) any); result = new Response("{\"sid\": \"CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"account_sid\": \"ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"friendly_name\": \"Test slow create\",\"type\": \"apn\",\"sandbox\": \"False\",\"date_created\": \"2015-10-07T17:50:01Z\",\"date_updated\": \"2015-10-07T17:50:01Z\",\"url\": \"https://chat.twilio.com/v2/Credentials/CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\"}", TwilioRestClient.HTTP_STATUS_CODE_CREATED); twilioRestClient.getObjectMapper(); result = new ObjectMapper(); }}; Credential.creator(Credential.PushService.GCM).create(); } @Test public void testFetchRequest() { new NonStrictExpectations() {{ Request request = new Request(HttpMethod.GET, Domains.CHAT.toString(), "/v2/Credentials/CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); twilioRestClient.request(request); times = 1; result = new Response("", 500); twilioRestClient.getAccountSid(); result = "AC123"; }}; try { Credential.fetcher("CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa").fetch(); fail("Expected TwilioException to be thrown for 500"); } catch (TwilioException e) {} } @Test public void testFetchResponse() { new NonStrictExpectations() {{ twilioRestClient.request((Request) any); result = new Response("{\"sid\": \"CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"account_sid\": \"ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"friendly_name\": \"Test slow create\",\"type\": \"apn\",\"sandbox\": \"False\",\"date_created\": \"2015-10-07T17:50:01Z\",\"date_updated\": \"2015-10-07T17:50:01Z\",\"url\": \"https://chat.twilio.com/v2/Credentials/CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\"}", TwilioRestClient.HTTP_STATUS_CODE_OK); twilioRestClient.getObjectMapper(); result = new ObjectMapper(); }}; assertNotNull(Credential.fetcher("CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa").fetch()); } @Test public void testUpdateRequest() { new NonStrictExpectations() {{ Request request = new Request(HttpMethod.POST, Domains.CHAT.toString(), "/v2/Credentials/CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); twilioRestClient.request(request); times = 1; result = new Response("", 500); twilioRestClient.getAccountSid(); result = "AC123"; }}; try { Credential.updater("CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa").update(); fail("Expected TwilioException to be thrown for 500"); } catch (TwilioException e) {} } @Test public void testUpdateResponse() { new NonStrictExpectations() {{ twilioRestClient.request((Request) any); result = new Response("{\"sid\": \"CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"account_sid\": \"ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"friendly_name\": \"Test slow create\",\"type\": \"apn\",\"sandbox\": \"False\",\"date_created\": \"2015-10-07T17:50:01Z\",\"date_updated\": \"2015-10-07T17:50:01Z\",\"url\": \"https://chat.twilio.com/v2/Credentials/CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\"}", TwilioRestClient.HTTP_STATUS_CODE_OK); twilioRestClient.getObjectMapper(); result = new ObjectMapper(); }}; Credential.updater("CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa").update(); } @Test public void testDeleteRequest() { new NonStrictExpectations() {{ Request request = new Request(HttpMethod.DELETE, Domains.CHAT.toString(), "/v2/Credentials/CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); twilioRestClient.request(request); times = 1; result = new Response("", 500); twilioRestClient.getAccountSid(); result = "AC123"; }}; try { Credential.deleter("CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa").delete(); fail("Expected TwilioException to be thrown for 500"); } catch (TwilioException e) {} } @Test public void testDeleteResponse() { new NonStrictExpectations() {{ twilioRestClient.request((Request) any); result = new Response("null", TwilioRestClient.HTTP_STATUS_CODE_NO_CONTENT); twilioRestClient.getObjectMapper(); result = new ObjectMapper(); }}; Credential.deleter("CRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa").delete(); } }