public void GivenMultipleExpiringDrafts_ThenOrderedByClosingDate() { var expiringDrafts = new ExpiringApprenticeshipApplicationDraftsBuilder().WithExpiringDrafts(3).Build(); expiringDrafts[0].ClosingDate = new DateTime(2015, 02, 01); expiringDrafts[1].ClosingDate = new DateTime(2015, 01, 01); expiringDrafts[2].ClosingDate = new DateTime(2015, 04, 01); var smsRequest = new DailyDigestSmsRequestBuilder().WithExpiringDrafts(expiringDrafts).Build(); var draftsJson = smsRequest.Tokens.First(t => t.Key == CommunicationTokens.ExpiringDrafts).Value; var drafts = JsonConvert.DeserializeObject <List <ExpiringApprenticeshipApplicationDraft> >(draftsJson); Assert.That(drafts, Is.Ordered.By("ClosingDate")); }
public void GivenMultipleApplicationStatusAlerts_ThenOrderedByDateUpdated() { var alerts = new ApplicationStatusAlertsBuilder().WithApplicationStatusAlerts(1, ApplicationStatuses.Successful).Build() .Concat(new ApplicationStatusAlertsBuilder().WithApplicationStatusAlerts(2, ApplicationStatuses.Unsuccessful).Build()).ToList(); alerts[0].DateUpdated = new DateTime(2015, 02, 01); alerts[1].DateUpdated = new DateTime(2015, 01, 01); alerts[2].DateUpdated = new DateTime(2015, 04, 01); var smsRequest = new DailyDigestSmsRequestBuilder().WithApplicationStatusAlerts(alerts).Build(); var alertsJson = smsRequest.Tokens.First(t => t.Key == CommunicationTokens.ApplicationStatusAlerts).Value; var applicationStatusAlerts = JsonConvert.DeserializeObject <List <ExpiringApprenticeshipApplicationDraft> >(alertsJson); Assert.That(applicationStatusAlerts, Is.Ordered.By("DateUpdated")); }
public void GivenMultipleExpiringDraftsSpecialCharacters(int noOfDrafts) { var expiringDrafts = new ExpiringApprenticeshipApplicationDraftsBuilder().WithSpecialCharacterExpiringDrafts(noOfDrafts).Build(); var smsRequest = new DailyDigestSmsRequestBuilder().WithExpiringDrafts(expiringDrafts).Build(); var formatter = new SmsDailyDigestMessageFormatterBuilder().WithMessageTemplate(MessageTemplate).Build(); var message = formatter.GetMessage(smsRequest.Tokens); int draftCount; int draftLineCount; int alertCount; int alertLineCount; var expectedMessage = GetExpectedMessage(expiringDrafts, null, out draftCount, out draftLineCount, out alertCount, out alertLineCount); message.Should().Be(expectedMessage); draftCount.Should().Be(noOfDrafts); draftLineCount.Should().BeLessOrEqualTo(MaxDraftCount); }
public void GivenSingleExpiringDraft() { var expiringDrafts = new ExpiringApprenticeshipApplicationDraftsBuilder().WithExpiringDrafts(1).Build(); var smsRequest = new DailyDigestSmsRequestBuilder().WithExpiringDrafts(expiringDrafts).Build(); var formatter = new SmsDailyDigestMessageFormatterBuilder().WithMessageTemplate(MessageTemplate).Build(); var message = formatter.GetMessage(smsRequest.Tokens); int draftCount; int draftLineCount; int alertCount; int alertLineCount; var expectedMessage = GetExpectedMessage(expiringDrafts, null, out draftCount, out draftLineCount, out alertCount, out alertLineCount); message.Should().Be(expectedMessage); draftCount.Should().Be(1); draftLineCount.Should().Be(1); }
public void GivenSingleApplicationStatusAlert(ApplicationStatuses applicationStatus) { var alerts = new ApplicationStatusAlertsBuilder().WithApplicationStatusAlerts(1, applicationStatus).Build(); var smsRequest = new DailyDigestSmsRequestBuilder().WithApplicationStatusAlerts(alerts).Build(); var formatter = new SmsDailyDigestMessageFormatterBuilder().WithMessageTemplate(MessageTemplate).Build(); var message = formatter.GetMessage(smsRequest.Tokens); int draftCount; int draftLineCount; int alertCount; int alertLineCount; var expectedMessage = GetExpectedMessage(null, alerts, out draftCount, out draftLineCount, out alertCount, out alertLineCount); message.Should().Be(expectedMessage); draftCount.Should().Be(0); draftLineCount.Should().Be(0); alertCount.Should().Be(1); alertLineCount.Should().Be(1); }
public void GivenMultipleExpiringApplicationStatusAlerts() { var alerts = new ApplicationStatusAlertsBuilder().WithApplicationStatusAlerts(2, ApplicationStatuses.Successful).Build() .Concat(new ApplicationStatusAlertsBuilder().WithApplicationStatusAlerts(3, ApplicationStatuses.Unsuccessful).Build()).ToList(); var smsRequest = new DailyDigestSmsRequestBuilder().WithApplicationStatusAlerts(alerts).Build(); var formatter = new SmsDailyDigestMessageFormatterBuilder().WithMessageTemplate(MessageTemplate).Build(); var message = formatter.GetMessage(smsRequest.Tokens); int draftCount; int draftLineCount; int alertCount; int alertLineCount; var expectedMessage = GetExpectedMessage(null, alerts, out draftCount, out draftLineCount, out alertCount, out alertLineCount); message.Should().Be(expectedMessage); draftCount.Should().Be(0); draftLineCount.Should().BeLessOrEqualTo(MaxDraftCount); alertCount.Should().Be(5); alertLineCount.Should().Be(3); }