Esempio n. 1
0
        public void when_a_condition_is_false_the_validation_rule_should_not_be_run()
        {
            var testClass = new TestClass(2, 2);

            var validationReport = new ConditionalValidator(false).Validate(testClass);

            validationReport.IsValid.ShouldBeTrue();
        }
Esempio n. 2
0
        public void when_a_condition_is_true_the_validation_rule_should_be_run()
        {
            var testClass = new TestClass(1, 2);

            var validationReport = new ConditionalValidator(true).Validate(testClass);

            validationReport.IsValid.ShouldBeFalse();
        }
Esempio n. 3
0
        private void AssertStandardValidators(
            IVMDescriptor descriptor,
            ValidationStep step,
            PathDefinition targetPath,
            IValidator validator,
            Func <ValidatorConditionArgs <EmployeeVM, IViewModel <ProjectVMDescriptor> >, bool> condition1 = null,
            Func <ValidatorConditionArgs <EmployeeVM, IViewModel <ProjectVMDescriptor> >, bool> condition2 = null
            )
        {
            IValidator expectedValidator = validator;

            if (condition2 != null)
            {
                expectedValidator = new ConditionalValidator(
                    new DelegateValidatorCondition <EmployeeVM, IViewModel <ProjectVMDescriptor> >(condition2, 0),
                    expectedValidator
                    );
            }

            if (condition1 != null)
            {
                expectedValidator = new ConditionalValidator(
                    new DelegateValidatorCondition <EmployeeVM, IViewModel <ProjectVMDescriptor> >(condition1, 0),
                    expectedValidator
                    );
            }

            expectedValidator = new ConditionalValidator(
                new ValidationStepCondition(step),
                new ConditionalValidator(
                    new ValidationTargetCondition(targetPath),
                    expectedValidator
                    )
                );

            ValidatorExecutorBehavior expectedBehavior = new ValidatorExecutorBehavior();

            expectedBehavior.AddValidator(expectedValidator);

            Assert.AreEqual(
                expectedBehavior.ToString(),
                descriptor
                .Behaviors
                .GetNextBehavior <ValidatorExecutorBehavior>()
                .ToString()
                );
        }
Esempio n. 4
0
 public void SetUp()
 {
     this.validator = new ConditionalValidator();
 }