public void ThrowsOnInvalidOptions() { var unused = new RazorLightTemplatingService(null, new MailTemplateOptions { BaseDirectory = string.Empty }, null); }
public void LogsParsingByClass() { var loggerMock = new Mock <ILogger <RazorLightTemplatingService> >(); var service = new RazorLightTemplatingService(new Mock <IRazorLightEngine>().Object, new MailTemplateOptions(), loggerMock.Object); var unused = service.Parse(new Test()); loggerMock.VerifyLog(LogLevel.Debug, $"Parsing model '{typeof(Test).Name}'."); }
public void LogsViewName() { var loggerMock = new Mock <ILogger <RazorLightTemplatingService> >(); var service = new RazorLightTemplatingService(new Mock <IRazorLightEngine>().Object, new MailTemplateOptions(), loggerMock.Object); var unused = service.Parse(new Test()); loggerMock.VerifyLog(LogLevel.Debug, $"ViewName of '{typeof(Test).Name}' is '{nameof(Test)}.cshtml'."); }
public void LogsParsingByView() { var loggerMock = new Mock <ILogger <RazorLightTemplatingService> >(); var service = new RazorLightTemplatingService(new Mock <IRazorLightEngine>().Object, new MailTemplateOptions(), loggerMock.Object); var unused = service.Parse(new Test()); loggerMock.VerifyLog(LogLevel.Information, $"Parsing view '{nameof(Test)}.cshtml' for model '{typeof(Test).Name}'."); }
public void CanSendMailByModel() { var mailTransportMock = new Mock <IMailTransport>(); var project = new LocationExpandingFileRazorProject(new[] { new DefaultLocationExpander() }, null, ApplicationHelper.GetMailViewPath(), ".cshtml"); var engine = new RazorLightEngineBuilder() .UseProject(project) .UseMemoryCachingProvider() .Build(); var mailService = new TestMailKitSmtpMailService(MailKitSmtpMailServiceTest.GetTestMailServiceOptions(), mailTransportMock.Object); var templateService = new RazorLightTemplatingService(engine, new MailTemplateOptions(), null); var service = new TemplatingMailService(mailService, templateService); var model = new Test(); var body = templateService.Parse(model); service.SendMail(model, GlobalTestSettings.SmtpRecipientMail, GlobalTestSettings.SmtpRecipientName); mailTransportMock.VerifySendMail(GlobalTestSettings.SmtpServer, GlobalTestSettings.SmtpPort, GlobalTestSettings.SmtpSenderName, GlobalTestSettings.SmtpSenderMail, GlobalTestSettings.SmtpRecipientName, GlobalTestSettings.SmtpRecipientMail, GlobalTestSettings.MailSubject, body); }
public void DoesNotThrowOnEmptyLogger() { var unused = new RazorLightTemplatingService(new Mock <IRazorLightEngine>().Object, new MailTemplateOptions(), null); }
public void ThrowOnMissingEngine() { var unused = new RazorLightTemplatingService(null, new MailTemplateOptions(), null); }
public void ThrowsOnMissingOptions() { var unused = new RazorLightTemplatingService(new Mock <IRazorLightEngine>().Object, null, null); }