示例#1
0
def test_crash_vars(mocker):
    game = Tron(None)
    mocker.patch.object(game, 'place_bike')
    x, y = 0, 0
    prog = MockProg()

    game.init_board()
    game.place_bike.return_value = Bike((x, y), chr(239), prog, game.get_move_consts())
    player = game.create_new_player(prog)
    game.start_game()
    prog.key = "a"  # move left

    player.run_turn(None)
    game.do_turn()
    assert player.derezzed
    assert game.get_map_array() == make_tron_map(game)  # make sure the player has been removed from the map.
示例#2
0
def test_start_vars_2(mocker):
    game = Tron(None)
    mocker.patch.object(game, 'place_bike')
    x, y = 4, 5
    prog = MockProg()

    game.init_board()
    game.place_bike.return_value = Bike((x, y), chr(239), prog, game.get_move_consts())
    player = game.create_new_player(prog)
    game.start_game()
    prog.key = "d"
    vars = game.get_vars(player)
    correct_vars = {**make_tron_sensors(game, player, default=0),
                    "height": game.MAP_HEIGHT,
                    "width": game.MAP_WIDTH,
                    "map": make_tron_map(game, (x, y))}

    assert vars == correct_vars
示例#3
0
def test_wall2_vars(mocker):
    game = Tron(None)
    mocker.patch.object(game, 'place_bike')
    x, y = 0, 0
    prog = MockProg()

    game.init_board()
    game.place_bike.return_value = Bike((x, y), chr(239), prog, game.get_move_consts())
    player = game.create_new_player(prog)
    game.start_game()
    prog.key = "d"  # move right
    prog.state = {"s1x": 0, "s1y": -1}

    player.run_turn(None)
    game.do_turn()
    vars = game.get_vars(player)

    correct_vars = {**make_tron_sensors(game, player, default=game.TAKEN, s1=game.WALL),
                    "height": game.MAP_HEIGHT,
                    "width": game.MAP_WIDTH,
                    "map": make_tron_map(game, (x+1, y), (x, y))}

    assert vars == correct_vars