Beispiel #1
0
        public void IsApprenticeshipMeetsExpectation(bool isApprenctice, int aimType, bool expectation)
        {
            var mockDelivery = new Mock <ILearningDelivery>();

            mockDelivery
            .Setup(x => x.AimType)
            .Returns(aimType);

            var handler = new Mock <IValidationErrorHandler>(MockBehavior.Strict);
            var lEmpQS  = new Mock <ILearnerEmploymentStatusQueryService>(MockBehavior.Strict);

            var dd07 = new Mock <IDerivedData_07Rule>(MockBehavior.Strict);

            dd07
            .Setup(dd => dd.IsApprenticeship(mockDelivery.Object.ProgTypeNullable)).Returns(isApprenctice);

            var sut = new EmpId_10Rule(handler.Object, lEmpQS.Object, dd07.Object);

            var result = sut.IsPrimaryLearningAim(mockDelivery.Object);

            Assert.Equal(expectation, result);

            handler.VerifyAll();
            lEmpQS.VerifyAll();
            dd07.VerifyAll();
        }
        public void IsApprenticeshipMeetsExpectation(bool isApprenctice, bool isProgramAim, bool expectation)
        {
            // arrange
            var mockItem = new Mock <ILearningDelivery>();

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

            commonOps
            .Setup(x => x.InApprenticeship(mockItem.Object))
            .Returns(isApprenctice);

            if (isApprenctice)
            {
                commonOps
                .Setup(x => x.InAProgramme(mockItem.Object))
                .Returns(isProgramAim);
            }

            var sut = new EmpId_10Rule(handler.Object, commonOps.Object);

            // act
            var result = sut.IsPrimaryLearningAim(mockItem.Object);

            // assert
            Assert.Equal(expectation, result);

            handler.VerifyAll();
            commonOps.VerifyAll();
        }
Beispiel #3
0
        public void InvalidItemRaisesValidationMessage()
        {
            const string LearnRefNumber = "123456789X";

            var testDate = DateTime.Parse("2013-08-01");

            var status = new Mock <ILearnerEmploymentStatus>();

            status
            .SetupGet(x => x.DateEmpStatApp)
            .Returns(testDate);
            status
            .SetupGet(x => x.EmpStat)
            .Returns(EmploymentStatusEmpStats.InPaidEmployment);

            var employmentStatuses = new ILearnerEmploymentStatus[] { status.Object };

            var mockDelivery = new Mock <ILearningDelivery>();

            mockDelivery
            .SetupGet(y => y.LearnStartDate)
            .Returns(testDate);
            mockDelivery
            .SetupGet(y => y.AimType)
            .Returns(1);

            var deliveries = new ILearningDelivery[] { mockDelivery.Object };

            var mockLearner = new Mock <ILearner>();

            mockLearner
            .SetupGet(x => x.LearnRefNumber)
            .Returns(LearnRefNumber);
            mockLearner
            .SetupGet(x => x.LearningDeliveries)
            .Returns(deliveries);
            mockLearner
            .SetupGet(y => y.LearnerEmploymentStatuses)
            .Returns(employmentStatuses);

            var handler = new Mock <IValidationErrorHandler>(MockBehavior.Strict);

            handler
            .Setup(x => x.Handle("EmpId_10", LearnRefNumber, 0, It.IsAny <IEnumerable <IErrorMessageParameter> >()));
            handler
            .Setup(x => x.BuildErrorMessageParameter("EmpId", "(missing)"))
            .Returns(new Mock <IErrorMessageParameter>().Object);
            handler
            .Setup(x => x.BuildErrorMessageParameter("EmpStat", EmploymentStatusEmpStats.InPaidEmployment))
            .Returns(new Mock <IErrorMessageParameter>().Object);
            handler
            .Setup(x => x.BuildErrorMessageParameter("LearnStartDate", AbstractRule.AsRequiredCultureDate(testDate)))
            .Returns(new Mock <IErrorMessageParameter>().Object);

            var lEmpQS = new Mock <ILearnerEmploymentStatusQueryService>(MockBehavior.Strict);

            lEmpQS
            .Setup(x => x.LearnerEmploymentStatusForDate(employmentStatuses, testDate))
            .Returns(status.Object);

            var dd07 = new Mock <IDerivedData_07Rule>(MockBehavior.Strict);

            dd07
            .Setup(dd => dd.IsApprenticeship(mockDelivery.Object.ProgTypeNullable)).Returns(true);

            var sut = new EmpId_10Rule(handler.Object, lEmpQS.Object, dd07.Object);

            sut.Validate(mockLearner.Object);

            handler.VerifyAll();
            lEmpQS.VerifyAll();
            dd07.VerifyAll();
        }
