Пример #1
0
        public void ConditionMet_FalseLearnStartDate()
        {
            var learnStartDate     = new DateTime(2013, 07, 02);
            var learningDeliveryHe = new TestLearningDeliveryHE();

            NewRule().ConditionMet(learnStartDate, learningDeliveryHe).Should().BeFalse();
        }
Пример #2
0
        public void ConditionMet_True()
        {
            var learnStartDate     = new DateTime(2012, 08, 01);
            var learningDeliveryHE = new TestLearningDeliveryHE();

            NewRule().ConditionMet(learnStartDate, learningDeliveryHE).Should().BeTrue();
        }
Пример #3
0
        public void Validate_NoError()
        {
            var testLearningDeliveryHE = new TestLearningDeliveryHE()
            {
                PCSLDCSNullable = null
            };

            ILearner testLearner = new TestLearner()
            {
                LearnRefNumber     = "456Learner",
                LearningDeliveries = new List <TestLearningDelivery>()
                {
                    new TestLearningDelivery()
                    {
                        LearnAimRef              = "456",
                        LearnStartDate           = new DateTime(2010, 08, 02),
                        LearningDeliveryHEEntity = testLearningDeliveryHE
                    }
                }
            };

            var larsDataServiceMock = new Mock <ILARSDataService>();

            larsDataServiceMock.Setup(lds => lds.LearnDirectClassSystemCode2MatchForLearnAimRef("456")).Returns(false);
            using (var validationErrorHandlerMock = BuildValidationErrorHandlerMockForNoError())
            {
                NewRule(validationErrorHandler: validationErrorHandlerMock.Object, larsDataService: larsDataServiceMock.Object).Validate(testLearner);
            }
        }
        public void Validate_NoErrors(string pcfldcs, bool mockValue)
        {
            var learnAimRef        = "LearnAimRef";
            var learningDeliveryHE = new TestLearningDeliveryHE
            {
                PCFLDCSNullable = decimal.Parse(pcfldcs)
            };

            var learner = new TestLearner()
            {
                LearningDeliveries = new List <TestLearningDelivery>()
                {
                    new TestLearningDelivery()
                    {
                        LearnAimRef = learnAimRef,
                        LearningDeliveryHEEntity = learningDeliveryHE
                    }
                }
            };

            var larsDataServiceMock = new Mock <ILARSDataService>();

            larsDataServiceMock.Setup(ds => ds.LearnDirectClassSystemCode1MatchForLearnAimRef(learnAimRef)).Returns(mockValue);

            using (var validationErrorHandlerMock = BuildValidationErrorHandlerMockForNoError())
            {
                NewRule(larsDataServiceMock.Object, validationErrorHandlerMock.Object).Validate(learner);
            }
        }
        public void ConditionMet_False(int?progTypeNullable, string learnAimRef)
        {
            HashSet <int?> englishPrescribedIDs = new HashSet <int?>()
            {
                1, 2
            };

            var testLearningDeliveryFAMs = new TestLearningDeliveryFAM[]
            {
                new TestLearningDeliveryFAM()
                {
                    LearnDelFAMType = LearningDeliveryFAMTypeConstants.LDM,
                    LearnDelFAMCode = "352"
                }
            };

            var testLearningDeliveryHE = new TestLearningDeliveryHE()
            {
                SSN      = "123456789",
                DOMICILE = "DC987654"
            };

            var larsDataServiceMock  = new Mock <ILARSDataService>();
            var famsQueryServiceMock = new Mock <ILearningDeliveryFAMQueryService>();

            larsDataServiceMock.Setup(d => d.EnglishPrescribedIdsExistsforLearnAimRef(learnAimRef, englishPrescribedIDs)).Returns(false);
            famsQueryServiceMock.Setup(f => f.HasLearningDeliveryFAMCodeForType(testLearningDeliveryFAMs, LearningDeliveryFAMTypeConstants.LDM, "352")).Returns(true);

            NewRule(
                lARSDataService: larsDataServiceMock.Object,
                learningDeliveryFAMQueryService: famsQueryServiceMock.Object)
            .ConditionMet(progTypeNullable, learnAimRef, testLearningDeliveryHE, testLearningDeliveryFAMs).Should().BeFalse();
        }
        public void ConditionMet_False(int fundModel, string learnAimRef, int?progType)
        {
            var testLearningDeliveryHeEntity = new TestLearningDeliveryHE()
            {
                SSN = "12345678"
            };

            var testLearningDeliveryFAMs = new TestLearningDeliveryFAM[]
            {
                new TestLearningDeliveryFAM()
                {
                    LearnDelFAMType = LearningDeliveryFAMTypeConstants.FFI,
                    LearnDelFAMCode = "22"
                }
            };

            var learningDeliveryFAMsQueryServiceMock = new Mock <ILearningDeliveryFAMQueryService>();
            var larsDataServiceMock = new Mock <ILARSDataService>();
            var dd07Mock            = new Mock <IDerivedData_07Rule>();

            learningDeliveryFAMsQueryServiceMock.Setup(s => s.HasLearningDeliveryFAMCodeForType(testLearningDeliveryFAMs, LearningDeliveryFAMTypeConstants.LDM, "352")).Returns(true);
            larsDataServiceMock.Setup(l => l.NotionalNVQLevelV2MatchForLearnAimRefAndLevels(learnAimRef, _notionalNVQLevels)).Returns(false);
            dd07Mock.Setup(d => d.IsApprenticeship(progType)).Returns(true);

            NewRule(
                dD07: dd07Mock.Object,
                lARSDataService: larsDataServiceMock.Object,
                learningDeliveryFAMQueryService: learningDeliveryFAMsQueryServiceMock.Object)
            .ConditionMet(fundModel, learnAimRef, progType, testLearningDeliveryHeEntity, testLearningDeliveryFAMs).Should().BeFalse();
        }
