Example #1
0
        public void FieldTypeMismatchExcludesValidation()
        {
            //Arrange
            var set = new TargetSet();

            set.Add(new BadCustomer());
            var validation = _validations.Validations()
                             .Single(v => v.ContainingType == typeof(CustomerSimple) && v.Method.Name == nameof(CustomerSimple.SurnameIsMandatory));
            var candidates = CandidateSelector.AllPossible(validation, set);

            //Act
            var error = ValidationRuleChecker.Check(candidates[0]).Single();

            //Assert
            error.Message.Should().Contain("incorrect type");
        }
Example #2
0
        internal static IEnumerable <RequiredValidation> Select(IValidationCatalog catalog, TargetSet targetSet)
        {
            var allPossible = catalog.Validations().SelectMany(v => CandidateSelector.AllPossible(v, targetSet)).ToList();

            return(ValidationRuleChecker.Filter(allPossible));
        }