def testTrivialMaze(self): m = Maze() m.generator = TrivialMaze(4, 5) m.generate() self.assertTrue(self.boundary_is_solid(m.grid)) self.assertTrue(self.all_passages_open(m.grid)) self.assertTrue(self.all_corners_complete(m.grid))
def test_trivial_maze_serpentine(self): # run this test enough times to trip the different skewness parameters for _ in range(10): m = Maze() m.generator = TrivialMaze(4, 5, 'serpentine') m.generate() self.assertTrue(boundary_is_solid(m.grid)) self.assertTrue(all_passages_open(m.grid)) self.assertTrue(all_corners_complete(m.grid))
def test_trivial_maze_spiral(self): """ test that the trivial/spiral maze is reasonably sane """ m = Maze() m.generator = TrivialMaze(4, 5) m.generate() assert boundary_is_solid(m.grid) assert all_passages_open(m.grid) assert all_corners_complete(m.grid) assert all_corners_complete(m.grid)
def test_perturbation(self): m = Maze() m.generator = TrivialMaze(4, 5) m.generate() m.transmuters = [Perturbation()] m.transmute() self.assertTrue(boundary_is_solid(m.grid)) self.assertTrue(all_passages_open(m.grid)) self.assertTrue(all_corners_complete(m.grid))
def test_perturbation(self): """ Test the Perturbation algorithm leaves the maze in a solvable state """ m = Maze() m.generator = TrivialMaze(4, 5) m.generate() m.transmuters = [Perturbation()] m.transmute() assert boundary_is_solid(m.grid) assert all_passages_open(m.grid) assert all_corners_complete(m.grid)
def test_trivial_maze_serpentine(self): """ test that the trivial/spiral maze is reasonably sane when using the serpentine alternative run this test enough times to trip the different skewness parameters """ for _ in range(10): m = Maze() m.generator = TrivialMaze(4, 5, 'serpentine') m.generate() assert boundary_is_solid(m.grid) assert all_passages_open(m.grid) assert all_corners_complete(m.grid)