public FakeEmailSpoolerDependenciesBuilder() { var emailSpoolerConfig = Substitute.For <IEmailSpoolerConfig>(); emailSpoolerConfig.MaxSendAttempts.ReturnsForAnyArgs(ci => 5); emailSpoolerConfig.BackoffMultiplier.ReturnsForAnyArgs(ci => 2); WithEmailSpoolerConfig(emailSpoolerConfig) .WithSimpleLogger(_simpleLogger) .WithDbContext(SubstituteEmailContextBuilder.BuildDefault()) .WithEmailConfig(Substitute.For <IEmailConfiguration>()) .WithSimpleLogger(Substitute.For <ISimpleLogger>()) .WithEmailGenerator(() => Substitute.For <IEmail>()); }
public void Spool_WhenNoEmailsInContext_DoesNothing() { // test setup var generatedMails = 0; var ctx = SubstituteEmailContextBuilder.BuildDefault(); var spooler = Create(ctx); // pre-conditions Assert.AreEqual(0, ctx.Emails.Count()); // execute test spooler.Spool(); // test result ctx.DidNotReceive().SaveChanges(); Assert.AreEqual(0, generatedMails); }