示例#1
0
    def test_maze_size(self):
        # Find ud af hvorfor den fortæller disse to er ens.
        isEqual = True
        maze1 = model.convertMazeInt(model.DFS(model.make_empty_maze(5, 5)))
        maze2 = model.convertMazeInt(model.DFS(model.make_empty_maze(5, 5)))

        for idx1, val1 in enumerate(maze1):
            for idx2, val2 in enumerate(maze1[idx1]):
                if maze1[idx1][val2] == maze2[idx1][idx2]:
                    isEqual = False
                    continue

        self.assertEqual(isEqual, False)
示例#2
0
 def test_find_end_point(self):
     data = model.convert(model.make_empty_maze(10, 10))
     hasEndpoint = False
     for a in data:
         for b in a:
             if b == 2:
                 hasEndpoint = True
     # print(hasEndpoint)
     # print(data)
     self.assertTrue(hasEndpoint, "have found two")
示例#3
0
def solve_multiple_mazes(solution_alg, loop):
    maze_data = {}
    for size in range(5, 35, 5):
        maze_data[size] = {}
        empty_maze = m.make_empty_maze(size, size)
        maze = m.DFS(empty_maze)
        converted_maze = m.convert(maze)
        #m.save_maze("maze.csv", converted_maze)
        #loaded_maze = m.read_maze("maze.csv")
        times, moves = solve_with_algorithm(solution_alg, converted_maze, loop)
        maze_data[size]["moves"] = moves[0]
        maze_data[size]["avg_time"] = m.calc_average(times)
        maze_data[size]["min_time"] = min(times)
        maze_data[size]["max_time"] = max(times)
        view.print_result(maze_data, size)
        #view.print_times(times)
    return maze_data
示例#4
0
文件: controller.py 项目: Wulffn/Maze
def solveMaze(size):
    grid = model.convert(model.DFS(model.make_empty_maze(size, size)))
    start = time.time()
    model.search(1, 1, grid)
    end = time.time()

    #print(grid)

    count = 0
    flattened_list = [y for x in grid for y in x]

    for n in flattened_list:
        if n == 3 or n == 2:
            count += 1
    t = end - start

    lis = [t, count]

    return lis
示例#5
0
文件: controller.py 项目: Wulffn/Maze
def csvPrint():
    grid = model.convert(model.DFS(model.make_empty_maze(5, 5)))
    printer.printFile(grid)
    #model.search(1, 1, grid)
    printer.readFile()
示例#6
0
 def test_all_complete_maze(self):
     data = model.convertMazeInt(model.DFS(model.make_empty_maze(5, 5)))
     self.assertIsNotNone(data)