public async Task HandleAsync_SendsEmailWithSchemeName() { // Arrange var competentAuthority = A.Fake<UKCompetentAuthority>(); Scheme scheme = A.Fake<Scheme>(); A.CallTo(() => scheme.CompetentAuthority) .Returns(competentAuthority); A.CallTo(() => scheme.SchemeName) .Returns("Test Scheme Name"); MemberUpload memberUpload = A.Fake<MemberUpload>(); A.CallTo(() => memberUpload.Scheme) .Returns(scheme); A.CallTo(() => memberUpload.ComplianceYear) .Returns(2015); var schemeSubmissionEvent = new SchemeMemberSubmissionEvent(memberUpload); var emailService = A.Fake<IWeeeEmailService>(); var handler = new SchemeMemberSubmissionEventHandler(emailService); // Act await handler.HandleAsync(schemeSubmissionEvent); // Assert A.CallTo(() => emailService.SendSchemeMemberSubmitted(A<string>._, "Test Scheme Name", A<int>._, A<int>._)) .MustHaveHappened(Repeated.Exactly.Once); }
public async Task HandleAsync_SendsEmailWithMemberUploadComplianceYear() { // Arrange var competentAuthority = A.Fake <UKCompetentAuthority>(); Scheme scheme = A.Fake <Scheme>(); A.CallTo(() => scheme.CompetentAuthority) .Returns(competentAuthority); MemberUpload memberUpload = A.Fake <MemberUpload>(); A.CallTo(() => memberUpload.Scheme) .Returns(scheme); A.CallTo(() => memberUpload.ComplianceYear) .Returns(2015); var schemeSubmissionEvent = new SchemeMemberSubmissionEvent(memberUpload); var emailService = A.Fake <IWeeeEmailService>(); var handler = new SchemeMemberSubmissionEventHandler(emailService); // Act await handler.HandleAsync(schemeSubmissionEvent); // Assert A.CallTo(() => emailService.SendSchemeMemberSubmitted(A <string> ._, A <string> ._, 2015, A <int> ._)) .MustHaveHappened(Repeated.Exactly.Once); }
public async Task HandleAsync_SendsEmailToCompetentAuthorityNotificationAddress() { // Arrange string emailAddress = "*****@*****.**"; var competentAuthority = new UKCompetentAuthority(Guid.NewGuid(), "Name", "Abbreviation", A.Dummy<Country>(), emailAddress); Scheme scheme = A.Fake<Scheme>(); A.CallTo(() => scheme.CompetentAuthority) .Returns(competentAuthority); MemberUpload memberUpload = A.Fake<MemberUpload>(); A.CallTo(() => memberUpload.Scheme) .Returns(scheme); A.CallTo(() => memberUpload.ComplianceYear) .Returns(2015); var schemeSubmissionEvent = new SchemeMemberSubmissionEvent(memberUpload); var emailService = A.Fake<IWeeeEmailService>(); var handler = new SchemeMemberSubmissionEventHandler(emailService); // Act await handler.HandleAsync(schemeSubmissionEvent); // Assert A.CallTo(() => emailService.SendSchemeMemberSubmitted(emailAddress, A<string>._, A<int>._, A<int>._)) .MustHaveHappened(Repeated.Exactly.Once); }
public async Task HandleAsync_SendsEmailToCompetentAuthorityNotificationAddress() { // Arrange string emailAddress = "*****@*****.**"; var competentAuthority = new UKCompetentAuthority(Guid.NewGuid(), "Name", "Abbreviation", A.Dummy <Country>(), emailAddress, 0); Scheme scheme = A.Fake <Scheme>(); A.CallTo(() => scheme.CompetentAuthority) .Returns(competentAuthority); MemberUpload memberUpload = A.Fake <MemberUpload>(); A.CallTo(() => memberUpload.Scheme) .Returns(scheme); A.CallTo(() => memberUpload.ComplianceYear) .Returns(2015); var schemeSubmissionEvent = new SchemeMemberSubmissionEvent(memberUpload); var emailService = A.Fake <IWeeeEmailService>(); var handler = new SchemeMemberSubmissionEventHandler(emailService); // Act await handler.HandleAsync(schemeSubmissionEvent); // Assert A.CallTo(() => emailService.SendSchemeMemberSubmitted(emailAddress, A <string> ._, A <int> ._, A <int> ._)) .MustHaveHappened(Repeated.Exactly.Once); }