public void IsApprenticeshipMeetsExpectation(bool expectation) { var mockItem = new Mock <ILearningDelivery>(); var handler = new Mock <IValidationErrorHandler>(MockBehavior.Strict); var mockDDRule07 = new Mock <IDerivedData_07Rule>(MockBehavior.Strict); mockDDRule07 .Setup(x => x.IsApprenticeship(null)) .Returns(expectation); var sut = new EmpStat_15Rule(handler.Object, mockDDRule07.Object); var result = sut.IsApprenticeship(mockItem.Object); Assert.Equal(expectation, result); handler.VerifyAll(); mockDDRule07.VerifyAll(); }
public void ValidItemDoesNotRaiseValidationMessage() { const string LearnRefNumber = "123456789X"; var testDate = DateTime.Parse("2016-09-24"); var mockDelivery = new Mock <ILearningDelivery>(); mockDelivery .SetupGet(y => y.LearnStartDate) .Returns(testDate); mockDelivery .SetupGet(y => y.ProgTypeNullable) .Returns(TypeOfLearningProgramme.ApprenticeshipStandard); mockDelivery .SetupGet(y => y.AimType) .Returns(TypeOfAim.ProgrammeAim); var deliveries = Collection.Empty <ILearningDelivery>(); deliveries.Add(mockDelivery.Object); var mockStatus = new Mock <ILearnerEmploymentStatus>(); mockStatus .SetupGet(y => y.EmpStat) .Returns(TypeOfEmploymentStatus.InPaidEmployment); mockStatus .SetupGet(y => y.DateEmpStatApp) .Returns(testDate); var statii = Collection.Empty <ILearnerEmploymentStatus>(); statii.Add(mockStatus.Object); var mockLearner = new Mock <ILearner>(); mockLearner .SetupGet(x => x.LearnRefNumber) .Returns(LearnRefNumber); mockLearner .SetupGet(x => x.LearningDeliveries) .Returns(deliveries.AsSafeReadOnlyList()); mockLearner .SetupGet(x => x.LearnerEmploymentStatuses) .Returns(statii.AsSafeReadOnlyList()); var handler = new Mock <IValidationErrorHandler>(MockBehavior.Strict); var mockDDRule07 = new Mock <IDerivedData_07Rule>(MockBehavior.Strict); mockDDRule07 .Setup(x => x.IsApprenticeship(Moq.It.IsAny <int>())) .Returns(true); var sut = new EmpStat_15Rule(handler.Object, mockDDRule07.Object); // act sut.Validate(mockLearner.Object); // assert handler.VerifyAll(); mockDDRule07.VerifyAll(); }
public void InvalidItemRaisesValidationMessage() { // arrange const string LearnRefNumber = "123456789X"; var testDate = DateTime.Parse("2016-09-24"); var mockDelivery = new Mock <ILearningDelivery>(); mockDelivery .SetupGet(y => y.LearnStartDate) .Returns(testDate); mockDelivery .SetupGet(y => y.ProgTypeNullable) .Returns(TypeOfLearningProgramme.ApprenticeshipStandard); mockDelivery .SetupGet(y => y.AimType) .Returns(TypeOfAim.ProgrammeAim); var deliveries = Collection.Empty <ILearningDelivery>(); deliveries.Add(mockDelivery.Object); var mockStatus = new Mock <ILearnerEmploymentStatus>(); mockStatus .SetupGet(y => y.EmpStat) .Returns(TypeOfEmploymentStatus.NotKnownProvided); mockStatus .SetupGet(y => y.DateEmpStatApp) .Returns(testDate); var statii = Collection.Empty <ILearnerEmploymentStatus>(); statii.Add(mockStatus.Object); var mockLearner = new Mock <ILearner>(); mockLearner .SetupGet(x => x.LearnRefNumber) .Returns(LearnRefNumber); mockLearner .SetupGet(x => x.LearningDeliveries) .Returns(deliveries.AsSafeReadOnlyList()); mockLearner .SetupGet(x => x.LearnerEmploymentStatuses) .Returns(statii.AsSafeReadOnlyList()); var handler = new Mock <IValidationErrorHandler>(MockBehavior.Strict); handler .Setup(x => x.Handle( Moq.It.Is <string>(y => y == EmpStat_15Rule.Name), Moq.It.Is <string>(y => y == LearnRefNumber), 0, Moq.It.IsAny <IEnumerable <IErrorMessageParameter> >())); handler .Setup(x => x.BuildErrorMessageParameter( Moq.It.Is <string>(y => y == EmpStat_15Rule.MessagePropertyName), TypeOfEmploymentStatus.NotKnownProvided)) .Returns(new Mock <IErrorMessageParameter>().Object); handler .Setup(x => x.BuildErrorMessageParameter( Moq.It.Is <string>(y => y == PropertyNameConstants.LearnStartDate), testDate)) .Returns(new Mock <IErrorMessageParameter>().Object); var mockDDRule07 = new Mock <IDerivedData_07Rule>(MockBehavior.Strict); mockDDRule07 .Setup(x => x.IsApprenticeship(Moq.It.IsAny <int>())) .Returns(true); var sut = new EmpStat_15Rule(handler.Object, mockDDRule07.Object); // act sut.Validate(mockLearner.Object); // assert handler.VerifyAll(); mockDDRule07.VerifyAll(); }