Example #1
0
    def test_buy_stock(self):

        board = Board._board_in_play([(S, ['5G', '6G']), (F, ['1A', '2A'])])
        players = [GameStatePlayer._test_gsplayer("foo", 200, dict([('American', 3), ('Festival', 5)]), set())]

        player = OrderedPlayer('foo')
        buys = player._buy_stock(GameState._game_state_in_progress(players, board))
        self.assertEquals(buys, ['American'])
Example #2
0
    def test_keeps(self):

        board = Board._board_in_play([(S, ['5G', '6G']), (F, ['1A', '2A'])])
        players = [GameStatePlayer._test_gsplayer("foo", 200, dict([('American', 3), ('Festival', 5)]), set())]

        player = RandomPlayer('foo')
        keeps = player.keep(GameState._game_state_in_progress(players, board), [A])
        self.assertEquals(len(keeps), 1)

        keeps = player.keep(GameState._game_state_in_progress(players, board), [A, F])
        self.assertEquals(len(keeps), 2)
Example #3
0
    def test_buy_stock(self):

        board = Board._board_in_play([(S, ['5G', '6G'])])
        players = [GameStatePlayer._test_gsplayer("foo", 6000, dict([('Sackson', 3)]), set(['2B']))]

        player = RandomPlayer('foo')
        buys = player._buy_stock(GameState._game_state_in_progress(players, board))

        self.assertTrue(len(buys)<=2)
        if len(buys)!=0:
            self.assertTrue(buys[0]!='Worldwide')
Example #4
0
    def test_tile_placement(self):
        board_singleton = Board._board_in_play(dict([]))
        players_singleton = [GameStatePlayer._test_gsplayer("foo", 6000, dict([]), set(['2B', '1A', '3D']))]
        player = OrderedPlayer('foo')

        tile, hotel, movetype = player._place_tile(GameState._game_state_in_progress(players_singleton, board_singleton))

        self.assertEquals(tile, '1A')
        self.assertEquals(hotel, None)
        self.assertEquals(movetype, SINGLETON)


        test_board = [(C, ['3E', '4E']), (I, ['5G', '3G', '4G'])]
        board_merge = Board._board_in_play(test_board)
        players_merge = [GameStatePlayer._test_gsplayer("foo", 6000, dict([]), set(['3F', '6G', '3H']))]

        tile, hotel, movetype = player._place_tile(GameState._game_state_in_progress(players_merge, board_merge))

        self.assertEquals(tile, '3F')
        self.assertEquals(hotel, "Imperial")
        self.assertEquals(movetype, MERGE)
Example #5
0
    def test_get_sellbacks_merge(self):
        player1 = GameStatePlayer._test_gsplayer("joe", 6000, {A:5}, [t5A])
        player2 = GameStatePlayer._test_gsplayer("obama", 6000, {S:4}, [])
        player3 = GameStatePlayer._test_gsplayer("kerry", 6000, {W:4}, [])
        player4 = GameStatePlayer._test_gsplayer("romney", 6000, {W:4}, [])
        player5 = GameStatePlayer._test_gsplayer("ryan", 6000, {W:4}, [])
        player6 = GameStatePlayer._test_gsplayer("mumblesmenino", 6000, {W:4}, [])
        board = Board._board_in_play([(A, [t4A, t3A]), (S, [t6A, t7A]), (W, [t5B, t5C])])
        gt = GameTree(GameState._game_state_in_progress([player1, player2, player3, player4, player5, player6], board))

        self.assertEqual(len(list(gt.get_sellbacks(t5A, A))), (2**2)**6)
Example #6
0
 def test_get_sellbacks_no_merge(self):
     gt = GameTree(GameState._game_state_in_progress([GameStatePlayer._test_gsplayer("joe", 6000, {A:5}, [t5A])],
                                                      Board()))
     self.assertEqual(gt.get_sellbacks(t5A, None), [{}])