public static IEnumerable<object[]> GetValidEmailTestData()
{
yield return new object[] { "(comment)this.test.this(comment)<(comment)this.test.this(comment)@(comment)this.test.this(comment)>" };
yield return new object[] { "(comment)\" asciin;,oqu o.tesws \"(comment)<(comment)this.test.this(comment)@(comment)this.test.this(comment)>" };
yield return new object[] { "(comment)this.test.this(comment)<(comment)this.test.this(comment)@(comment)[ test this ](comment)>" };
yield return new object[] { "(comment)\" asciin;,oqu o.tesws \"(comment)<(comment)this.test.this(comment)@(comment)[ test this ](comment)>" };
yield return new object[] { "(comment)this.test.this(comment)<(comment)\" asciin;,oqu o.tesws \"(comment)@(comment)[ test this ](comment)>" };
yield return new object[] { "(comment)this(comment)<(comment)\" asciin);,oqu o.tesws \"(comment)@(comment)[ test this ](comment)>" };
yield return new object[] { "(comment)\" asciin;,oqu o.tesws \"(comment)<(comment)\" asciin;,oqu o.tesws \"(comment)@(comment)[ test this ](comment)>" };
yield return new object[] { "(comment)this.test.this(comment)<(comment)\" asciin;,oqu o.tesws \"(comment)@(comment)this.test.this(comment)>" };
yield return new object[] { "(comment)this(comment)<(comment)\" asciin;,oqu o.tesws \"(comment)@(comment)this.test.this(comment)>" };
yield return new object[] { "(comment)\" asciin;,oqu o.tesws \"(comment)<(comment)\" asciin;,oqu o.tesws \"(comment)@(comment)this.test.this(comment)>" };
yield return new object[] { "(comment)this.test.this(comment)@(comment)this.test.this(comment)" };
yield return new object[] { "(comment)this.test.this(comment)@(comment)[ test this ](comment)" };
yield return new object[] { "(comment)\" asciin;,oqu o.tesws \"(comment)@(comment)[ test this ](comment)" };
yield return new object[] { "(comment)\" asciin;,oqu o.tesws \"(comment)@(comment)this.test.this(comment)" };
yield return new object[] { "(comment)displayname(comment) <[email protected]>" };
yield return new object[] { "a.b <[email protected]>" };
yield return new object[] { "\"Spaced Out\"@NCLMailTest.com" };
yield return new object[] { "[email protected]" };
yield return new object[] { "[email protected]" };
yield return new object[] { "[email protected]" };
yield return new object[] { "Test User <[email protected]>" };
yield return new object[] { "\"Test User\" <[email protected]>" };
yield return new object[] { "testuser@[mail.com]" };
yield return new object[] { "testuser@[ mail.com] " };
yield return new object[] { "testuser@[mail.com ]" };
yield return new object[] { "testuser@[mail.com \r\n ]" };
yield return new object[] { "testuser@[ \r\n mail.com]" };
yield return new object[] { "testuser@[ mail.com]" };
yield return new object[] { "testuser <[email protected]>" };
yield return new object[] { "Test\u3044\u3069 User <[email protected]>" };
yield return new object[] { "\"Test\u3044\u3069 User\" <[email protected]>" };
yield return new object[] { "\"Test\u3044\u3069 user\" [email protected]" };
yield return new object[] { "testuser@[mail.com]" };
yield return new object[] { "testuser\u3044\u3069 <[email protected]>" };
yield return new object[] { "\"Dr. M\u00FCller\" <[email protected]>" };
yield return new object[] { "Dr. M\u00FCller <[email protected]>" };
yield return new object[] { "Dr M\u00FCller <[email protected]>" };
yield return new object[] { "Dr Muller <[email protected]>" };
yield return new object[] { " leading spaces <[email protected]>" };
yield return new object[] { "\"(nocomment)displayname(nocomment)\"(comment) <[email protected]>" };
yield return new object[] { "\"Test user\" [email protected]" };
yield return new object[] { "\"test\"@test.com" };
yield return new object[] { "customer/[email protected]" };
yield return new object[] { "[email protected]" };
yield return new object[] { "[email protected]" };
yield return new object[] { "!def!xyz%[email protected]" };
yield return new object[] { "[email protected]" };
yield return new object[] { "\"te\\@st\"@example.com" };
yield return new object[] { "[email protected]" };
yield return new object[] { "[email protected]" };
yield return new object[] { "\"test display\" test@(comment)[exam\\@ple](comment)" };
yield return new object[] { "NoSpaceBeforeEmail\"a\"@example.com" };
yield return new object[] { "NoSpace BeforeEmail\"a\"@example.com" };
yield return new object[] { "\"display\"nospace@domain" };
yield return new object[] { "\"display\"\"nospace\"@domain" };
yield return new object[] { "\"escaped\\\"quote\" \"a\"@example.com" };
yield return new object[] { "\"escaped\\\"silly\\\"quotes\" \"a\"@example.com" };
yield return new object[] { "SquareBracketInUserName \"test[some\"@NCLMailTest.com" };
yield return new object[] { "SquareBracket[InDispaly \"testsome\"@NCLMailTest.com" };
yield return new object[] { "\"\\\"QuoteEndedDispaly\" [email protected]" };
yield return new object[] { "\"Quote\\\"MidDispaly\" [email protected]" };
yield return new object[] { "Quote\\\"MidDispaly [email protected]" };
yield return new object[] { "<[email protected]> " };
yield return new object[] { "[email protected] " };
yield return new object[] { "<[email protected]> (comment) " };
yield return new object[] { "[email protected] (comment) " };
yield return new object[] { "display (ignoredComment) [email protected]" };
yield return new object[] { "display (displayComment) <[email protected]>" };
yield return new object[] { "\"display\" (ignoredComment) <[email protected]>" };
yield return new object[] { " \", comma in quotes\" username@domain" };
yield return new object[] { "user.\"name\"@domain" };
yield return new object[] { "((NestedComment)) <\"testsome\"@NCLMailTest.com>" };
yield return new object[] { "<[email protected]> (double) (comments)" };
yield return new object[] { "(Escaped Unicode \\\u3044 Comment) <\"testsome\"@NCLMailTest.com>" };
yield return new object[] { "(com\\)ment) <\"testsome\"@NCLMailTest.com>" };
yield return new object[] { "(com \f ment) <\"testsome\"@NCLMailTest.com>" };
yield return new object[] { "\"disp \f lay\" <\"testsome\"@NCLMailTest.com>" };
yield return new object[] { "\"EscapedUnicode \\\u3044\\\u3069 display\" <[email protected]>" };
yield return new object[] { "(Unicode \u3044 Comment) <\"testsome\"@NCLMailTest.com>" };
yield return new object[] { "\"display \r\n name\" <\"folding\"@domain.com>" };
yield return new object[] { "\"test\r\n test\"@mail.com" };
// Email Address Internationalization (EAI)
yield return new object[] { "UnicodeUserName \"Test\u3044\u3069\"@NCLMailTest.com" };
yield return new object[] { "<\"EscapedUnicode \\\u3044\\\u3069 User\"@NCLMailTest.com>" };
yield return new object[] { "\"UnicodeUserName\" <\u3044.\[email protected]>" };
yield return new object[] { "\"UnicodeDomainName\" <user@\u3044.\u3069>" };
yield return new object[] { "\u3044 \u3069 \u3044.\u3069@\u3044.\u3069" };
}