public void AverageWordsLengthTest(TestData <string> testData) { InputPlanner planner = new InputPlanner(); using var console = new ConsoleMock(); planner.ScheduleLines(testData.Input); console.Schedule(planner); ReflectionHelper.ExecuteMain(subjectType); string actual = console.ReadOutputLines().Last(); Assert.AreEqual(testData.Expected, actual, testData.GetErrorMessage(actual)); }
public void SquareOf10By20ShouldBe200(int width, int height) { InputPlanner planner = new InputPlanner(); planner.ScheduleLine(width.ToString()); planner.ScheduleLine(height.ToString()); using var consoleMock = new ConsoleMock(); consoleMock.Schedule(planner); ReflectionHelper.ExecuteMain(subjectType); var expected = width * height; var actual = consoleMock.ReadOutputLines().Last(); Assert.AreEqual(expected.ToString(), actual, $"Площадь прямоугольника {width} x {height}. Ожидалось {expected}, но было {actual}"); }
public void SpruceShouldBeInOutput(int count) { InputPlanner planner = new InputPlanner(); planner.ScheduleLine(count.ToString()); using ConsoleMock console = new ConsoleMock(); console.Schedule(planner); ReflectionHelper.ExecuteMain(subjectType); string[] consoleOutput = console.ReadOutputLines(); int spruceFirstLine = consoleOutput .IndexOf(line => line.Count(ch => ch.Equals('*')) == 1); Assert.AreNotEqual(spruceFirstLine, -1, $"Вершина пирамидки не найдена"); string[] spruceActual = consoleOutput[spruceFirstLine..];
public void ProgramShouldHaveCorrectOutput(TestData <string> testData) { InputPlanner inputPlanner = new InputPlanner(); inputPlanner.ScheduleRead(testData.Input[0].ToCharArray()); using var console = new ConsoleMock(); console.Schedule(inputPlanner); ReflectionHelper.ExecuteMain(subjectType); string[] output = console.ReadOutputLines(); string actual = output.Last(); Assert.AreEqual(testData.Expected, actual, testData.GetErrorMessage(actual)); }
public void SpruceShouldBeInOutput(int count) { InputPlanner planner = new InputPlanner(); planner.ScheduleLine(count.ToString()); using ConsoleMock console = new ConsoleMock(); console.Schedule(planner); ReflectionHelper.ExecuteMain(subjectType); string[] consoleOutput = console.ReadOutputLines(); int spruceFirstLine = Array.IndexOf(consoleOutput, "*"); Assert.AreNotEqual(spruceFirstLine, -1, "Вершина треугольника не найдена"); string[] spruceActual = consoleOutput[spruceFirstLine..];