public void ConditionMetWithEmptyFinancialSupportReturnsTrue() { var handler = new Mock <IValidationErrorHandler>(MockBehavior.Strict); var provider = new Mock <IProvideLookupDetails>(MockBehavior.Strict); var sut = new FINTYPE_01Rule(handler.Object, provider.Object); var result = sut.ConditionMet(new List <ILearnerHEFinancialSupport>()); Assert.True(result); handler.VerifyAll(); provider.VerifyAll(); }
public void InvalidItemRaisesValidationMessage(int candidate) { // arrange const string LearnRefNumber = "123456789X"; var mock = new Mock <ILearner>(); mock.SetupGet(x => x.LearnRefNumber).Returns(LearnRefNumber); var mockHE = new Mock <ILearnerHE>(); mockHE.SetupGet(x => x.LearnerHEFinancialSupports).Returns(GetFinancialSupport(candidate)); mock.SetupGet(x => x.LearnerHEEntity).Returns(mockHE.Object); var mockDelivery = new Mock <ILearningDelivery>(); var deliveries = Collection.Empty <ILearningDelivery>(); mock.SetupGet(x => x.LearningDeliveries).Returns(deliveries.AsSafeReadOnlyList()); var mockHandler = new Mock <IValidationErrorHandler>(MockBehavior.Strict); mockHandler.Setup(x => x.Handle( Moq.It.Is <string>(y => y == FINTYPE_01Rule.Name), Moq.It.Is <string>(y => y == LearnRefNumber), null, Moq.It.IsAny <IEnumerable <IErrorMessageParameter> >())); mockHandler .Setup(x => x.BuildErrorMessageParameter( Moq.It.Is <string>(y => y == FINTYPE_01Rule.MessagePropertyName), Moq.It.IsAny <IReadOnlyCollection <ILearnerHEFinancialSupport> >())) .Returns(new Mock <IErrorMessageParameter>().Object); var mockProvider = new Mock <IProvideLookupDetails>(MockBehavior.Strict); mockProvider .Setup(x => x.Contains(TypeOfIntegerCodedLookup.FINTYPE, candidate)) .Returns(false); var sut = new FINTYPE_01Rule(mockHandler.Object, mockProvider.Object); // act sut.Validate(mock.Object); // assert mockHandler.VerifyAll(); mockProvider.VerifyAll(); }
public void ConditionMetWithInvalidFinancialSupportCombinationsReturnsFalse(params int[] candidates) { var handler = new Mock <IValidationErrorHandler>(MockBehavior.Strict); var provider = new Mock <IProvideLookupDetails>(MockBehavior.Strict); provider .Setup(x => x.Contains(TypeOfIntegerCodedLookup.FinType, Moq.It.IsAny <int>())) .Returns(false); var sut = new FINTYPE_01Rule(handler.Object, provider.Object); var result = sut.ConditionMet(GetFinancialSupport(candidates)); Assert.False(result); handler.VerifyAll(); provider.VerifyAll(); }
public void ValidItemDoesNotRaiseAValidationMessage(int candidate) { // arrange const string LearnRefNumber = "123456789X"; var mock = new Mock <ILearner>(); mock.SetupGet(x => x.LearnRefNumber).Returns(LearnRefNumber); var mockHE = new Mock <ILearnerHE>(); mockHE.SetupGet(x => x.LearnerHEFinancialSupports).Returns(GetFinancialSupport(candidate)); mock.SetupGet(x => x.LearnerHEEntity).Returns(mockHE.Object); var mockDelivery = new Mock <ILearningDelivery>(); var mockDeliveryHE = new Mock <ILearningDeliveryHE>(); mockDelivery.SetupGet(x => x.LearningDeliveryHEEntity) .Returns(mockDeliveryHE.Object); var deliveries = Collection.Empty <ILearningDelivery>(); deliveries.Add(mockDelivery.Object); mock.SetupGet(x => x.LearningDeliveries).Returns(deliveries.AsSafeReadOnlyList()); var handler = new Mock <IValidationErrorHandler>(MockBehavior.Strict); var provider = new Mock <IProvideLookupDetails>(MockBehavior.Strict); provider .Setup(x => x.Contains(TypeOfIntegerCodedLookup.FINTYPE, candidate)) .Returns(true); var sut = new FINTYPE_01Rule(handler.Object, provider.Object); // act sut.Validate(mock.Object); // assert handler.VerifyAll(); provider.VerifyAll(); }
public void ConditionMetWithValidFinancialSupportCombinationsReturnsTrue(params int[] candidates) { // arrange var handler = new Mock <IValidationErrorHandler>(MockBehavior.Strict); var provider = new Mock <IProvideLookupDetails>(MockBehavior.Strict); provider .Setup(x => x.Contains(LookupSimpleKey.FINTYPE, Moq.It.IsAny <int>())) .Returns(true); var sut = new FINTYPE_01Rule(handler.Object, provider.Object); // act var result = sut.ConditionMet(GetFinancialSupport(candidates)); // assert Assert.True(result); handler.VerifyAll(); provider.VerifyAll(); }