Example #1
0
        public void TestEmailChar()
        {
            //default settings, must be reapplied because another test might have changed them
            EmailValidator.SetAsciiSpecialCharsDefault();
            EmailValidator.IsBlankAllowed = false;
            EmailValidator.IsInternationalCharSetAllowed = false;
            Assert.IsFalse(EmailValidator.IsValidEmailChar('\x00'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('\x1F'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('!'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('"'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('#'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('$'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('%'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('&'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('\''));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('('));
            Assert.IsFalse(EmailValidator.IsValidEmailChar(')'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('*'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('+'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar(','));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('-'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('.'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('/'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar(' '));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('0'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('1'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('8'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('9'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar(':'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar(';'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('<'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('='));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('>'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('?'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('@'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('A'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('B'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('Y'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('Z'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('['));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('\\'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar(']'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('^'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('_'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('`'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('a'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('b'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('y'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('z'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('{'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('|'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('}'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('~'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('\x7F'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('试'));

            EmailValidator.SetExtendedAsciiSpecialChars();
            Assert.IsFalse(EmailValidator.IsValidEmailChar('\x00'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('\x1F'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('!'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('"'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('#'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('$'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('%'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('&'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('\''));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('('));
            Assert.IsFalse(EmailValidator.IsValidEmailChar(')'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('*'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('+'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar(','));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('-'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('.'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('/'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar(' '));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('0'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('1'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('8'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('9'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar(':'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar(';'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('<'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('='));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('>'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('?'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('@'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('A'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('B'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('Y'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('Z'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('['));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('\\'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar(']'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('^'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('_'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('`'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('a'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('b'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('y'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('z'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('{'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('|'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('}'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('~'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('\x7F'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('试'));

            EmailValidator.SetExtendedQuotedAsciiSpecialChars();
            EmailValidator.IsBlankAllowed = true;
            Assert.IsFalse(EmailValidator.IsValidEmailChar('\x00'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('\x1F'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('!'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('"'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('#'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('$'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('%'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('&'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('\''));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('('));
            Assert.IsTrue(EmailValidator.IsValidEmailChar(')'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('*'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('+'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar(','));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('-'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('.'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('/'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar(' '));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('0'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('1'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('8'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('9'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar(':'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar(';'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('<'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('='));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('>'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('?'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('@'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('A'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('B'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('Y'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('Z'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('['));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('\\'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar(']'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('^'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('_'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('`'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('a'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('b'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('y'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('z'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('{'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('|'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('}'));
            Assert.IsTrue(EmailValidator.IsValidEmailChar('~'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('\x7F'));
            Assert.IsFalse(EmailValidator.IsValidEmailChar('试'));

            EmailValidator.IsInternationalCharSetAllowed = true;
            Assert.IsTrue(EmailValidator.IsValidEmailChar('试'));
        }