public async Task SendEmail_GivenValidSmtpCredentials_SendsEmail() { try { //arrange var settingsService = _fixture.Resolve <ISiteSettingsService>(); var settings = await settingsService.Get(); var sut = _fixture.Resolve <IEmailService>(); var testAddress = Guid.NewGuid().ToString().Substring(0, 5) + "@mailinator.com"; var order = OrderStubs.Orders(testAddress).FirstOrDefault(); var textBody = EmailTemplates.GetOrderConfirmationTextBody(order, true); var htmlBody = EmailTemplates.GetOrderConfirmationHtmlBody(order); var request = new SmtpRequest(settings, htmlBody, textBody, order.Email, "BlueTapeCrew.com Email Integration Test"); //act await sut.SendEmail(request); //assert Assert.True(true); } catch (Exception ex) { Assert.True(false, ex.Message); } }
private async Task <SmtpRequest> GetSmtpRequest(Order order) { var settings = await _siteSettingsService.Get(); var user = await _users.Find(order.Email); var textBody = EmailTemplates.GetOrderConfirmationTextBody(order, user != null); var htmlBody = EmailTemplates.GetOrderConfirmationHtmlBody(order); return(new SmtpRequest(settings, htmlBody, textBody, order.Email, Orders.EmailSubject)); }