Пример #7
0
        public void ConditionMet_FalseExcluded()
        {
            var fundModel = 99;
            var ukprn     = 12345678;
            var famType   = "SOF";
            var famCode   = "1";
            var orgType   = "UHEO";

            var learningDeliveryFams = new List <TestLearningDeliveryFAM>()
            {
                new TestLearningDeliveryFAM()
                {
                    LearnDelFAMType = famType,
                    LearnDelFAMCode = famCode
                }
            };

            TestLearningDeliveryHE learningDeliveryHe = null;

            var learningDeliveryFamQueryServiceMock = new Mock <ILearningDeliveryFAMQueryService>();

            learningDeliveryFamQueryServiceMock
            .Setup(qs => qs.HasLearningDeliveryFAMCodeForType(learningDeliveryFams, famType, famCode))
            .Returns(true);

            var organisationDataServiceMock = new Mock <IOrganisationDataService>();

            organisationDataServiceMock
            .Setup(od => od.LegalOrgTypeMatchForUkprn(ukprn, orgType))
            .Returns(true);

            NewRule(learningDeliveryFamQueryServiceMock.Object, organisationDataService: organisationDataServiceMock.Object).ConditionMet(fundModel, learningDeliveryFams, learningDeliveryHe, ukprn).Should().BeFalse();
        }
        public void Validate_NoError()
        {
            string         learnAimRef          = "ZSF123456";
            HashSet <int?> englishPrescribedIDs = new HashSet <int?>()
            {
                1, 2
            };
            var testLearningDeliveryFAMs = new TestLearningDeliveryFAM[]
            {
                new TestLearningDeliveryFAM()
                {
                    LearnDelFAMType = LearningDeliveryFAMTypeConstants.LDM,
                    LearnDelFAMCode = "352"
                }
            };

            var testLearningDeliveryHE = new TestLearningDeliveryHE()
            {
                SSN      = "123456789",
                DOMICILE = "DC987654"
            };

            var testLearner = new TestLearner()
            {
                LearningDeliveries = new TestLearningDelivery[]
                {
                    new TestLearningDelivery()
                    {
                        LearnAimRef              = learnAimRef,
                        ProgTypeNullable         = TypeOfLearningProgramme.HigherApprenticeshipLevel4,
                        LearningDeliveryFAMs     = testLearningDeliveryFAMs,
                        LearningDeliveryHEEntity = testLearningDeliveryHE
                    }
                }
            };

            var larsDataServiceMock         = new Mock <ILARSDataService>();
            var famsQueryServiceMock        = new Mock <ILearningDeliveryFAMQueryService>();
            var derivedData27Mock           = new Mock <IDerivedData_27Rule>();
            var organisationDataServiceMock = new Mock <IOrganisationDataService>();
            var fileServiceMock             = new Mock <IFileDataService>();

            larsDataServiceMock.Setup(d => d.EnglishPrescribedIdsExistsforLearnAimRef(learnAimRef, englishPrescribedIDs)).Returns(false);
            famsQueryServiceMock.Setup(f => f.HasLearningDeliveryFAMCodeForType(testLearningDeliveryFAMs, LearningDeliveryFAMTypeConstants.LDM, "352")).Returns(true);
            derivedData27Mock.Setup(d => d.IsUKPRNCollegeOrGrantFundedProvider(654321)).Returns(true);
            organisationDataServiceMock.Setup(o => o.LegalOrgTypeMatchForUkprn(654321, LegalOrgTypeConstants.UHEO)).Returns(false);
            fileServiceMock.Setup(f => f.UKPRN()).Returns(654321);

            using (var validationErrorHandlerMock = BuildValidationErrorHandlerMockForNoError())
            {
                NewRule(
                    validationErrorHandler: validationErrorHandlerMock.Object,
                    fileDataService: fileServiceMock.Object,
                    lARSDataService: larsDataServiceMock.Object,
                    learningDeliveryFAMQueryService: famsQueryServiceMock.Object,
                    organisationDataService: organisationDataServiceMock.Object,
                    derivedData_27Rule: derivedData27Mock.Object).Validate(testLearner);
            }
        }
        public void ConditionMet_False(int?netfee)
        {
            TestLearningDeliveryHE learningDeliveryHE = new TestLearningDeliveryHE()
            {
                NETFEENullable = netfee
            };

            NewRule().ConditionMet(learningDeliveryHE).Should().BeFalse();
        }
        public void ConditionMet_False(int modeStud)
        {
            TestLearningDeliveryHE learningDeliveryHE = new TestLearningDeliveryHE()
            {
                MODESTUD = modeStud
            };

            NewRule().ConditionMet(learningDeliveryHE).Should().BeFalse();
        }
