public void Validate_Throws_Exception_For_Invalid_Value() { var valdator = new RegexValidatorAttribute("aaabbbccc"); string value; valdator.Validate("the number twelve", "testing", null, out value); }
public void Validate_Allows_Valid_Value() { var valdator = new RegexValidatorAttribute("aaabbbccc"); string value; valdator.Validate("aaabbbccc", "testing", null, out value); }
public void CanUseAttributeAsValidationAttributeForValidValue() { ValidationAttribute attribute = new RegexValidatorAttribute("^a*$") { MessageTemplate = "template {1}" }; Assert.IsTrue(attribute.IsValid("aaaaaaaaaa")); }
public void ValidatingWithValidatorAttributeWithARulesetSkipsValidation() { ValidationAttribute attribute = new RegexValidatorAttribute("^a*$") { MessageTemplate = "template {1}", Ruleset = "some ruleset" }; Assert.IsTrue(attribute.IsValid("bbbbbb")); }
public void CanUseAttributeAsValidationAttribute() { ValidationAttribute attribute = new RegexValidatorAttribute("^a*$") { MessageTemplate = "template {1}" }; Assert.IsFalse(attribute.IsValid("bbbbbb")); Assert.AreEqual("template name", attribute.FormatErrorMessage("name")); }
public void AttributeWithPatternAndOptionsCreatesValidatorWithPatternDefaultMessageAndOptions() { ValidatorAttribute attribute = new RegexValidatorAttribute("pattern", RegexOptions.Multiline); Validator validator = ((IValidatorDescriptor)attribute).CreateValidator(null, null, null, null); Assert.IsNotNull(validator); RegexValidator regexValidator = validator as RegexValidator; Assert.IsNotNull(regexValidator); Assert.AreEqual("pattern", regexValidator.Pattern); Assert.AreEqual(RegexOptions.Multiline, regexValidator.Options.Value); Assert.AreEqual(Resources.RegexValidatorNonNegatedDefaultMessageTemplate, regexValidator.MessageTemplate); Assert.AreEqual(false, regexValidator.Negated); }
/// <summary> /// Gets the validator. /// </summary> /// <param name="control">The control.</param> /// <param name="attr">The attr.</param> /// <returns></returns> private static IValidatorCreator GetValidator(Control control, ValidatorAttribute attr) { RequiredValidatorAttribute reqAttr = attr as RequiredValidatorAttribute; if (reqAttr != null) { return(new RequiredValidatorCreator(reqAttr, control)); } LengthValidatorAttribute lengthAttr = attr as LengthValidatorAttribute; if (lengthAttr != null) { return(new LengthValidatorCreator(lengthAttr, control)); } RangeValidatorAttribute rangeAttr = attr as RangeValidatorAttribute; if (rangeAttr != null) { return(new RangeValidatorCreator(rangeAttr, control)); } RegexValidatorAttribute regexAttr = attr as RegexValidatorAttribute; if (regexAttr != null) { return(new RegexValidatorCreator(regexAttr, control)); } CompareValidatorAttribute compareAttr = attr as CompareValidatorAttribute; if (compareAttr != null) { return(new CompareValidatorCreator(compareAttr, control)); } if (attr is CustomValidatorAttribute) { return(null); } throw new ArgumentException("The attribute does not derive from ValidatorAttribute.", "attr"); }
public void AttributeWithPatternCreatesValidatorWithPatternDefaultMessageAndNoneOptionsAndNegated() { ValueValidatorAttribute attribute = new RegexValidatorAttribute("pattern"); attribute.Negated = true; Validator validator = ((IValidatorDescriptor)attribute).CreateValidator(null, null, null, null); Assert.IsNotNull(validator); RegexValidator regexValidator = validator as RegexValidator; Assert.IsNotNull(regexValidator); Assert.AreEqual("pattern", regexValidator.Pattern); Assert.AreEqual(RegexOptions.None, regexValidator.Options); Assert.AreEqual(Resources.RegexValidatorNegatedDefaultMessageTemplate, regexValidator.MessageTemplate); Assert.AreEqual(true, regexValidator.Negated); }
public void AttributeWithResourcePatternCreatesValidatorWithPatternDefaultMessageAndNoneOptions() { ValidatorAttribute attribute = new RegexValidatorAttribute(RegexResourceName1, typeof(Properties.Resources)); Validator validator = ((IValidatorDescriptor)attribute).CreateValidator(null, null, null, null); Assert.IsNotNull(validator); RegexValidator regexValidator = validator as RegexValidator; Assert.IsNotNull(regexValidator); Assert.AreEqual(null, regexValidator.Pattern); Assert.AreEqual(RegexOptions.None, regexValidator.Options); Assert.AreEqual(Resources.RegexValidatorNonNegatedDefaultMessageTemplate, regexValidator.MessageTemplate); Assert.AreEqual(RegexResourceName1, regexValidator.PatternResourceName); Assert.AreEqual(typeof(Properties.Resources), regexValidator.PatternResourceType); Assert.AreEqual(false, regexValidator.Negated); }
public void AttributeWithPatternOptionsAndMessageOverrideCreatesValidatorWithPatternOverridenMessageAndOptions() { ValidatorAttribute attribute = new RegexValidatorAttribute("pattern", RegexOptions.Multiline); attribute.MessageTemplate = "overriden message template"; Validator validator = ((IValidatorDescriptor)attribute).CreateValidator(null, null, null, null); Assert.IsNotNull(validator); RegexValidator regexValidator = validator as RegexValidator; Assert.IsNotNull(regexValidator); Assert.AreEqual("pattern", regexValidator.Pattern); Assert.AreEqual(RegexOptions.Multiline, regexValidator.Options.Value); Assert.AreEqual("overriden message template", regexValidator.MessageTemplate); Assert.AreEqual(false, regexValidator.Negated); }
public void AttributeWithResourcePatternAndOptionsAndMessageTemplateCreatesValidator() { ValidatorAttribute attribute = new RegexValidatorAttribute(RegexResourceName1, typeof(Properties.Resources), RegexOptions.Multiline); attribute.MessageTemplate = "overriden message template"; Validator validator = ((IValidatorDescriptor)attribute).CreateValidator(null, null, null, null); Assert.IsNotNull(validator); RegexValidator regexValidator = validator as RegexValidator; Assert.IsNotNull(regexValidator); Assert.AreEqual(null, regexValidator.Pattern); Assert.AreEqual(RegexOptions.Multiline, regexValidator.Options); Assert.AreEqual("overriden message template", regexValidator.MessageTemplate); Assert.AreEqual(RegexResourceName1, regexValidator.PatternResourceName); Assert.AreEqual(typeof(Properties.Resources), regexValidator.PatternResourceType); Assert.AreEqual(false, regexValidator.Negated); }
public void AttributeWithResourcePatternAndOptionsAndNegatedCreatesValidator() { ValueValidatorAttribute attribute = new RegexValidatorAttribute(RegexResourceName1, typeof(TestProperties.Resources), RegexOptions.Multiline); attribute.Negated = true; Validator validator = ((IValidatorDescriptor)attribute).CreateValidator(null, null, null); Assert.IsNotNull(validator); RegexValidator regexValidator = validator as RegexValidator; Assert.IsNotNull(regexValidator); Assert.AreEqual(null, regexValidator.Pattern); Assert.AreEqual(RegexOptions.Multiline, regexValidator.Options); Assert.AreEqual(Resources.RegexValidatorNegatedDefaultMessageTemplate, regexValidator.MessageTemplate); Assert.AreEqual(RegexResourceName1, regexValidator.PatternResourceName); Assert.AreEqual(typeof(TestProperties.Resources), regexValidator.PatternResourceType); Assert.AreEqual(true, regexValidator.Negated); }
public void AttributeWithResourcePatternAndMessageTemplateAndNegatedCreatesValidatorWithPatternDefaultMessageAndNoneOptions() { ValueValidatorAttribute attribute = new RegexValidatorAttribute(RegexResourceName1, typeof(TestProperties.Resources)); attribute.Negated = true; attribute.MessageTemplate = "overriden message template"; Validator validator = ((IValidatorDescriptor)attribute).CreateValidator(null, null, null); Assert.IsNotNull(validator); RegexValidator regexValidator = validator as RegexValidator; Assert.IsNotNull(regexValidator); Assert.AreEqual(null, regexValidator.Pattern); Assert.AreEqual(RegexOptions.None, regexValidator.Options); Assert.AreEqual("overriden message template", regexValidator.MessageTemplate); Assert.AreEqual(RegexResourceName1, regexValidator.PatternResourceName); Assert.AreEqual(typeof(TestProperties.Resources), regexValidator.PatternResourceType); Assert.AreEqual(true, regexValidator.Negated); }