public void NotNullOrEmptyValidator_PassesNotNull() { IValidationRule rule = ValidationBuilder.Create().NotNullOrEmpty().Validator; var result1 = rule.Validate("dsfj;kdsf"); var result2 = rule.Validate(new object()); Assert.True(result1.IsValid); Assert.True(result2.IsValid); }
public void NotNullOrEmptyValidator_FailsForNullOrEmpty() { IValidationRule rule = ValidationBuilder.Create().NotNullOrEmpty().Validator; var result1 = rule.Validate(null); var result2 = rule.Validate(string.Empty); var result3 = rule.Validate(""); Assert.False(result1.IsValid); Assert.False(result2.IsValid); Assert.False(result3.IsValid); }
public void LengthValidator_ValidateExact() { IValidationRule rule = ValidationBuilder.Create().Length(3).Validator; var result1 = rule.Validate("124"); var result2 = rule.Validate("1234"); var result3 = rule.Validate(123); var result4 = rule.Validate("1"); Assert.True(result1.IsValid); Assert.False(result2.IsValid); Assert.False(result3.IsValid); Assert.False(result4.IsValid); }
public void LengthValidator_ValidateRange() { IValidationRule rule = ValidationBuilder.Create().Length(3, 5).Validator; var result1 = rule.Validate("12"); var result2 = rule.Validate("123"); var result3 = rule.Validate("1234"); var result4 = rule.Validate("12345"); var result5 = rule.Validate("123456"); Assert.False(result1.IsValid); Assert.True(result2.IsValid); Assert.True(result3.IsValid); Assert.True(result4.IsValid); Assert.False(result5.IsValid); }
public void PathValidator_DirectoryValidation() { IValidationRule rule = ValidationBuilder.Create().Directory().Validator; string dir = "TestDirectory"; Directory.CreateDirectory(dir); var result1 = rule.Validate(dir); Assert.True(result1.IsValid); Directory.Delete(dir); var result2 = rule.Validate(dir); Assert.False(result2.IsValid); }
public static ValidatorGroup GetValidators(this PropertyInfo info) { var attributes = info.GetCustomAttributes <ValidationAttribute>(); if (attributes.Any() == false) { return(null); } var builder = ValidationBuilder.Create(); foreach (var validator in attributes) { builder.Custom(validator.GetValidator()); } return(builder.Validator); }
public void PathValidator_FileValidation() { IValidationRule rule = ValidationBuilder.Create().File().Validator; string filename = "test.txt"; var stream = File.Create(filename); stream.Close(); stream.Dispose(); var result1 = rule.Validate(filename); Assert.True(result1.IsValid); File.Delete(filename); var result2 = rule.Validate(filename); Assert.False(result2.IsValid); }