static void Main(string[] args) { TestData testData = TestData.TestMaze4(); Object[,] mazeObjects = testData.MazeConstructionObjects; int numberOfRows = (mazeObjects.GetLength(0) - 1) / 2; int numberOfColumn = (mazeObjects.GetLength(1) - 1) / 2; int startingRow = testData.StartingRow; int startingColumn = testData.StartingColumn; int destinationRow = testData.DestinationRow; int destinationColumn = testData.DestinationColumn; try { Maze maze = new Maze(numberOfRows, numberOfColumn, startingRow, startingColumn, destinationRow, destinationColumn, mazeObjects); Mouse mouse = new Mouse(maze); var printer = new MazePrinter(mouse, maze); mouse.SolveMaze(); Console.WriteLine("You have succeeded!"); printer.PrintDirectionsTakenByMouseToReachDestination(); } catch (Exception e) { Console.WriteLine(e.Message); Console.WriteLine("You have failed!"); } }
public void Test_PrintMaze() { var mazeFilePath = Path.Combine(TestContext.CurrentContext.TestDirectory, @"TestMazes\small_maze.txt"); var mazePuzzle = new MazePuzzle(mazeFilePath); var escapeRoute = MazeRunner.SolveMaze(mazePuzzle.Maze, mazePuzzle.StartPoint, mazePuzzle.EndPoint); var strMaze = MazePrinter.PrintMaze(mazePuzzle.Maze, escapeRoute); Console.WriteLine(strMaze); }