public void AssignHeaderValuesSetsPropertiesForKnownHeaderValues() { // Arrange var message = new MailMessage(); var headers = new[] { "cc:[email protected]", "bcc:[email protected],[email protected]", "from:[email protected]", "priority:high", "reply-to:[email protected],[email protected]", "sender: [email protected]", "to:[email protected]" }; // Act WebMail.AssignHeaderValues(message, headers); // Assert Assert.Equal("*****@*****.**", message.CC.Single().Address); Assert.Equal("*****@*****.**", message.Bcc.First().Address); Assert.Equal("*****@*****.**", message.Bcc.Last().Address); Assert.Equal("*****@*****.**", message.From.Address); Assert.Equal(MailPriority.High, message.Priority); Assert.Equal("*****@*****.**", message.ReplyToList.First().Address); Assert.Equal("*****@*****.**", message.ReplyToList.Last().Address); Assert.Equal("*****@*****.**", message.Sender.Address); Assert.Equal("*****@*****.**", message.To.Single().Address); // Assert we transparently set header values Assert.Equal(headers.Count(), message.Headers.Count); }
public void AssignHeaderValuesIgnoresMalformedHeaders() { // Arrange var message = new MailMessage(); var headers = new[] { "foo1:bar1", "foo2", "foo3|bar3", "foo4 bar4" }; // Act WebMail.AssignHeaderValues(message, headers); // Assert Assert.Equal(1, message.Headers.Count); Assert.Equal("foo1", message.Headers.AllKeys[0]); Assert.Equal("bar1", message.Headers[0]); }
public void AssignHeaderDoesNotThrowIfKnownHeaderValuesAreEmptyOrMalformed() { // Arrange var message = new MailMessage(); var headers = new[] { "to:", ":reply-to", "priority:false" }; // Act WebMail.AssignHeaderValues(message, headers); // Assert Assert.Equal(0, message.To.Count); // Assert we transparently set header values Assert.Equal(1, message.Headers.Count); Assert.Equal("Priority", message.Headers.Keys[0]); Assert.Equal("false", message.Headers["Priority"]); }
public void AssignHeaderDoesNotThrowIfMailAddressIsInvalid() { // Arrange var message = new MailMessage(); var headers = new[] { "to:not-#-email@@" }; // Act WebMail.AssignHeaderValues(message, headers); // Assert Assert.Equal(0, message.To.Count); // Assert we transparently set header values Assert.Equal(1, message.Headers.Count); Assert.Equal("To", message.Headers.Keys[0]); Assert.Equal("not-#-email@@", message.Headers["To"]); }
public void AssignHeaderDoesNotThrowIfPriorityValueIsInvalid() { // Arrange var message = new MailMessage(); var headers = new[] { "priority:invalid-value" }; // Act WebMail.AssignHeaderValues(message, headers); // Assert Assert.Equal(MailPriority.Normal, message.Priority); // Assert we transparently set header values Assert.Equal(1, message.Headers.Count); Assert.Equal("Priority", message.Headers.Keys[0]); Assert.Equal("invalid-value", message.Headers["Priority"]); }