How to use the pelita.datamodel.CTFUniverse.create function in pelita

To help you get started, we’ve selected a few pelita examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github ASPP / pelita / test / test_graph.py View on Github external
def test_a_star2(self):
        test_layout = (
            """ ########
                #1#    #
                # # #0 #
                #      #
                ######## """ )
        universe = CTFUniverse.create(test_layout, 2)
        al = Graph(universe.free_positions())
        #Test distance to middle from both sides
        print(al.a_star(universe.bots[0].current_pos, universe.bots[1].current_pos))
        print(al.a_star(universe.bots[1].current_pos, universe.bots[0].current_pos))
        assert 7 == len(al.a_star(universe.bots[0].current_pos, universe.bots[1].current_pos))
        assert 7 == len(al.a_star(universe.bots[1].current_pos, universe.bots[0].current_pos))
github ASPP / pelita / test / test_graph.py View on Github external
def test_extended_adjacency_list(self):
        test_layout = (
        """ ##################
            #0#.  .  # .     #
            # #####    ##### #
            #     . #  .  .#1#
            ################## """)
        universe = CTFUniverse.create(test_layout, 2)
        al = Graph(universe.free_positions())

        adjacency_target = {(7, 3): [(7, 2), (7, 3), (6, 3)],
         (1, 3): [(1, 2), (2, 3), (1, 3)],
         (12, 1): [(13, 1), (12, 1), (11, 1)],
         (16, 2): [(16, 3), (16, 1), (16, 2)],
         (15, 1): [(16, 1), (15, 1), (14, 1)],
         (5, 1): [(6, 1), (5, 1), (4, 1)],
         (10, 3): [(10, 2), (11, 3), (10, 3), (9, 3)],
         (7, 2): [(7, 3), (7, 1), (8, 2), (7, 2)],
         (1, 2): [(1, 3), (1, 1), (1, 2)],
         (3, 3): [(4, 3), (3, 3), (2, 3)],
         (13, 3): [(14, 3), (13, 3), (12, 3)],
         (8, 1): [(8, 2), (8, 1), (7, 1)],
         (16, 3): [(16, 2), (16, 3)],
         (6, 3): [(7, 3), (6, 3), (5, 3)],
github ASPP / pelita / test / test_graph.py View on Github external
def test_a_star3(self):
        test_layout = (
            """
            ################################################################
            #0#                #    #         #                     #   #  #
            # ######### ######           #              #           ###    #
            # #            #   ######## ## ## #  #      #           #   #  #
            #   ############   # # #  #  #         ## ###############      #
            # #            # ### # #     # ###  ##        #         #### ###
            # ####### #### #   #   #  #  #       #                         #
            # #   1      #     ###   ##### ##      ############# ###########
            # #   #      # #   #   #     # ##    #   #                     #
            #    ######################### ##    ## ######### ##############"""
        )
        universe = CTFUniverse.create(test_layout, 2)
        al = Graph(universe.free_positions())
        #Test distance to middle from both sides
        assert 15 == len(al.a_star(universe.bots[0].current_pos, universe.bots[1].current_pos))
        assert 15 == len(al.a_star(universe.bots[1].current_pos, universe.bots[0].current_pos))
github ASPP / pelita / test / test_graph.py View on Github external
def test_bfs_to_self(self):
        test_layout = (
        """ ############
            #0.     #.1#
            ############ """)
        universe = CTFUniverse.create(test_layout, 2)
        al = Graph(universe.free_positions())
        assert [] == al.bfs((1,1), [(1, 1), (2, 1)])
github ASPP / pelita / test / test_graph.py View on Github external
def test_basic_adjacency_list(self):
        test_layout = (
        """ ######
            #    #
            ###### """)
        universe = CTFUniverse.create(test_layout, 0)
        al = Graph(universe.free_positions())
        target = { (4, 1): [(4, 1), (3, 1)],
                   (1, 1): [(2, 1), (1, 1)],
                   (2, 1): [(3, 1), (2, 1), (1, 1)],
                   (3, 1): [(4, 1), (3, 1), (2, 1)]}

        for val in al.values():
            val.sort()

        for val in target.values():
            val.sort()

        assert target == al
github ASPP / pelita / test / test_graph.py View on Github external
def len_of_shortest_path(layout):
            uni = CTFUniverse.create(layout, 2)
            al = Graph(uni.free_positions())
            path = al.a_star(uni.bots[0].current_pos, uni.bots[1].current_pos)
            return len(path)
github ASPP / pelita / test / test_graph.py View on Github external
def test_bfs_exceptions(self):
        test_layout = (
        """ ############
            #0.     #.1#
            ############ """)
        universe = CTFUniverse.create(test_layout, 2)
        al = Graph(universe.free_positions())
        with pytest.raises(NoPathException):
            al.bfs((1, 1), [(10, 1)])
        with pytest.raises(NoPathException):
            al.bfs((1, 1), [(10, 1), (9, 1)])
        with pytest.raises(NoPathException):
            al.bfs((0, 1), [(10, 1)])
        with pytest.raises(NoPathException):
            al.bfs((1, 1), [(11, 1)])
github ASPP / pelita / test / test_graph.py View on Github external
def test_a_star_exceptions(self):
        test_layout = (
        """ ############
            #0.     #.1#
            ############ """)
        universe = CTFUniverse.create(test_layout, 2)
        al = Graph(universe.free_positions())
        with pytest.raises(NoPathException):
            al.a_star((1, 1), (10, 1))
        with pytest.raises(NoPathException):
            al.a_star((0, 1), (10, 1))
        with pytest.raises(NoPathException):
            al.a_star((1, 1), (11, 1))
github ASPP / pelita / test / test_graph.py View on Github external
def test_a_star(self):
        test_layout = (
        """ ##################
            #02.# .  # .  #  #
            #   ###    ####1 #
            # ### . #  .  ##3#
            #                #
            ################## """)

        universe = CTFUniverse.create(test_layout, 4)
        al = Graph(universe.free_positions())

        #Test distance to middle from both sides
        assert 11 == len(al.a_star((1, 1), (7, 2)))
        assert 12 == len(al.a_star((2, 1), (7, 2)))
        assert 14 == len(al.a_star((16, 1), (7, 2)))
        assert 15 == len(al.a_star((15, 1), (7, 2)))    

        # Test basic assertions
        assert 0 == len(al.a_star((1, 1), (1, 1)))
        assert 1 == len(al.a_star((1, 1), (2, 1)))
        assert 1 == len(al.a_star((2, 1), (1, 1)))

        # Test distance to middle from both sides
        assert 11 == len(al.a_star((1, 1), (7, 2)))
        assert 12 == len(al.a_star((2, 1), (7, 2)))