Beispiel #4
0
        public void ValidItemDoesNotRaiseValidationMessage()
        {
            const string LearnRefNumber = "123456789X";

            var testDate = DateTime.Parse("2013-08-01");

            var status = new Mock <ILearnerEmploymentStatus>();

            status
            .SetupGet(x => x.EmpIdNullable)
            .Returns(10004);
            status
            .SetupGet(x => x.EmpStat)
            .Returns(EmploymentStatusEmpStats.InPaidEmployment);

            var employmentStatuses = new ILearnerEmploymentStatus[] { status.Object };

            var mockDelivery = new Mock <ILearningDelivery>();

            mockDelivery
            .SetupGet(y => y.LearnStartDate)
            .Returns(testDate);
            mockDelivery
            .SetupGet(y => y.AimType)
            .Returns(1);

            var deliveries = new ILearningDelivery[] { mockDelivery.Object };

            var mockLearner = new Mock <ILearner>();

            mockLearner
            .SetupGet(x => x.LearnRefNumber)
            .Returns(LearnRefNumber);
            mockLearner
            .SetupGet(x => x.LearningDeliveries)
            .Returns(deliveries);
            mockLearner
            .SetupGet(y => y.LearnerEmploymentStatuses)
            .Returns(employmentStatuses);

            var handler = new Mock <IValidationErrorHandler>(MockBehavior.Strict);

            var lEmpQS = new Mock <ILearnerEmploymentStatusQueryService>(MockBehavior.Strict);

            lEmpQS
            .Setup(x => x.LearnerEmploymentStatusForDate(employmentStatuses, testDate))
            .Returns(status.Object);

            var dd07 = new Mock <IDerivedData_07Rule>(MockBehavior.Strict);

            dd07
            .Setup(dd => dd.IsApprenticeship(mockDelivery.Object.ProgTypeNullable)).Returns(true);

            var sut = new EmpId_10Rule(handler.Object, lEmpQS.Object, dd07.Object);

            sut.Validate(mockLearner.Object);

            handler.VerifyAll();
            lEmpQS.VerifyAll();
            dd07.VerifyAll();
        }
        public void ValidItemDoesNotRaiseValidationMessage()
        {
            // arrange
            const string LearnRefNumber = "123456789X";

            var testDate = DateTime.Parse("2013-08-01");

            var status = new Mock <ILearnerEmploymentStatus>();

            status
            .SetupGet(x => x.EmpIdNullable)
            .Returns(10004);
            status
            .SetupGet(x => x.EmpStat)
            .Returns(TypeOfEmploymentStatus.InPaidEmployment);

            var statii = new ILearnerEmploymentStatus[] { status.Object };

            var mockDelivery = new Mock <ILearningDelivery>();

            mockDelivery
            .SetupGet(y => y.LearnStartDate)
            .Returns(testDate);

            var deliveries = new ILearningDelivery[] { mockDelivery.Object };

            var mockLearner = new Mock <ILearner>();

            mockLearner
            .SetupGet(x => x.LearnRefNumber)
            .Returns(LearnRefNumber);
            mockLearner
            .SetupGet(x => x.LearningDeliveries)
            .Returns(deliveries);
            mockLearner
            .SetupGet(y => y.LearnerEmploymentStatuses)
            .Returns(statii);

            var handler = new Mock <IValidationErrorHandler>(MockBehavior.Strict);

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

            commonOps
            .Setup(x => x.GetEmploymentStatusOn(testDate, statii))
            .Returns(status.Object);
            commonOps
            .Setup(x => x.InApprenticeship(mockDelivery.Object))
            .Returns(true);
            commonOps
            .Setup(x => x.InAProgramme(mockDelivery.Object))
            .Returns(true);

            var sut = new EmpId_10Rule(handler.Object, commonOps.Object);

            // act
            sut.Validate(mockLearner.Object);

            // assert
            handler.VerifyAll();
            commonOps.VerifyAll();
        }
        public void InvalidItemRaisesValidationMessage()
        {
            // arrange
            const string LearnRefNumber = "123456789X";

            var testDate = DateTime.Parse("2013-08-01");

            var status = new Mock <ILearnerEmploymentStatus>();

            status
            .SetupGet(x => x.DateEmpStatApp)
            .Returns(testDate);
            status
            .SetupGet(x => x.EmpStat)
            .Returns(TypeOfEmploymentStatus.InPaidEmployment);

            var statii = new ILearnerEmploymentStatus[] { status.Object };

            var mockDelivery = new Mock <ILearningDelivery>();

            mockDelivery
            .SetupGet(y => y.LearnStartDate)
            .Returns(testDate);

            var deliveries = new ILearningDelivery[] { mockDelivery.Object };

            var mockLearner = new Mock <ILearner>();

            mockLearner
            .SetupGet(x => x.LearnRefNumber)
            .Returns(LearnRefNumber);
            mockLearner
            .SetupGet(x => x.LearningDeliveries)
            .Returns(deliveries);
            mockLearner
            .SetupGet(y => y.LearnerEmploymentStatuses)
            .Returns(statii);

            var handler = new Mock <IValidationErrorHandler>(MockBehavior.Strict);

            handler
            .Setup(x => x.Handle("EmpId_10", LearnRefNumber, 0, It.IsAny <IEnumerable <IErrorMessageParameter> >()));
            handler
            .Setup(x => x.BuildErrorMessageParameter("EmpId", "(missing)"))
            .Returns(new Mock <IErrorMessageParameter>().Object);
            handler
            .Setup(x => x.BuildErrorMessageParameter("EmpStat", TypeOfEmploymentStatus.InPaidEmployment))
            .Returns(new Mock <IErrorMessageParameter>().Object);
            handler
            .Setup(x => x.BuildErrorMessageParameter("LearnStartDate", AbstractRule.AsRequiredCultureDate(testDate)))
            .Returns(new Mock <IErrorMessageParameter>().Object);

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

            commonOps
            .Setup(x => x.GetEmploymentStatusOn(testDate, statii))
            .Returns(status.Object);
            commonOps
            .Setup(x => x.InApprenticeship(mockDelivery.Object))
            .Returns(true);
            commonOps
            .Setup(x => x.InAProgramme(mockDelivery.Object))
            .Returns(true);

            var sut = new EmpId_10Rule(handler.Object, commonOps.Object);

            // act
            sut.Validate(mockLearner.Object);

            // assert
            handler.VerifyAll();
            commonOps.VerifyAll();
        }