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("*****@*****.**"); }
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 }); } }