Search in sources :

Example 6 with Impp

use of ezvcard.property.Impp in project ez-vcard by mangstadt.

the class HCardPageTest method create_then_parse.

@Test
public void create_then_parse() throws Exception {
    // create template
    VCard expected = createFullVCard();
    HCardPage template = new HCardPage();
    template.add(expected);
    String html = template.write();
    // write to file for manual inspection
    FileWriter writer = new FileWriter(new File("target", "vcard.html"));
    writer.write(html);
    writer.close();
    // parse template
    HCardParser reader = new HCardParser(html);
    VCard actual = reader.readNext();
    reader.close();
    assertEquals("Claus", actual.getSortString().getValue());
    assertEquals(expected.getClassification().getValue(), actual.getClassification().getValue());
    assertEquals(expected.getMailer().getValue(), actual.getMailer().getValue());
    assertEquals(expected.getFormattedName().getValue(), actual.getFormattedName().getValue());
    assertEquals(expected.getUid().getValue(), actual.getUid().getValue());
    assertEquals(expected.getNickname().getValues(), actual.getNickname().getValues());
    assertEquals(expected.getOrganization().getValues(), actual.getOrganization().getValues());
    assertEquals(expected.getCategories().getValues(), actual.getCategories().getValues());
    assertEquals(expected.getBirthday().getDate(), actual.getBirthday().getDate());
    assertEquals(expected.getRevision().getValue(), actual.getRevision().getValue());
    assertEquals(expected.getGeo().getLatitude(), actual.getGeo().getLatitude());
    assertEquals(expected.getGeo().getLongitude(), actual.getGeo().getLongitude());
    assertEquals(expected.getTimezone().getOffset(), actual.getTimezone().getOffset());
    // text value is not written
    assertNull(actual.getTimezone().getText());
    {
        StructuredName e = expected.getStructuredName();
        StructuredName a = actual.getStructuredName();
        assertEquals(e.getFamily(), a.getFamily());
        assertEquals(e.getGiven(), a.getGiven());
        assertEquals(e.getAdditionalNames(), a.getAdditionalNames());
        assertEquals(e.getPrefixes(), a.getPrefixes());
        assertEquals(e.getSuffixes(), a.getSuffixes());
        assertTrue(a.getSortAs().isEmpty());
    }
    assertEquals(expected.getTitles().size(), actual.getTitles().size());
    for (int i = 0; i < expected.getTitles().size(); i++) {
        Title e = expected.getTitles().get(i);
        Title a = actual.getTitles().get(i);
        assertEquals(e.getValue(), a.getValue());
    }
    assertEquals(expected.getRoles().size(), actual.getRoles().size());
    for (int i = 0; i < expected.getRoles().size(); i++) {
        Role e = expected.getRoles().get(i);
        Role a = actual.getRoles().get(i);
        assertEquals(e.getValue(), a.getValue());
    }
    assertEquals(expected.getNotes().size(), actual.getNotes().size());
    for (int i = 0; i < expected.getNotes().size(); i++) {
        Note e = expected.getNotes().get(i);
        Note a = actual.getNotes().get(i);
        assertEquals(e.getValue(), a.getValue());
    }
    assertEquals(expected.getUrls().size(), actual.getUrls().size());
    for (int i = 0; i < expected.getUrls().size(); i++) {
        Url e = expected.getUrls().get(i);
        Url a = actual.getUrls().get(i);
        assertEquals(e.getValue(), a.getValue());
    }
    assertEquals(expected.getImpps().size(), actual.getImpps().size());
    for (int i = 0; i < expected.getImpps().size(); i++) {
        Impp e = expected.getImpps().get(i);
        Impp a = actual.getImpps().get(i);
        assertEquals(e.getUri(), a.getUri());
    }
    assertEquals(expected.getEmails().size(), actual.getEmails().size());
    for (int i = 0; i < expected.getEmails().size(); i++) {
        Email e = expected.getEmails().get(i);
        Email a = actual.getEmails().get(i);
        assertEquals(e.getValue(), a.getValue());
        assertEquals(e.getTypes(), a.getTypes());
    }
    assertEquals(expected.getTelephoneNumbers().size(), actual.getTelephoneNumbers().size());
    for (int i = 0; i < expected.getTelephoneNumbers().size(); i++) {
        Telephone e = expected.getTelephoneNumbers().get(i);
        Telephone a = actual.getTelephoneNumbers().get(i);
        if (e.getText() != null) {
            assertEquals(e.getText(), a.getText());
        } else {
            TelUri uri = e.getUri();
            if (uri.getExtension() == null) {
                assertEquals(e.getUri().getNumber(), a.getText());
            } else {
                assertEquals(e.getUri().getNumber() + " x" + uri.getExtension(), a.getText());
            }
        }
        assertEquals(e.getTypes(), a.getTypes());
    }
    assertEquals(expected.getAddresses().size(), actual.getAddresses().size());
    for (int i = 0; i < expected.getAddresses().size(); i++) {
        Address e = expected.getAddresses().get(i);
        Address a = actual.getAddresses().get(i);
        assertEquals(e.getPoBox(), a.getPoBox());
        assertEquals(e.getExtendedAddress(), a.getExtendedAddress());
        assertEquals(e.getStreetAddress(), a.getStreetAddress());
        assertEquals(e.getLocality(), a.getLocality());
        assertEquals(e.getRegion(), a.getRegion());
        assertEquals(e.getPostalCode(), a.getPostalCode());
        assertEquals(e.getCountry(), a.getCountry());
        assertEquals(e.getLabel(), a.getLabel());
        assertEquals(e.getTypes(), a.getTypes());
    }
    assertEquals(expected.getPhotos().size(), actual.getPhotos().size());
    for (int i = 0; i < expected.getPhotos().size(); i++) {
        Photo e = expected.getPhotos().get(i);
        Photo a = actual.getPhotos().get(i);
        assertEquals(e.getContentType(), a.getContentType());
        assertArrayEquals(e.getData(), a.getData());
    }
    assertEquals(expected.getSounds().size(), actual.getSounds().size());
    for (int i = 0; i < expected.getSounds().size(); i++) {
        Sound e = expected.getSounds().get(i);
        Sound a = actual.getSounds().get(i);
        assertEquals(e.getContentType(), a.getContentType());
        assertArrayEquals(e.getData(), a.getData());
    }
    assertEquals("ez-vcard " + Ezvcard.VERSION, actual.getProductId().getValue());
}
Also used : Email(ezvcard.property.Email) Telephone(ezvcard.property.Telephone) Address(ezvcard.property.Address) Impp(ezvcard.property.Impp) FileWriter(java.io.FileWriter) Title(ezvcard.property.Title) TelUri(ezvcard.util.TelUri) Photo(ezvcard.property.Photo) Sound(ezvcard.property.Sound) SortString(ezvcard.property.SortString) Url(ezvcard.property.Url) Role(ezvcard.property.Role) Note(ezvcard.property.Note) VCard(ezvcard.VCard) File(java.io.File) StructuredName(ezvcard.property.StructuredName) Test(org.junit.Test)

