package com.urbanairship.api.push.parse.notification.wns; import com.urbanairship.api.push.model.notification.wns.WNSBinding; import com.urbanairship.api.push.parse.PushObjectMapper; import org.apache.commons.lang.RandomStringUtils; import org.codehaus.jackson.map.ObjectMapper; import org.junit.Test; import static org.junit.Assert.assertEquals; public class BindingDeserializerTest { private static final ObjectMapper mapper = PushObjectMapper.getInstance(); @Test public void testDeserialize() throws Exception { String template = RandomStringUtils.randomAlphabetic(20); String fallback = RandomStringUtils.randomAlphabetic(20); String lang = RandomStringUtils.randomAlphabetic(4); String base_uri = RandomStringUtils.randomAlphabetic(20); String image = RandomStringUtils.randomAlphabetic(20); String text = RandomStringUtils.randomAlphabetic(20); String json = "{" + "\"template\": \"" + template + "\"," + "\"fallback\": \"" + fallback + "\"," + "\"lang\": \"" + lang + "\"," + "\"base_uri\": \"" + base_uri + "\"," + "\"image\": [\"" + image + "\"]," + "\"text\": [\"" + text + "\"]," + "\"version\": 1," + "\"add_image_query\": true" + "}"; WNSBinding expected = WNSBinding.newBuilder() .setTemplate(template) .setFallback(fallback) .setLang(lang) .setBaseUri(base_uri) .addImage(image) .addText(text) .setVersion(1) .setAddImageQuery(true) .build(); WNSBinding parsed = mapper.readValue(json, WNSBinding.class); assertEquals(expected, parsed); } }