def test_run_for_score(seed, playback): # Make default player bot compiler = Compiler() bot = Game.default_prog_for_bot(GameLanguage.LITTLEPY) prog = compiler.compile(bot) prog.name = "Mock" # get computer players players = [] for _ in range(Game.get_number_of_players() - 1): players += [Game.default_prog_for_computer()()] room = Room([prog] + players, seed=seed) runner = GameRunner(Game) runner.run(room, playback=playback)
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
def test_crash_with_path_vars(mocker): game = Tron(None) mocker.patch.object(game, 'place_bike') x, y = 1, 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() 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.
def test_wall5_vars(mocker): game = Tron(None) mocker.patch.object(game, 'place_bike') x, y = 0, game.MAP_HEIGHT-1 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, "s2x": -1, "s2y": 0} 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