Example 7 with Impp

use of ezvcard.property.Impp in project ez-vcard by mangstadt.

the class ImppScribeTest method prepareParameters.

@Test
public void prepareParameters() {
    Impp withPref = new Impp(uri);
    withPref.setPref(1);
    VCard vcard = new VCard();
    vcard.addImpp(withPref);
    sensei.assertPrepareParams(withPref).vcard(vcard).versions(VCardVersion.V2_1, VCardVersion.V3_0).expected("TYPE", "pref").run();
    sensei.assertPrepareParams(withPref).vcard(vcard).versions(VCardVersion.V4_0).expected("PREF", "1").run();
}
Also used : Impp(ezvcard.property.Impp) VCard(ezvcard.VCard) Test(org.junit.Test)

Aggregations

Impp (ezvcard.property.Impp)7 Test (org.junit.Test)4 VCard (ezvcard.VCard)3 RawProperty (ezvcard.property.RawProperty)3 HashMap (java.util.HashMap)2 Map (java.util.Map)2 CannotParseException (ezvcard.io.CannotParseException)1 EmbeddedVCardException (ezvcard.io.EmbeddedVCardException)1 SkipMeException (ezvcard.io.SkipMeException)1 RawPropertyScribe (ezvcard.io.scribe.RawPropertyScribe)1 VCardPropertyScribe (ezvcard.io.scribe.VCardPropertyScribe)1 Address (ezvcard.property.Address)1 Categories (ezvcard.property.Categories)1 Email (ezvcard.property.Email)1 Label (ezvcard.property.Label)1 Nickname (ezvcard.property.Nickname)1 Note (ezvcard.property.Note)1 Photo (ezvcard.property.Photo)1 Role (ezvcard.property.Role)1 SortString (ezvcard.property.SortString)1