Ejemplo n.º 1
0
        public void ShouldReturnMemoryStreamForEmailWithoutAttachments()
        {
            var emailMessage = new EmailMessage("subject", "body", "*****@*****.**", "*****@*****.**", "*****@*****.**",
                                                new List <IFormFile>());

            var stream = _emailBuilder.BuildMessageToStream(emailMessage);

            stream.Should().NotBeNull();

            var emailAsString = Encoding.UTF8.GetString(stream.ToArray());

            emailAsString.Should().Contain("subject");
            emailAsString.Should().Contain("body");
            emailAsString.Should().Contain("*****@*****.**");
            emailAsString.Should().Contain("*****@*****.**");
        }
Ejemplo n.º 2
0
        private async Task <SendRawEmailResponse> SendEmail(EmailMessage emailMessage)
        {
            var sendRequest = new SendRawEmailRequest {
                RawMessage = new RawMessage(_emailBuilder.BuildMessageToStream(emailMessage))
            };

            try
            {
                SendRawEmailResponse response = new SendRawEmailResponse {
                    HttpStatusCode = HttpStatusCode.OK
                };

                if (_sendAmazonEmails)
                {
                    response = await _amazonSimpleEmailService.SendRawEmailAsync(sendRequest);
                }

                LogResponse(response);

                return(response);
            }
            catch (Exception exception)
            {
                _logger.LogError($"An error occurred trying to send an email to Amazon SES. \n{exception.Message}");
                return(new SendRawEmailResponse {
                    HttpStatusCode = HttpStatusCode.BadRequest
                });
            }
        }