public void SolveMaze_SuperSimpleMazeCannotBeSolved_ThrowsException() { const string mazeImageFilePath = @"..\..\..\TestingMazes\SuperSimpleMazeCannotBeSolved.png"; var mazeReader = new MazeReaderUtility(mazeImageFilePath); var mazeToTest = mazeReader.ReadInMazeImage(); var mazeSolution = new BreadthFirstMazeSolution(mazeToTest); mazeSolution.SolveMaze(); }
public void SolveMaze_UltraTinyMaze_NumberOfStepsToSolveAsExpected() { const string mazeImageFilePath = @"..\..\..\TestingMazes\UltraTinyMaze.png"; var mazeReader = new MazeReaderUtility(mazeImageFilePath); var mazeToTest = mazeReader.ReadInMazeImage(); var mazeSolution = new BreadthFirstMazeSolution(mazeToTest); mazeSolution.SolveMaze(); var stepsToSolveMaze = mazeSolution.PathToSolveMaze.Count(); Assert.AreEqual(stepsToSolveMaze, 95); var gridpointsVisited = mazeSolution.MazeToSolve.MazeGridpoints.Values.Count(m => m.HasBeenVisited); Assert.AreEqual(gridpointsVisited, 180); }