public async Task SendEmail_BccAdded() { Fixture.SmtpServer !.ClearReceivedEmail(); var model = new RenderTestEmailViewModel { SomeField = "Some field." }; await SendAsync(new SendEmail.Command("*****@*****.**", "The Recipient", "*****@*****.**", new CultureInfo("de-AT"), null, model)); Fixture.SmtpServer.ReceivedEmailCount.Should().Be(1); var email = Fixture.SmtpServer.ReceivedEmail.Single(); email.ToAddresses .Should().HaveCount(2) .And.Contain(a => a.Address == "*****@*****.**") .And.Contain(a => a.Address == "*****@*****.**"); email.FromAddress.Address.Should().Be("*****@*****.**"); email.Headers.AllKeys.Should().Contain("Subject"); email.Headers["Subject"].Should().Be("The subject"); email.MessageParts.Should().HaveCount(1); email.MessageParts[0].BodyData.Should().Be( "<html><head><title>Render Test</title></head>" + Environment.NewLine + "<body style=\"color: red\"><p>Some field.</p>" + Environment.NewLine + "</body></html>"); }
public async Task SendEmail_InvalidEmailAddress_ThrowsException() { Fixture.SmtpServer !.ClearReceivedEmail(); var model = new RenderTestEmailViewModel { SomeField = "Some field." }; Func <Task> act = async() => await SendAsync(new SendEmail.Command("*****@*****.**", "The Recipient", "invalidEmailAddress", new CultureInfo("de-AT"), null, model)); await act.Should().ThrowAsync <Exception>(); }