Esempio n. 1
0
        public void IsQualifyingCategoryESFMeetsExpectation(bool isRestart, bool expectation)
        {
            // arrange
            var mockDelivery = new Mock <ILearningDelivery>();

            var commonOps = new Mock <IProvideRuleCommonOperations>(MockBehavior.Strict);

            commonOps
            .Setup(x => x.IsRestart(mockDelivery.Object))
            .Returns(isRestart);

            var derivedData11 = new Mock <IDerivedData_11Rule>(MockBehavior.Strict);

            var sut = new LearnAimRefRuleActionProvider(commonOps.Object, derivedData11.Object);

            // act
            var result = sut.IsQualifyingCategoryESF(mockDelivery.Object, null);

            // assert
            commonOps.VerifyAll();
            derivedData11.VerifyAll();

            Assert.Equal("ESF", result.Category);
            Assert.Equal(expectation, result.Passed);
        }
Esempio n. 2
0
        public void IsQualifyingCategoryApprencticeshipAnyMeetsExpectation(bool isRestart, bool isAdvLoan, bool isStdApp, bool expectation)
        {
            // arrange
            var mockDelivery = new Mock <ILearningDelivery>();

            var commonOps = new Mock <IProvideRuleCommonOperations>();

            commonOps
            .Setup(x => x.IsStandardApprencticeship(mockDelivery.Object))
            .Returns(isStdApp);
            commonOps
            .Setup(x => x.IsRestart(mockDelivery.Object))
            .Returns(isRestart);
            commonOps
            .Setup(x => x.IsAdvancedLearnerLoan(mockDelivery.Object))
            .Returns(isAdvLoan);

            var derivedData11 = new Mock <IDerivedData_11Rule>(MockBehavior.Strict);

            var sut = new LearnAimRefRuleActionProvider(commonOps.Object, derivedData11.Object);

            // act
            var result = sut.IsQualifyingCategoryApprencticeshipAny(mockDelivery.Object, null);

            // assert
            Assert.Equal("ANY", result.Category);
            Assert.Equal(expectation, result.Passed);
        }
Esempio n. 3
0
        public void IsQualifyingCategoryAdultSkillsMeetsExpectation(bool isRestart, bool isInCustody, bool inApprenticeship, bool expectation)
        {
            // arrange
            var mockDelivery = new Mock <ILearningDelivery>();

            var commonOps = new Mock <IProvideRuleCommonOperations>();

            commonOps
            .Setup(x => x.IsRestart(mockDelivery.Object))
            .Returns(isRestart);
            commonOps
            .Setup(x => x.IsLearnerInCustody(mockDelivery.Object))
            .Returns(isInCustody);
            commonOps
            .Setup(x => x.InApprenticeship(mockDelivery.Object))
            .Returns(inApprenticeship);

            var derivedData11 = new Mock <IDerivedData_11Rule>(MockBehavior.Strict);

            var sut = new LearnAimRefRuleActionProvider(commonOps.Object, derivedData11.Object);

            // act
            var result = sut.IsQualifyingCategoryAdultSkills(mockDelivery.Object, null);

            // assert
            Assert.Equal("ADULT_SKILLS", result.Category);
            Assert.Equal(expectation, result.Passed);
        }
Esempio n. 4
0
        public void IsQualifyingCategoryUnemployedMeetsExpectation(bool isRestart, bool inApprenticeship, bool isInCustody, bool qualifyingStart, bool isFundedOnBenefits, bool expectation)
        {
            // arrange
            var mockDelivery = new Mock <ILearningDelivery>();

            var commonOps = new Mock <IProvideRuleCommonOperations>();

            commonOps
            .Setup(x => x.IsRestart(mockDelivery.Object))
            .Returns(isRestart);
            commonOps
            .Setup(x => x.InApprenticeship(mockDelivery.Object))
            .Returns(inApprenticeship);
            commonOps
            .Setup(x => x.IsLearnerInCustody(mockDelivery.Object))
            .Returns(isInCustody);
            commonOps
            .Setup(x => x.HasQualifyingStart(mockDelivery.Object, DateTime.MinValue, DateTime.Parse("2016-08-01")))
            .Returns(qualifyingStart);

            var derivedData11 = new Mock <IDerivedData_11Rule>();

            derivedData11
            .Setup(x => x.IsAdultFundedOnBenefitsAtStartOfAim(mockDelivery.Object, It.IsAny <IReadOnlyCollection <ILearnerEmploymentStatus> >()))
            .Returns(isFundedOnBenefits);

            var sut = new LearnAimRefRuleActionProvider(commonOps.Object, derivedData11.Object);

            // act
            var result = sut.IsQualifyingCategoryUnemployed(mockDelivery.Object, null);

            // assert
            Assert.Equal("UNEMPLOYED", result.Category);
            Assert.Equal(expectation, result.Passed);
        }
