public void Builder_BuildTextValidatable_WithDefaultState() { var validatable = ValidatableBuilder.CreateText().Build(); Assert.IsNull(validatable.Value); Assert.IsTrue(validatable.IsValid); }
public void Validatable_ValidateMultiple_CorrectOrder() { var errorMessages = new[] { "ErrorMessage1", "ErrorMessage2", "ErrorMessage3", }; var validators = new[] { new FakeValidator <object> { Message = errorMessages[0], Order = 1 }, new FakeValidator <object> { Message = errorMessages[1], Order = 2 }, new FakeValidator <object> { Message = errorMessages[2], Order = 3 }, }; var validatable = ValidatableBuilder.Create <object>() .WithValidator(validators[0]) .WithValidator(validators[1]) .WithValidator(validators[2]) .Build(); for (int i = 0; i < validators.Length; i++) { validatable.Validate(); Assert.IsFalse(validatable.IsValid); Assert.AreEqual(errorMessages[i], validatable.ErrorMessage); validators[i].IsValid = true; } }
public void Validator_Empty_RetursTrue() { var validatable = ValidatableBuilder.CreateText().Build(); var validator = CreateValidator(validatable); var(success, _) = validator.Validate(null); Assert.IsTrue(success); }
public void Builder_BuildTextValidatable_WithValidator() { var validatable = ValidatableBuilder.CreateText() .WithValidator(new RequiredValidator("Required field.")) .Build(); Assert.AreEqual(1, validatable.Validators.Count()); }
public void Validator_DifferentString_ReturnsMessage() { var validatable = ValidatableBuilder.CreateText().Build(); var validator = CreateValidator(validatable); validatable.Value = "test1"; var(_, message) = validator.Validate("test"); Assert.AreEqual(ErrorMessage, message); }
public void Validator_DifferentString_ReturnsFalse() { var validatable = ValidatableBuilder.CreateText().Build(); var validator = CreateValidator(validatable); validatable.Value = "test1"; var(success, _) = validator.Validate("test"); Assert.IsFalse(success); }
public void Validator_SameString_ReturnsTrue() { var validatable = ValidatableBuilder.CreateText().Build(); var validator = CreateValidator(validatable); validatable.Value = "test"; var(success, _) = validator.Validate("test"); Assert.IsTrue(success); }
public void Validatable_Validate_ChangeIsValid() { var validatable = ValidatableBuilder.Create <object>() .WithValidator(new AlwaysFalseValidator()) .Build(); validatable.Validate(); Assert.IsFalse(validatable.IsValid); }
public void Builder_BuildTextValidatable_WithRequired() { var validatable = ValidatableBuilder.CreateText() .WithRequired("Required field.") .Build(); Assert.AreEqual(1, validatable.Validators.Count()); Assert.Contains(typeof(RequiredValidator), validatable.Validators.Select(v => v.GetType()).ToList()); }
TextValidatable MakeValidatable(IValidator <string> validator, bool validateOnChange) => ValidatableBuilder.CreateText() .WithValidator(validator) .SetValidateOnValueChanged(validateOnChange) .Build();
Validatable <object> MakeValidatable() => ValidatableBuilder.Create <object>().Build();