public void SendSingleEmail_DoesNotThrowException() { var email = new EmailTemplateContract { Recipients = new List <string>() { "*****@*****.**" }, EmailBodyData = new Dictionary <string, string>() { { "name", "test" } }, EmailTemplateCodes = "emailTemplate01", Bcc = new List <string>() { "*****@*****.**" }, Cc = new List <string>() { "*****@*****.**" } }; _emailServiceMock.Setup(x => x.SendEmailAsync(It.IsAny <EmailTemplateContract>())).ReturnsAsync(HttpStatusCode.OK); Assert.DoesNotThrowAsync(() => _emailController.SendSingleEmail(email)); }
public void SendEmailNoAttachment_Failure(EmailTemplateContract input) { _awsEmailServiceMock.Setup(x => x.SendEmailAsync(It.IsAny <IEnumerable <string> >(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <bool>(), null, null)).ReturnsAsync(HttpStatusCode.BadRequest); var httpStatusCode = _emailService.SendEmailAsync(input); Assert.AreEqual(httpStatusCode.Result, HttpStatusCode.BadRequest); }
public void SendEmailMultipleAttachment_Success(EmailTemplateContract input) { _awsEmailServiceMock.Setup(x => x.SendEmailWithAttachmentStreamsAsync(It.IsAny <IEnumerable <string> >(), It.IsAny <string>(), It.IsAny <string>(), true, It.IsAny <IEnumerable <Attachment> >(), null, null)).ReturnsAsync(HttpStatusCode.OK); var httpStatusCode = _emailService.SendEmailAsync(input); Assert.AreEqual(httpStatusCode.Result, HttpStatusCode.OK); }
public async Task <HttpStatusCode> SendEmailAsync(EmailTemplateContract emailTemplateContract) { try { var body = await GenerateEmailBodyTemplate(emailTemplateContract.EmailTemplateCodes, emailTemplateContract.EmailBodyData); var attachments = await GetEmailAttachments(emailTemplateContract.AttachmentFileNames); if (attachments.Any()) { return(await _awsEmailService.SendEmailWithAttachmentStreamsAsync(emailTemplateContract.Recipients, emailTemplateContract.Subject, body, true, attachments, emailTemplateContract.Cc, emailTemplateContract.Bcc)); } return(await _awsEmailService.SendEmailAsync(emailTemplateContract.Recipients, emailTemplateContract.Subject, body, true, emailTemplateContract.Cc, emailTemplateContract.Bcc)); } catch (Exception ex) { _logger.LogError(ex.Message); return(HttpStatusCode.BadRequest); } }
public async Task <IActionResult> SendSingleEmail([FromBody] EmailTemplateContract contract) { return(Ok(await _emailService.SendEmailAsync(contract))); }
public void SendEmail_Failure(EmailTemplateContract input) { var httpStatusCode = _emailService.SendEmailAsync(input); Assert.AreEqual(httpStatusCode.Result, HttpStatusCode.BadRequest); }