package digitalwallet; import com.urbanairship.digitalwallet.client.Template; import digitalwallet.mock.HttpArgumentCaptor; import org.apache.http.client.methods.HttpDelete; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpPost; import org.apache.http.client.methods.HttpPut; import java.io.IOException; public class MockTemplateTest extends BaseMockTest { @org.testng.annotations.Test public void testGetTemplate() throws Exception { HttpArgumentCaptor<HttpGet> captor = getGetCaptor(); long id = randomId(); Template.getTemplate(id); captor.verify(getBaseUrl(id)); } @org.testng.annotations.Test public void testGetTemplateExternal() throws Exception { HttpArgumentCaptor<HttpGet> captor = getGetCaptor(); String externalId = randomExternalId(); Template.getTemplate(externalId); captor.verify(getBaseUrl(externalId)); } @org.testng.annotations.Test public void testCreate() throws IOException { HttpArgumentCaptor<HttpPost> captor = getPostCaptor(); Template.createTemplate(TestHelper.randomName(), TestHelper.randomDescription(), randomType(), randomHeaders(), randomFields()); captor.verify(getBaseUrl()); } @org.testng.annotations.Test public void testCreateExternal() throws IOException { HttpArgumentCaptor<HttpPost> captor = getPostCaptor(); String externalId = randomExternalId(); Template.createTemplate(externalId, TestHelper.randomName(), TestHelper.randomDescription(), randomType(), randomHeaders(), randomFields()); captor.verify(getBaseUrl(externalId)); } @org.testng.annotations.Test public void testCreateInProject() throws IOException { HttpArgumentCaptor<HttpPost> captor = getPostCaptor(); long id = randomId(); Template.createTemplate(id, TestHelper.randomName(), TestHelper.randomDescription(), randomType(), randomHeaders(), randomFields()); captor.verify(getBaseUrl(id)); } @org.testng.annotations.Test public void testHeaders() throws IOException { HttpArgumentCaptor<HttpGet> captor = getGetCaptor(); Template.getMyTemplateHeaders(); captor.verify(getBaseUrl() + "/headers"); } @org.testng.annotations.Test public void testDelete() throws IOException { HttpArgumentCaptor<HttpDelete> captor = getDeleteCaptor(); long id = randomId(); Template.delete(id); captor.verify(getBaseUrl(id)); } @org.testng.annotations.Test public void testDeleteExternal() throws IOException { HttpArgumentCaptor<HttpDelete> captor = getDeleteCaptor(); String externalId = randomExternalId(); Template.deleteX(externalId); captor.verify(getBaseUrl(externalId)); } @org.testng.annotations.Test public void testUpdate() throws IOException { HttpArgumentCaptor<HttpPut> captor = getPutCaptor(); long id = randomId(); Template.updateTemplate(id, TestHelper.randomName(), TestHelper.randomDescription(), randomHeaders(), randomFields()); captor.verify(getBaseUrl(id)); } @org.testng.annotations.Test public void testUpdateExternal() throws IOException { HttpArgumentCaptor<HttpPut> captor = getPutCaptor(); String id = randomExternalId(); Template.updateTemplate(id, TestHelper.randomName(), TestHelper.randomDescription(), randomHeaders(), randomFields()); captor.verify(getBaseUrl(id)); } @Override protected String getBaseUrl() { return "/v1/template"; } }