package ilarkesto.email;
import org.testng.annotations.Test;
public class EmailAddressTest {
private static final String DUKE_ADDR = "duke@hell.org";
private static final String DUKE_LABEL = "Duke Nukem";
private static final String DUKE_FULL = DUKE_LABEL + " <" + DUKE_ADDR + ">";
@Test
public void plain() {
assertDukePlain("duke@hell.org");
assertDukePlain("Duke@Hell.org");
assertDukePlain(" duke@hell.org ");
assertDukePlain("<duke@hell.org>");
assertDukePlain("<duke@hell.org> Crap");
assertDukePlain("duke@hell.org Crap");
}
@Test
public void full() {
assertDukeFull("Duke Nukem <duke@hell.org>");
assertDukeFull("Duke Nukem <Duke@Hell.ORG>");
assertDukeFull(" Duke Nukem < duke@hell.org > ");
assertDukeFull("Duke Nukem<duke@hell.org>");
assertDukeFull("\"Duke Nukem\"<duke@hell.org>");
}
private void assertDukePlain(String email) {
EmailAddress emailAddress = new EmailAddress(email);
assert emailAddress.getLabel() == null;
assert DUKE_ADDR.equals(emailAddress.getAddress());
assert DUKE_ADDR.equals(EmailAddress.formatAddress(email, false));
}
private void assertDukeFull(String email) {
// System.out.println(email + "|" + EmailAddress.formatAddress(email, false) + "|");
EmailAddress emailAddress = new EmailAddress(email);
assert DUKE_LABEL.equals(emailAddress.getLabel());
assert DUKE_ADDR.equals(emailAddress.getAddress());
assert DUKE_FULL.equals(EmailAddress.formatAddress(email, false));
}
}