コード例 #1
0
        public static Core.Objects.Email CreateCoreEmail(Email emailModel)
        {
            Check.If(emailModel).IsNotNull();

            var result = new Core.Objects.Email
            {
                Subject = emailModel.Subject,
                PlainTextBody = emailModel.PlainTextBody,
                HtmlBody = emailModel.HtmlBody,
                Attachments = Mapper.Map<List<Attachment>, List<Core.Objects.Attachment>> (emailModel.Attachments)
            };

            result.EmailAddresses.AddRange(emailModel.ToAddresses.ToEmailAddressList(EmailAddressType.To));
            result.EmailAddresses.AddRange(emailModel.FromAddress.ToEmailAddressList(EmailAddressType.From));
            result.EmailAddresses.AddRange(emailModel.Bcc.ToEmailAddressList(EmailAddressType.BlindCarbonCopy));
            result.EmailAddresses.AddRange(emailModel.Cc.ToEmailAddressList(EmailAddressType.CarbonCopy));

            return result;
        }
コード例 #2
0
        public void CreateEmailModel_Email_Returns_EmailModel()
        {
            //Arrange
            var timestamp = DateTime.UtcNow;

            var email = new Core.Objects.Email
            {
                EmailAddresses =
                    new List<EmailAddress>
                    {
                        new EmailAddress
                        {
                            Name = "Kristian Wilson",
                            Email = "*****@*****.**",
                            Type = EmailAddressType.To
                        }
                    },
                Subject = "Test Subject",
                PlainTextBody = "Plain Text",
                HtmlBody = "Html Body",
                Date = timestamp,
                Attachments =
                    new List<Core.Objects.Attachment>
                    {
                        new Core.Objects.Attachment {AttachmentName = "Test", MimeType = "Test"}
                    }
            };

            //Act
            var result = EmailFactory.CreateEmailModel(email);

            //Assert
            result.ToAddresses.Should().Be("Kristian Wilson <*****@*****.**>");
            result.Subject.Should().Be(email.Subject);
            result.PlainTextBody.Should().Be(email.PlainTextBody);
            result.HtmlBody.Should().Be(email.HtmlBody);
            result.EmailDate.Should().Be(timestamp);
            result.Attachments.Should().NotBeEmpty();
            result.Attachments.Count().Should().Be(1);
            result.Attachments.First().AttachmentName.Should().Be("Test");
            result.Attachments.First().MimeType.Should().Be("Test");
        }