Esempio n. 5
0
        public void IsQualifyingCategoryApprenticeshipMeetsExpectation(bool isRestart, bool inStdApp, bool inApprenticeship, bool isComponent, bool qualifyingStart, bool expectation)
        {
            // arrange
            var mockDelivery = new Mock <ILearningDelivery>();

            var commonOps = new Mock <IProvideRuleCommonOperations>(MockBehavior.Strict);

            commonOps
            .Setup(x => x.IsRestart(mockDelivery.Object))
            .Returns(isRestart);
            commonOps
            .Setup(x => x.IsStandardApprencticeship(mockDelivery.Object))
            .Returns(inStdApp);
            commonOps
            .Setup(x => x.InApprenticeship(mockDelivery.Object))
            .Returns(inApprenticeship);
            commonOps
            .Setup(x => x.IsComponentOfAProgram(mockDelivery.Object))
            .Returns(isComponent);
            commonOps
            .Setup(x => x.HasQualifyingStart(mockDelivery.Object, DateTime.Parse("2011-08-01"), DateTime.MaxValue))
            .Returns(qualifyingStart);

            var derivedData11 = new Mock <IDerivedData_11Rule>(MockBehavior.Strict);

            var sut = new LearnAimRefRuleActionProvider(commonOps.Object, derivedData11.Object);

            // act
            var result = sut.IsQualifyingCategoryApprenticeship(mockDelivery.Object, null);

            // assert
            commonOps.VerifyAll();
            derivedData11.VerifyAll();

            Assert.Equal("APPRENTICESHIPS", result.Category);
            Assert.Equal(expectation, result.Passed);
        }
Esempio n. 6
0
        public void InReceiptOfBenefitsAtStartMeetsExpectation(bool expectation)
        {
            // arrange
            var mockDelivery = new Mock <ILearningDelivery>();
            var employments  = new ILearnerEmploymentStatus[] { };

            var commonOps     = new Mock <IProvideRuleCommonOperations>(MockBehavior.Strict);
            var derivedData11 = new Mock <IDerivedData_11Rule>(MockBehavior.Strict);

            derivedData11
            .Setup(x => x.IsAdultFundedOnBenefitsAtStartOfAim(mockDelivery.Object, employments))
            .Returns(expectation);

            var sut = new LearnAimRefRuleActionProvider(commonOps.Object, derivedData11.Object);

            // act
            var result = sut.InReceiptOfBenefitsAtStart(mockDelivery.Object, employments);

            // assert
            commonOps.VerifyAll();
            derivedData11.VerifyAll();

            Assert.Equal(expectation, result);
        }
Esempio n. 7
0
        [InlineData(70, true, true, true, true, true, true, true, "ESF", false)]            // try and trip on anything
        public void GetBranchingResultForMeetsExpectation(
            int fundModel,
            bool isLIC,
            bool inAppr,
            bool hasQS,
            bool isOnBenefits,
            bool isStdAppr,
            bool isAimComp,
            bool isAdvLLoan,
            string expectation,
            bool isOutOfScope)
        {
            // arrange
            var mockDelivery = new Mock <ILearningDelivery>();

            mockDelivery
            .SetupGet(x => x.FundModel)
            .Returns(fundModel);

            var commonOps = new Mock <IProvideRuleCommonOperations>();

            commonOps
            .Setup(x => x.IsRestart(mockDelivery.Object))
            .Returns(false);
            commonOps
            .Setup(x => x.IsLearnerInCustody(mockDelivery.Object))
            .Returns(isLIC);
            commonOps
            .Setup(x => x.InApprenticeship(mockDelivery.Object))
            .Returns(inAppr);
            commonOps
            .Setup(x => x.HasQualifyingStart(mockDelivery.Object, It.IsAny <DateTime>(), It.IsAny <DateTime?>()))
            .Returns(hasQS);
            commonOps
            .Setup(x => x.IsStandardApprencticeship(mockDelivery.Object))
            .Returns(isStdAppr);
            commonOps
            .Setup(x => x.IsComponentOfAProgram(mockDelivery.Object))
            .Returns(isAimComp);
            commonOps
            .Setup(x => x.HasQualifyingFunding(mockDelivery.Object, It.IsAny <int>()))
            .Returns(true);
            commonOps
            .Setup(x => x.IsAdvancedLearnerLoan(mockDelivery.Object))
            .Returns(isAdvLLoan);

            var derivedData11 = new Mock <IDerivedData_11Rule>();

            derivedData11
            .Setup(x => x.IsAdultFundedOnBenefitsAtStartOfAim(mockDelivery.Object, It.IsAny <IReadOnlyCollection <ILearnerEmploymentStatus> >()))
            .Returns(isOnBenefits);

            var sut = new LearnAimRefRuleActionProvider(commonOps.Object, derivedData11.Object);

            // act
            var result = sut.GetBranchingResultFor(mockDelivery.Object, new Mock <ILearner>().Object);

            // assert
            Assert.Equal(expectation, result.Category);
            Assert.Equal(isOutOfScope, result.OutOfScope);
        }