public void Validate_NoErrors_FundModel() { var learner = new ILR.Tests.Model.TestLearner() { ULNNullable = 9999999999, LearningDeliveries = new ILR.Tests.Model.TestLearningDelivery[] { new ILR.Tests.Model.TestLearningDelivery() { FundModelNullable = 100, LearnStartDateNullable = new DateTime(2018, 1, 2), LearnPlanEndDateNullable = new DateTime(2017, 1, 7), LearnActEndDateNullable = new DateTime(2018, 1, 7), } } }; var fileDataMock = new Mock <IFileDataService>(); var validationDataMock = new Mock <IValidationDataService>(); var learningDeliveryFAMQueryServiceMock = new Mock <ILearningDeliveryFAMQueryService>(); fileDataMock.SetupGet(fd => fd.FilePreparationDate).Returns(new DateTime(2018, 1, 1)); validationDataMock.SetupGet(vd => vd.AcademicYearJanuaryFirst).Returns(new DateTime(2018, 1, 1)); learningDeliveryFAMQueryServiceMock.Setup(qs => qs.HasLearningDeliveryFAMCodeForType(It.IsAny <IEnumerable <ILearningDeliveryFAM> >(), "LDM", "034")).Returns(false); learningDeliveryFAMQueryServiceMock.Setup(qs => qs.HasLearningDeliveryFAMCodeForType(It.IsAny <IEnumerable <ILearningDeliveryFAM> >(), "ACT", "1")).Returns(false); var rule = new ULN_06Rule(fileDataMock.Object, validationDataMock.Object, learningDeliveryFAMQueryServiceMock.Object, null); rule.Validate(learner); }
public void Validate_Error() { var learner = new ILR.Tests.Model.TestLearner() { ULN = 9999999999, LearningDeliveries = new TestLearningDelivery[] { new TestLearningDelivery() { FundModel = 25, }, new TestLearningDelivery() { FundModel = 36, } } }; var fileDataServiceMock = new Mock <IFileDataService>(); fileDataServiceMock.Setup(fd => fd.FilePreparationDate()).Returns(new DateTime(1970, 1, 1)); var academicYearDataServiceMock = new Mock <IAcademicYearDataService>(); academicYearDataServiceMock.Setup(ds => ds.JanuaryFirst()).Returns(new DateTime(2018, 1, 1)); var learnerQueryServiceMock = new Mock <ILearnerQueryService>(); learnerQueryServiceMock.Setup(qs => qs.HasLearningDeliveryFAMCodeForType(learner, "ACT", "1")).Returns(false); using (var validationErrorHandlerMock = BuildValidationErrorHandlerMockForError()) { NewRule(fileDataServiceMock.Object, academicYearDataServiceMock.Object, learnerQueryServiceMock.Object, validationErrorHandlerMock.Object).Validate(learner); } }
public void Validate_Errors() { var learner = new ILR.Tests.Model.TestLearner() { ULNNullable = 9999999999, LearningDeliveries = new ILR.Tests.Model.TestLearningDelivery[] { new ILR.Tests.Model.TestLearningDelivery() { FundModelNullable = 25, LearnStartDateNullable = new DateTime(2018, 1, 2), LearnPlanEndDateNullable = new DateTime(2017, 1, 7), LearnActEndDateNullable = new DateTime(2018, 1, 7), } } }; var fileDataMock = new Mock <IFileDataService>(); var validationDataMock = new Mock <IValidationDataService>(); var validationErrorHandlerMock = new Mock <IValidationErrorHandler>(); var learningDeliveryFAMQueryServiceMock = new Mock <ILearningDeliveryFAMQueryService>(); fileDataMock.SetupGet(fd => fd.FilePreparationDate).Returns(new DateTime(2018, 1, 1)); validationDataMock.SetupGet(vd => vd.AcademicYearJanuaryFirst).Returns(new DateTime(2018, 1, 1)); learningDeliveryFAMQueryServiceMock.Setup(qs => qs.HasLearningDeliveryFAMCodeForType(It.IsAny <IEnumerable <ILearningDeliveryFAM> >(), "LDM", "034")).Returns(false); learningDeliveryFAMQueryServiceMock.Setup(qs => qs.HasLearningDeliveryFAMCodeForType(It.IsAny <IEnumerable <ILearningDeliveryFAM> >(), "ACT", "1")).Returns(false); learningDeliveryFAMQueryServiceMock.Setup(qs => qs.HasLearningDeliveryFAMCodeForType(It.IsAny <IEnumerable <ILearningDeliveryFAM> >(), "ADL", "1")).Returns(true); Expression <Action <IValidationErrorHandler> > handle = veh => veh.Handle("ULN_06", null, null, null); validationErrorHandlerMock.Setup(handle); var rule = NewRule(fileDataMock.Object, validationDataMock.Object, learningDeliveryFAMQueryServiceMock.Object, validationErrorHandlerMock.Object); rule.Validate(learner); validationErrorHandlerMock.Verify(handle, Times.Exactly(1)); }