from amaz_lib.MazeGenerator import DepthFirstSearch from amaz_lib.Cell import Cell import numpy as np class TestDepth: def test_init_maze(self) -> None: maze = DepthFirstSearch.init_maze(10, 10) cell = Cell(value=15) maze[1][1].set_est(False) assert maze[0][0].value == cell.value def test_rand_cells(self) -> None: w_h = (10, 10) lst = DepthFirstSearch.add_cell_visited((0, 0), set()) rand_cells = DepthFirstSearch.random_cells(lst, (0, 1), w_h) assert len(rand_cells) == 2 def test_next_cell(self) -> None: coord = (5, 4) x, y = coord assert DepthFirstSearch.next_cell(x, y, "N") == (5, 3) def test_reverse_path(self) -> None: assert DepthFirstSearch.reverse_path("N") == "S" def test_BOS(self) -> None: path = {(0, 0), (0, 2), (1, 1)} assert len(DepthFirstSearch.random_cells(path, (0, 1), (10, 10))) == 0 def test_generator(self): maze = np.array([]) maze = DepthFirstSearch.generator(10, 10) assert maze.shape == (10, 10)