public void ShouldContainCandidateFirstNameSubstitution(int noOfDrafts) { var expiringDrafts = new ExpiringApprenticeshipApplicationDraftsBuilder().WithSpecialCharacterExpiringDrafts(noOfDrafts).Build(); var emailRequest = new DailyDigestEmailRequestBuilder().WithExpiringDrafts(expiringDrafts).Build(); List <SendGridMessageSubstitution> sendGridMessageSubstitutions; var sendGridMessage = GetSendGridMessage(out sendGridMessageSubstitutions); var emailMessageFormatter = new EmailDailyDigestMessageFormatter(); emailMessageFormatter.PopulateMessage(emailRequest, sendGridMessage.Object); sendGridMessageSubstitutions.Any(s => s.ReplacementTag == CandidateFirstNameTag).Should().BeTrue(); }
public void GivenMultipleExpiringDraftsSpecialCharacters(int noOfDrafts) { var expiringDrafts = new ExpiringApprenticeshipApplicationDraftsBuilder().WithSpecialCharacterExpiringDrafts(noOfDrafts).Build(); var emailRequest = new DailyDigestEmailRequestBuilder().WithExpiringDrafts(expiringDrafts).Build(); List <SendGridMessageSubstitution> sendGridMessageSubstitutions; var sendGridMessage = GetSendGridMessage(out sendGridMessageSubstitutions); var emailMessageFormatter = new EmailDailyDigestMessageFormatter(); emailMessageFormatter.PopulateMessage(emailRequest, sendGridMessage.Object); var countSubstitution = sendGridMessageSubstitutions.Single(s => s.ReplacementTag == ExpiryVacanciesCountTag); countSubstitution.SubstitutionValues.Count.Should().Be(1); countSubstitution.SubstitutionValues.Single().Should().Be(EmailDailyDigestMessageFormatter.MoreThanOneSaveApplicationAboutToExpire); sendGridMessageSubstitutions.Count(s => s.ReplacementTag == ExpiryVacanciesInfoTag).Should().Be(1); var infoSubstitution = sendGridMessageSubstitutions.Single(s => s.ReplacementTag == ExpiryVacanciesInfoTag); infoSubstitution.SubstitutionValues.Single().Should().Be(GetExpectedInfoSubstitution(expiringDrafts)); }