public void ShouldValidateWhenOnlyErrors() { //Reads multiple validations , all supposed to fail and returns a list of exactly the same number of errors. _segment = new StringValidator.Segment(new StringValidator(""), "1500", "integger"); var result = _segment.ExpectThat(Is.DateTime("ddMMyyyy"), Is.Matching(@"\dr"), Is.OneOf("a", "b", "c")).Read(); Assert.IsTrue(result.HasErrors); Assert.AreEqual(3, result.SegmentErrors.Count); CollectionAssert.AllItemsAreUnique(result.SegmentErrors); for (var i = 0; i < 3; i++) { var segmentError = result.SegmentErrors[i]; Assert.AreEqual("integger", segmentError.SegmentName); } }
public void ShouldValidateDateTime(string sampleValue, string exactFormat, bool shouldPass) { var result = Is.DateTime(exactFormat)(new Is(sampleValue, "sample")); PerformAssertions(sampleValue, shouldPass, result); }
public void ValidateEmptyInputAgainstRequirements() { const string detail = ""; var validatorResult = new StringValidator(detail) .CheckLengthRange(35, 44) .ForNext(2, "Street number").ExpectThat(Is.Valued, Is.Long) .ForNext(12, "Surname").ExpectThat(Is.Valued) .ForNext(11, "First Name/Initial").ExpectThat(Is.Optional) .ForNext(8, "Birthday").ExpectThat(Is.Valued, Is.DateTime("dd/MM/yy")) .ForNext(2, "Filler").ExpectThat(Is.EqualTo(new string(' ', 2))) .ForNext(9, "Monthly income").ExpectThat(Is.Valued, Is.Decimal) .Read(); Assert.AreEqual(validatorResult.SegmentErrors.Count, 7); Assert.IsTrue(validatorResult.HasErrors); }
public void ValidateWithNoErrors() { const string detail = " 2Einstein Albert 01/01/78 25000.50"; var validatorResult = new StringValidator(detail) .CheckLengthRange(35, 44) .ForNext(2, "Street number").ExpectThat(Is.Valued, Is.Long) .ForNext(12, "Surname").ExpectThat(Is.Valued) .ForNext(11, "First Name/Initial").ExpectThat(Is.Optional) .ForNext(8, "Birthday").ExpectThat(Is.Valued, Is.DateTime("dd/MM/yy")) .ForNext(2, "Filler").ExpectThat(Is.EqualTo(new string(' ', 2))) .ForNext(9, "Monthly income").ExpectThat(Is.Valued, Is.Decimal) .Read(); Assert.IsFalse(validatorResult.HasErrors); }