Ejemplo n.º 1
0
 def perform(self):
     parser = MazeParser(self.maze_file)
     #Parser returns Maze named-tuple
     parsed_maze = parser.perform()
     solver = MazeSolver(parsed_maze)
     solved_maze_coords = solver.perform()
     if not solved_maze_coords:
         #Solver has failed to solve the maze
         return
     plotter = MazePlotter(parsed_maze.maze_map, solved_maze_coords)
     return plotter.perform()
Ejemplo n.º 2
0
 def test_solves_valid_maze(self):
     parser = MazeParser('mazes/maze_pass.txt')
     parsed_maze = parser.perform()
     solver = MazeSolver(parsed_maze)
     self.assertTrue(solver.perform())
Ejemplo n.º 3
0
 def test_returns_from_unsolvable_maze(self):
     parser = MazeParser('mazes/maze_fail_no_solution.txt')
     parsed_maze = parser.perform()
     solver = MazeSolver(parsed_maze)
     self.assertFalse(solver.perform())