public void WhenAllValuesSet_ValidationPasses() { var validator = new AtLeastOneNonNullPropertyValidationAttribute("FirstValue", "SecondValue"); var instance = new ForValidation { FirstValue = 1, SecondValue = 2 }; var context = new ValidationContext(instance, null, null); ValidationResult result = validator.GetValidationResult(instance, context); Assert.Same(ValidationResult.Success, result); }
public void WhenAllValuesNull_ValidationFails() { var validator = new AtLeastOneNonNullPropertyValidationAttribute("FirstValue", "SecondValue"); var instance = new ForValidation { FirstValue = null, SecondValue = null }; var context = new ValidationContext(instance, null, null); ValidationResult result = validator.GetValidationResult(instance, context); Assert.NotSame(ValidationResult.Success, result); Assert.NotNull(result.ErrorMessage); Assert.False(result.MemberNames.Except(new[] {"FirstValue", "SecondValue"}).Any()); }