Пример #11
0
        public void LearningDeliveryHEConditionMet_False()
        {
            var learningDeliveryHE = new TestLearningDeliveryHE
            {
                NUMHUS = "NUMHUS"
            };

            NewRule().LearningDeliveryHEConditionMet(learningDeliveryHE).Should().BeFalse();
        }
Пример #12
0
        public void LearningDeliveryHEConditionMet_True()
        {
            var learningDeliveryHE = new TestLearningDeliveryHE
            {
                QUALENT3 = "AB1"
            };

            NewRule().LearningDeliveryHEConditionMet(learningDeliveryHE).Should().BeTrue();
        }
        public void Validate_NoError()
        {
            var testLearningDeliveryHeEntity = new TestLearningDeliveryHE()
            {
                SSN = "12345678"
            };

            var testLearningDeliveryFAMs = new TestLearningDeliveryFAM[]
            {
                new TestLearningDeliveryFAM()
                {
                    LearnDelFAMType = LearningDeliveryFAMTypeConstants.FFI,
                    LearnDelFAMCode = "22"
                }
            };

            var testLearner = new TestLearner()
            {
                LearningDeliveries = new TestLearningDelivery[]
                {
                    new TestLearningDelivery()
                    {
                        FundModel                = TypeOfFunding.CommunityLearning,
                        ProgTypeNullable         = TypeOfLearningProgramme.ApprenticeshipStandard,
                        LearnAimRef              = "50023408",
                        LearningDeliveryFAMs     = testLearningDeliveryFAMs,
                        LearningDeliveryHEEntity = testLearningDeliveryHeEntity
                    }
                }
            };

            var learningDeliveryFAMsQueryServiceMock = new Mock <ILearningDeliveryFAMQueryService>();
            var organisationDataServiceMock          = new Mock <IOrganisationDataService>();
            var derivedDataServiceMock = new Mock <IDerivedData_27Rule>();
            var larsDataServiceMock    = new Mock <ILARSDataService>();
            var fileDataServiceMock    = new Mock <IFileDataService>();
            var dd07Mock = new Mock <IDerivedData_07Rule>();

            fileDataServiceMock.Setup(f => f.UKPRN()).Returns(123654321);
            learningDeliveryFAMsQueryServiceMock.Setup(s => s.HasLearningDeliveryFAMCodeForType(testLearningDeliveryFAMs, LearningDeliveryFAMTypeConstants.LDM, "352")).Returns(true);
            larsDataServiceMock.Setup(l => l.NotionalNVQLevelV2MatchForLearnAimRefAndLevels("50023411", _notionalNVQLevels)).Returns(false);
            organisationDataServiceMock.Setup(o => o.LegalOrgTypeMatchForUkprn(123654321, LegalOrgTypeConstants.ULEA)).Returns(true);
            derivedDataServiceMock.Setup(d => d.IsUKPRNCollegeOrGrantFundedProvider(98756789)).Returns(true);
            dd07Mock.Setup(d => d.IsApprenticeship(TypeOfLearningProgramme.ApprenticeshipStandard)).Returns(true);

            using (var validationErrorHandlerMock = BuildValidationErrorHandlerMockForNoError())
            {
                NewRule(
                    validationErrorHandler: validationErrorHandlerMock.Object,
                    learningDeliveryFAMQueryService: learningDeliveryFAMsQueryServiceMock.Object,
                    dD07: dd07Mock.Object,
                    derivedData_27Rule: derivedDataServiceMock.Object,
                    lARSDataService: larsDataServiceMock.Object,
                    fileDataService: fileDataServiceMock.Object,
                    organisationDataService: organisationDataServiceMock.Object).Validate(testLearner);
            }
        }
        public void LearningDeliveryHEConditionMet_True_PCFLDCS_Null()
        {
            var learningDeliveryHE = new TestLearningDeliveryHE
            {
                NUMHUS = "AB1"
            };

            NewRule().LearningDeliveryHEConditionMet(learningDeliveryHE).Should().BeTrue();
        }
        public void LearningDeliveryHeConditionMet_False(int fundLev)
        {
            var learningDeliveryHe = new TestLearningDeliveryHE()
            {
                FUNDLEV = fundLev
            };

            NewRule().LearningDeliveryHeConditionMet(learningDeliveryHe).Should().BeFalse();
        }
