package com.malcom.library.android.module.campaign; import com.malcom.library.android.module.core.MCMCoreAdapter; import junit.framework.Assert; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import org.junit.Before; import org.junit.Test; import org.junit.experimental.categories.Category; /** * Test class for MCMCampaignDTO. */ class MCMCampaignModelTest {// extends TestCase { private String campaignsURL = "http://api.mymalcom.com/v2/campaigns/application/cef7c5ed-7bda-462a-a554-e8c32c607b27/udid/xvQ995mMZDd8cvRFNnTrpA%3D%3D"; @Test public void testCampaignModelHydrate() { String responseJSON = "{\"campaigns\":[{\"createdOn\":1370445584000,\"id\":33,\"enabled\":true,\"customParamsFeature\":{\"properties\":{\"codigo\":\"12345\",\"provincia\":\"28\"}},\"descriptionFeature\":{\"promotionDescription\":\"Prueba de promoción\"},\"promotionFeature\":{\"promotionType\":\"APPLICATION\",\"promotionIdentifier\":\"296739784\"},\"start\":1370390400000,\"name\":\"Prueba de promoción\",\"state\":\"ACTIVE\",\"type\":\"IN_APP_PROMOTION\",\"mediaFeature\":{\"position\":\"TOP\",\"media\":\"https:\\/\\/s3.amazonaws.com\\/assets.tebas.mymalcom.com\\/inappcampaign\\/f504632e-bce5-4fab-9e05-daf0a95417a5\\/image\"},\"end\":1375228800000,\"serverOrderFeature\":{\"weight\":5}}]}"; try { JSONObject objectJSON = new JSONObject(responseJSON); JSONArray campaignArray = (JSONArray) objectJSON.get(MCMCampaignDefines.ATTR_CAMPAIGNS_ARRAY); MCMCampaignDTO campaignDTO = new MCMCampaignDTO(campaignArray.getJSONObject(0)); Assert.assertEquals(campaignDTO.getCampaignId(), "33"); Assert.assertEquals(campaignDTO.getName(), "Prueba de promoción"); Assert.assertEquals(campaignDTO.getCampaignDescription(), "Prueba de promoción"); Assert.assertEquals(campaignDTO.getStart(), "1370390400000"); Assert.assertEquals(campaignDTO.getEnd(), "1375228800000"); Assert.assertEquals(campaignDTO.getCreatedOn(), "1370445584000"); Assert.assertEquals(campaignDTO.getCampaignDescription(), "Prueba de promoción"); Assert.assertEquals(campaignDTO.getType(), MCMCampaignDTO.CampaignType.IN_APP_PROMOTION); Assert.assertEquals(campaignDTO.getMedia(), "1375228800000"); Assert.assertEquals(campaignDTO.getCampaignPosition(), MCMCampaignDTO.CampaignPosition.TOP); Assert.assertEquals(campaignDTO.getPromotionType(), "APPLICATION"); Assert.assertEquals(campaignDTO.getPromotionIdentifier(), "296739784"); Assert.assertEquals(campaignDTO.getWeight(), "5"); Assert.assertEquals(campaignDTO.getCustomParam("provincia"), "28"); Assert.assertEquals(campaignDTO.getCustomParam("codigo"), "12345"); } catch (JSONException e) { e.printStackTrace(); } } }