public void HasFundingRelationshipWithNullDeliveryReturnsFalse() { // arrange const int testUKPRN = 123; var handler = new Mock <IValidationErrorHandler>(MockBehavior.Strict); var fileData = new Mock <IFileDataService>(MockBehavior.Strict); fileData .Setup(x => x.UKPRN()) .Returns(testUKPRN); var academicData = new Mock <IAcademicYearDataService>(MockBehavior.Strict); var commonOps = new Mock <IProvideRuleCommonOperations>(MockBehavior.Strict); var fcsData = new Mock <IFCSDataService>(MockBehavior.Strict); fcsData .Setup(x => x.GetContractAllocationsFor(testUKPRN)) .Returns((IReadOnlyCollection <IFcsContractAllocation>)null); var sut = new UKPRN_08Rule(handler.Object, fileData.Object, academicData.Object, commonOps.Object, fcsData.Object); // act var result = sut.HasFundingRelationship(null); // assert Assert.False(result); handler.VerifyAll(); fileData.VerifyAll(); academicData.VerifyAll(); commonOps.VerifyAll(); fcsData.VerifyAll(); }
public void IsNotPartOfThisYearMeetExpectdation(string endDate, string commencementDate, bool expectation) { // arrange var mockItem = new Mock <ILearningDelivery>(); mockItem .SetupGet(x => x.LearnActEndDateNullable) .Returns(DateTime.Parse(endDate)); var handler = new Mock <IValidationErrorHandler>(MockBehavior.Strict); var fileData = new Mock <IFileDataService>(MockBehavior.Strict); var academicData = new Mock <IAcademicYearDataService>(MockBehavior.Strict); academicData .SetupGet(x => x.Today) .Returns(DateTime.Today); academicData .Setup(x => x.GetAcademicYearOfLearningDate(DateTime.Today, AcademicYearDates.Commencement)) .Returns(DateTime.Parse(commencementDate)); var commonOps = new Mock <IProvideRuleCommonOperations>(MockBehavior.Strict); var fcsData = new Mock <IFCSDataService>(MockBehavior.Strict); var sut = new UKPRN_08Rule(handler.Object, fileData.Object, academicData.Object, commonOps.Object, fcsData.Object); // act var result = sut.IsNotPartOfThisYear(mockItem.Object); // assert Assert.Equal(expectation, result); handler.VerifyAll(); fileData.VerifyAll(); academicData.VerifyAll(); commonOps.VerifyAll(); fcsData.VerifyAll(); }
[InlineData("ALLBC1819")] // FundingStreamPeriodCodeConstants.ALLBC1819 public void ValidItemDoesNotRaiseValidationMessage(string candidate) { // arrange const string LearnRefNumber = "123456789X"; const string contractRef = "shonkyRef12"; const int providerID = 123; var testDate = DateTime.Today; var delivery = new Mock <ILearningDelivery>(); delivery .SetupGet(x => x.ConRefNumber) .Returns(contractRef); delivery .SetupGet(y => y.LearnActEndDateNullable) .Returns(testDate); var deliveries = new ILearningDelivery[] { delivery.Object }; var mockLearner = new Mock <ILearner>(); mockLearner .SetupGet(x => x.LearnRefNumber) .Returns(LearnRefNumber); mockLearner .SetupGet(x => x.LearningDeliveries) .Returns(deliveries); var handler = new Mock <IValidationErrorHandler>(MockBehavior.Strict); var fileData = new Mock <IFileDataService>(MockBehavior.Strict); fileData .Setup(x => x.UKPRN()) .Returns(providerID); var academicData = new Mock <IAcademicYearDataService>(MockBehavior.Strict); academicData .SetupGet(x => x.Today) .Returns(DateTime.Today); academicData .Setup(x => x.GetAcademicYearOfLearningDate(DateTime.Today, AcademicYearDates.Commencement)) .Returns(testDate); var commonOps = new Mock <IProvideRuleCommonOperations>(MockBehavior.Strict); commonOps .Setup(x => x.IsLoansBursary(delivery.Object)) .Returns(true); var allocation = new Mock <IFcsContractAllocation>(); allocation .SetupGet(x => x.FundingStreamPeriodCode) .Returns(candidate); var fcsData = new Mock <IFCSDataService>(MockBehavior.Strict); fcsData .Setup(x => x.GetContractAllocationsFor(providerID)) .Returns(new[] { allocation.Object }); var sut = new UKPRN_08Rule(handler.Object, fileData.Object, academicData.Object, commonOps.Object, fcsData.Object); // act sut.Validate(mockLearner.Object); // assert handler.VerifyAll(); fileData.VerifyAll(); academicData.VerifyAll(); commonOps.VerifyAll(); fcsData.VerifyAll(); }