Пример #16
0
        public void STULOADConditionMet_False()
        {
            var learningDeliveryHe = new TestLearningDeliveryHE()
            {
                STULOADNullable = 1
            };

            NewRule().STULOADConditionMet(learningDeliveryHe).Should().BeFalse();
        }
        public void LearningDeliveryHEConditionMet_False()
        {
            TestLearningDeliveryHE learningDeliveryHE = new TestLearningDeliveryHE()
            {
                MODESTUD = 2
            };

            NewRule().LearningDeliveryHEConditionMet(learningDeliveryHE).Should().BeFalse();
        }
Пример #18
0
        public void LearningDeliveryHEConditionMet_False()
        {
            TestLearningDeliveryHE testLearningDeliveryHE = new TestLearningDeliveryHE()
            {
                PCSLDCSNullable = 1.5M
            };

            NewRule().LearningDeliveryHEConditionMet(testLearningDeliveryHE).Should().BeFalse();
        }
Пример #19
0
        public void LearningDeliveryHEConditionMet_True()
        {
            TestLearningDeliveryHE testLearningDeliveryHE = new TestLearningDeliveryHE()
            {
                PCSLDCSNullable = null
            };

            NewRule().LearningDeliveryHEConditionMet(testLearningDeliveryHE).Should().BeTrue();
        }
        public void ConditionMet_True()
        {
            TestLearningDeliveryHE learningDeliveryHE = new TestLearningDeliveryHE()
            {
                MODESTUD = 1
            };

            NewRule(NewDD06()).ConditionMet(learningDeliveryHE).Should().BeTrue();
        }
        public void NullConditionMet_FalseNullPostcode(string postcode)
        {
            var heEntity = new TestLearningDeliveryHE()
            {
                HEPostCode = postcode
            };

            NewRule().NullConditionMet(heEntity).Should().BeFalse();
        }
        public void NullConditionMet_True()
        {
            var heEntity = new TestLearningDeliveryHE()
            {
                HEPostCode = "AA1 1AA"
            };

            NewRule().NullConditionMet(heEntity).Should().BeTrue();
        }
        public void LearningDeliveryHeConditionMet_True()
        {
            var learningDeliveryHe = new TestLearningDeliveryHE()
            {
                FUNDLEV = 0
            };

            NewRule().LearningDeliveryHeConditionMet(learningDeliveryHe).Should().BeTrue();
        }
        public void LearningDeliveryHEConditionMet_False()
        {
            var learningDeliveryHE = new TestLearningDeliveryHE
            {
                PCFLDCSNullable = 1.2m
            };

            NewRule().LearningDeliveryHEConditionMet(learningDeliveryHE).Should().BeFalse();
        }
        public void LearningDeliveryHEConditionMet_FalseUCASAppId()
        {
            var learningDeliveryHE = new TestLearningDeliveryHE
            {
                DOMICILE = "XF"
            };

            NewRule().LearningDeliveryHEConditionMet(learningDeliveryHE).Should().BeFalse();
        }
