123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- package com.vaadin.data.validator;
-
- import org.junit.Test;
-
- public class EmailValidatorTest extends ValidatorTestBase {
-
- @Test
- public void testNullStringFails() {
- assertPasses(null, shouldNotFail());
- }
-
- @Test
- public void testEmptyStringFails() {
- assertFails("", validator("empty string not allowed"));
- }
-
- @Test
- public void testStringWithoutAtSignFails() {
- assertFails("johannesd.vaadin", validator("@ is required"));
- }
-
- @Test
- public void testMissingLocalPartFails() {
- RegexpValidator v = validator("local part is required");
- assertFails("@localhost", v);
- assertFails(" @localhost", v);
- }
-
- @Test
- public void testNonAsciiEmailFails() {
- RegexpValidator v = validator("accented letters not allowed");
- assertFails("jöhännes@vaadin.com", v);
- assertFails("johannes@váádìn.com", v);
- assertFails("johannes@vaadin.cõm", v);
- }
-
- @Test
- public void testLocalPartWithPunctuationPasses() {
- RegexpValidator v = shouldNotFail();
- assertPasses("johannesd+test@vaadin.com", v);
- assertPasses("johannes.dahlstrom@vaadin.com", v);
- assertPasses("johannes_d@vaadin.com", v);
- }
-
- @Test
- public void testEmailWithoutDomainPartFails() {
- assertFails("johannesd@", validator("domain part is required"));
- }
-
- @Test
- public void testComplexDomainPasses() {
- assertPasses("johannesd@foo.bar.baz.vaadin.com", shouldNotFail());
- }
-
- @Test
- public void testDomainWithPunctuationPasses() {
- assertPasses("johannesd@vaadin-dev.com", shouldNotFail());
- }
-
- @Test
- public void testMissingTldFails() {
- assertFails("johannesd@localhost", validator("tld is required"));
- }
-
- @Test
- public void testOneLetterTldFails() {
- assertFails("johannesd@vaadin.f",
- validator("one-letter tld not allowed"));
- }
-
- @Test
- public void testEmailValidatorWithBadInput() {
- assertFails("a@a.m5qRt8zLxQG4mMeu9yKZm5qRt8zLxQG4mMeu9yKZm5qRt8zLxQG4mMeu9yKZ&",validator("validator not halting on bad input"));
- }
-
- @Test
- public void testLongTldPasses() {
- assertPasses("joonas@vaadin.management", shouldNotFail());
- }
-
- @Test
- public void testIdnTldPasses() {
- assertPasses("leif@vaadin.XN--VERMGENSBERATER-CTB", shouldNotFail());
- }
-
- @Test
- public void testYelledEmailPasses() {
- assertPasses("JOHANNESD@VAADIN.COM", shouldNotFail());
- }
-
- @Test
- public void testEmailWithDigitsPasses() {
- assertPasses("johannes84@v44d1n.com", shouldNotFail());
- }
-
- private EmailValidator validator(String errorMessage) {
- return new EmailValidator(errorMessage);
- }
-
- private EmailValidator shouldNotFail() {
- return validator("this should not fail");
- }
- }
|