public void ValidItemDoesNotRaiseValidationMessage()
        {
            const string LearnRefNumber = "123456789X";
            const string LearnAimRef    = "shonkyRef";

            var delivery = new Mock <ILearningDelivery>();

            delivery
            .SetupGet(y => y.LearnStartDate)
            .Returns(DateTime.Parse("2017-04-01"));
            delivery
            .SetupGet(y => y.LearnAimRef)
            .Returns(LearnAimRef);
            delivery
            .SetupGet(y => y.AimType)
            .Returns(3);
            delivery
            .SetupGet(y => y.FundModel)
            .Returns(36);

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

            var learner = new Mock <ILearner>();

            learner
            .SetupGet(x => x.LearnRefNumber)
            .Returns(LearnRefNumber);
            learner
            .SetupGet(x => x.LearningDeliveries)
            .Returns(deliveries);

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

            var learningDeliveryFAMQS = new Mock <ILearningDeliveryFAMQueryService>(MockBehavior.Strict);

            learningDeliveryFAMQS
            .Setup(x => x.HasLearningDeliveryFAMType(
                       delivery.Object.LearningDeliveryFAMs,
                       "ACT"))
            .Returns(true);

            var larsData = new Mock <ILARSDataService>(MockBehavior.Strict);

            larsData
            .Setup(x => x.GetAnnualValuesFor(LearnAimRef))
            .Returns(new ILARSAnnualValue[] { });

            var larsDelivery = new Mock <ILARSLearningDelivery>();

            larsDelivery
            .SetupGet(x => x.FrameworkCommonComponent)
            .Returns(20);

            larsData
            .Setup(x => x.GetDeliveryFor(LearnAimRef))
            .Returns(larsDelivery.Object);

            var sut = new LearnDelFAMType_64Rule(handler.Object, learningDeliveryFAMQS.Object, larsData.Object);

            sut.Validate(learner.Object);

            handler.VerifyAll();
            learningDeliveryFAMQS.VerifyAll();
            larsData.VerifyAll();
        }