Пример #26
0
        public void LearningDeliveryHEConditionMet_True()
        {
            TestLearningDeliveryHE learningDeliveryHE = new TestLearningDeliveryHE()
            {
                SSN = null, NETFEENullable = null
            };

            NewRule().LearningDeliveryHEConditionMet(learningDeliveryHE).Should().BeTrue();
        }
Пример #27
0
        public void LearningDeliveryHEConditionMet_False()
        {
            TestLearningDeliveryHE learningDeliveryHE = new TestLearningDeliveryHE()
            {
                SSN = "2002", NETFEENullable = 500
            };

            NewRule().LearningDeliveryHEConditionMet(learningDeliveryHE).Should().BeFalse();
        }
        public void LearningDeliveryHEConditionMet_False()
        {
            TestLearningDeliveryHE learningDeliveryHE = new TestLearningDeliveryHE()
            {
                ELQNullable = 1
            };

            NewRule().LearningDeliveryHEConditionMet(learningDeliveryHE).Should().BeFalse();
        }
        public void LearningDeliveryHEConditionMet_True()
        {
            var learningDeliveryHe = new TestLearningDeliveryHE()
            {
                PCFLDCSNullable = 1
            };

            NewRule().LearningDeliveryHEConditionMet(learningDeliveryHe).Should().BeTrue();
        }
Пример #30
0
        public void ConditionMet_FalseSTULOAD()
        {
            var learnStartDate     = new DateTime(2013, 08, 02);
            var learningDeliveryHe = new TestLearningDeliveryHE()
            {
                STULOADNullable = 1
            };

            NewRule().ConditionMet(learnStartDate, learningDeliveryHe).Should().BeFalse();
        }