@Test public void parseJson() { JCardValue value = JCardValue.structured( "P.O. Box 1234;", "Apt, 11", "123 Main St", "Austin", "TX", "12345", "USA"); sensei.assertParseJson(value).run(is(withAllFields)); value = JCardValue.structured("P.O. Box 1234;", "", "", "Austin", "TX", "12345", ""); sensei.assertParseJson(value).run(is(withSomeFields)); value = JCardValue.structured("", null, "", "", "", "", ""); sensei.assertParseJson(value).run(is(empty)); value = JCardValue.structured(); sensei.assertParseJson(value).run(is(empty)); value = JCardValue.structured("P.O. Box 1234;", "Apt, 11", "123 Main St", "Austin"); sensei .assertParseJson(value) .run( new Check<Address>() { public void check(Address property) { assertEquals("P.O. Box 1234;", property.getPoBox()); assertEquals("Apt, 11", property.getExtendedAddress()); assertEquals("123 Main St", property.getStreetAddress()); assertEquals("Austin", property.getLocality()); assertNull(property.getRegion()); assertNull(property.getPostalCode()); assertNull(property.getCountry()); } }); }
@Test public void parseJson_list() { JCardValue value = JCardValue.multi("value1", "val,;ue2"); sensei .assertParseJson(value) .dataType(VCardDataType.TEXT) .warnings(1) .run( new Check<TestProperty>() { public void check(TestProperty property) { assertEquals("value1,val\\,\\;ue2", property.value); } }); }
@Test public void parseJson_structured() { JCardValue value = JCardValue.structured(null, "value1", "val,;ue2", Arrays.asList("value3", "value4")); sensei .assertParseJson(value) .dataType(VCardDataType.TEXT) .warnings(1) .run( new Check<TestProperty>() { public void check(TestProperty property) { assertEquals(";value1;val\\,\\;ue2;value3,value4", property.value); } }); }
@Test public void parseJson_single() { final VCardParameters params = new VCardParameters(); JCardValue value = JCardValue.single("value"); sensei .assertParseJson(value) .dataType(VCardDataType.TEXT) .params(params) .warnings(1) .run( new Check<TestProperty>() { public void check(TestProperty property) { assertEquals("value", property.value); assertSame(params, property.getParameters()); } }); }