public void ValidateDoesNotThrowIfStatMatchersContainReferences() { var statMatchersList = new[] { MockStatMatchers(new[] { "SMatchers1" }, "({SMatchers2})"), MockStatMatchers(new[] { "SMatchers2" }, "({Matchers1})"), }; Assert.DoesNotThrow(() => ReferenceValidator.Validate(DefaultReferencedMatchersList, statMatchersList)); }
public void ValidateDoesNotThrowIfStatMatchersNamesAreNotUnique() { var statMatchersList = new[] { MockStatMatchers(new[] { "SMatchers1" }), MockStatMatchers(new[] { "SMatchers1" }) }; Assert.DoesNotThrow(() => ReferenceValidator.Validate(DefaultReferencedMatchersList, statMatchersList)); }
public void ValidateThrowsIfReferencedMatchersNamesAreNotUnique() { var referencedMatchersList = new[] { MockReferencedMatchers("Matchers1", "b"), MockReferencedMatchers("Matchers1", "a"), }; Assert.Throws <ParseException>(() => ReferenceValidator.Validate(referencedMatchersList, DefaultStatMatchersList)); }
public void ValidateThrowsIfReferencedMatchersContainsReferences() { var referencedMatchersList = new[] { MockReferencedMatchers("Matchers1", "text ({Matchers2}) stuff"), MockReferencedMatchers("Matchers2", "a"), }; Assert.Throws <ParseException>(() => ReferenceValidator.Validate(referencedMatchersList, DefaultStatMatchersList)); }
public void ValidateThrowsIfStatMatchersContainCyclicalReferences() { var statMatchersList = new[] { MockStatMatchers(new[] { "SMatchers1" }, "({SMatchers2})"), MockStatMatchers(new[] { "SMatchers2" }, "({SMatchers1})") }; Assert.Throws <ParseException>(() => ReferenceValidator.Validate(DefaultReferencedMatchersList, statMatchersList)); }
public Results Conclude() { var trashValidator = new TrashValidator(); var trashResult = trashValidator.Validate(_questions); if (trashResult.IsValid) { return(Results.Trash); } var referenceValidator = new ReferenceValidator(); var referenceResult = referenceValidator.Validate(_questions); if (referenceResult.IsValid) { return(Results.Reference); } var maybeValidator = new MaybeValidator(); var maybeResult = maybeValidator.Validate(_questions); if (maybeResult.IsValid) { return(Results.MaybeLater); } var projectsValidator = new ProjectsValidator(); var projectsResult = projectsValidator.Validate(_questions); if (projectsResult.IsValid) { return(Results.Projects); } var nowValidator = new NowValidator(); var nowResult = nowValidator.Validate(_questions); if (nowResult.IsValid) { return(Results.DoItNow); } var rightPersonValidator = new RightPersonValidator(); var rightPersonResult = rightPersonValidator.Validate(_questions); if (rightPersonResult.IsValid) { return(Results.Delegate); } var calendarValidator = new CalendarValidator(); var calendarResult = calendarValidator.Validate(_questions); if (calendarResult.IsValid) { return(Results.Calendar); } var nextActionValidator = new NextActionValidator(); var nextActionResult = nextActionValidator.Validate(_questions); if (nextActionResult.IsValid) { return(Results.NextAction); } return(Results.None); }