public void IDataWarningInfo_FieldWithWarning() { var obj = new ValidationTestModel(); var validation = (IValidatableModel)obj; obj.WarningWhenEmpty = string.Empty; Assert.IsTrue(validation.HasWarnings); Assert.IsFalse(string.IsNullOrEmpty(((IDataWarningInfo)obj)["WarningWhenEmpty"])); obj.WarningWhenEmpty = "undo"; Assert.IsFalse(validation.HasWarnings); Assert.IsTrue(string.IsNullOrEmpty(((IDataWarningInfo)obj)["WarningWhenEmpty"])); }
public void IDataErrorInfo_FieldWithError() { var obj = new ValidationTestModel(); var validation = (IValidatableModel)obj; obj.ErrorWhenEmpty = string.Empty; Assert.IsTrue(validation.HasErrors); Assert.IsFalse(string.IsNullOrEmpty(((IDataErrorInfo)obj)["ErrorWhenEmpty"])); obj.ErrorWhenEmpty = "undo"; Assert.IsFalse(validation.HasErrors); Assert.IsTrue(string.IsNullOrEmpty(((IDataErrorInfo)obj)["ErrorWhenEmpty"])); }
public void HidesTheBusinessRuleWarningsWhenTrue() { var obj = new ValidationTestModel(); var validation = obj; obj.HideValidationResults = true; obj.BusinessRuleWarningWhenEmpty = string.Empty; Assert.IsFalse(validation.HasWarnings); Assert.AreEqual(string.Empty, ((IDataWarningInfo)obj).Warning); obj.HideValidationResults = false; Assert.AreNotEqual(string.Empty, ((IDataWarningInfo)obj).Warning); }
public void HidesTheFieldErrorsWhenTrue() { var obj = new ValidationTestModel(); var validation = obj; obj.HideValidationResults = true; obj.ErrorWhenEmpty = string.Empty; Assert.IsFalse(validation.HasErrors); Assert.AreEqual(string.Empty, ((IDataErrorInfo)obj)["ErrorWhenEmpty"]); obj.HideValidationResults = false; Assert.AreNotEqual(string.Empty, ((IDataErrorInfo)obj)["ErrorWhenEmpty"]); }
public void INotifyDataWarningInfo_EmptyString() { var obj = new ValidationTestModel(); var validation = (IValidatableModel)obj; bool isInvoked = false; int count = 0; ((INotifyDataWarningInfo)obj).WarningsChanged += (sender, e) => { Assert.AreEqual(string.Empty, e.PropertyName); isInvoked = true; }; isInvoked = false; obj.BusinessRuleWarningWhenEmpty = string.Empty; Assert.IsTrue(validation.HasWarnings); Assert.IsTrue(isInvoked); count = 0; foreach (string warning in ((INotifyDataWarningInfo)obj).GetWarnings(string.Empty)) { count++; Assert.IsFalse(string.IsNullOrEmpty(warning)); } Assert.AreEqual(1, count); isInvoked = false; obj.BusinessRuleWarningWhenEmpty = "undo"; Assert.IsFalse(validation.HasWarnings); Assert.IsTrue(isInvoked); count = 0; foreach (string warning in ((INotifyDataWarningInfo)obj).GetWarnings(string.Empty)) { count++; Assert.IsFalse(string.IsNullOrEmpty(warning)); } Assert.AreEqual(0, count); }
public void INotifyDataErrorInfo_Null() { var obj = new ValidationTestModel(); var validation = (IValidatableModel)obj; bool isInvoked = false; int count = 0; ((INotifyDataErrorInfo)obj).ErrorsChanged += (sender, e) => { Assert.AreEqual(string.Empty, e.PropertyName); isInvoked = true; }; isInvoked = false; obj.BusinessRuleErrorWhenEmpty = string.Empty; Assert.IsTrue(validation.HasErrors); Assert.IsTrue(isInvoked); count = 0; foreach (string error in ((INotifyDataErrorInfo)obj).GetErrors(null)) { count++; Assert.IsFalse(string.IsNullOrEmpty(error)); } Assert.AreEqual(1, count); isInvoked = false; obj.BusinessRuleErrorWhenEmpty = "undo"; Assert.IsFalse(validation.HasErrors); Assert.IsTrue(isInvoked); count = 0; foreach (string error in ((INotifyDataErrorInfo)obj).GetErrors(null)) { count++; Assert.IsFalse(string.IsNullOrEmpty(error)); } Assert.AreEqual(0, count); }