private bool validateOnly(RunInput input, SystemRecycled systemRecycled) { var fixtures = buildFixturesWithOverrides(input, systemRecycled); var library = FixtureLibrary.From(fixtures); var specs = HierarchyLoader.ReadHierarchy(input.SpecPath).GetAllSpecs().ToArray(); SpecificationPostProcessor.PostProcessAll(specs, library); var errored = specs.Where(x => x.errors.Any()).ToArray(); if (errored.Any()) { ConsoleWriter.Write(ConsoleColor.Red, "Errors Detected!"); foreach (var errorSpec in errored) { ConsoleWriter.Write(ConsoleColor.Yellow, errorSpec.Filename); foreach (var error in errorSpec.errors) { Console.WriteLine($"{error.location.Join(" / ")} -> {error.message}"); } } return(false); } else { ConsoleWriter.Write(ConsoleColor.Green, "No validation errors or missing data detected in this project"); return(true); } }
public void PostProcessAll(IEnumerable <Specification> specifications) { var combined = FixtureLibrary.From(CombinedFixtures()); lock (_processorLock) { SpecificationPostProcessor.PostProcessAll(specifications, combined); } }
public override bool Execute(StorytellerInput input) { var running = RunningSystem.Create(input.System); using (running.System) { var library = input.BuildFixturesWithOverrides(running.RecycledMessage); var specs = HierarchyLoader.ReadHierarchy(input.SpecPath).GetAllSpecs().ToArray(); SpecificationPostProcessor.PostProcessAll(specs, running.Fixtures); var errored = specs.Where(x => x.errors.Any()).ToArray(); if (errored.Any()) { ConsoleWriter.Write(ConsoleColor.Red, "Errors Detected!"); foreach (var errorSpec in errored) { ConsoleWriter.Write(ConsoleColor.Yellow, errorSpec.Filename); foreach (var error in errorSpec.errors) { Console.WriteLine($"{error.location.Join(" / ")} -> {error.message}"); } } return(false); } else { ConsoleWriter.Write(ConsoleColor.Green, "No validation errors or missing data detected in this project"); return(true); } } }