def test_pot_three_players_end_round(): players = [] for i in xrange(3): player = Player(1000) player.position = i players.append(player) pot = Pot(range(3)) assert not pot.round_done() pot.receive_bet(5, players[0]) assert not pot.round_done() pot.receive_bet(10, players[1]) assert not pot.round_done() pot.receive_bet(10, players[2]) assert not pot.round_done() pot.make_ineligible_to_win(0) # Player 0 folds assert pot.round_done() assert pot.round_bets == {1: 10, 2: 10} assert pot.chips == 5 pot.end_round() assert pot.chips == 25 assert pot.round_bets == {1: None, 2: None}
def test_pot_three_players_bad_fold(): players = [] for i in xrange(3): player = Player(1000) player.position = i players.append(player) pot = Pot(range(3)) assert not pot.round_done() pot.receive_bet(5, players[0]) assert not pot.round_done() pot.make_ineligible_to_win(1) assert not pot.round_done() pot.receive_bet(10, players[2]) assert not pot.round_done() pot.receive_bet(5, players[0]) # Player 0 calls assert pot.round_done() assert pot.round_bets == {0: 10, 2: 10} assert pot.chips == 0 try: pot.make_ineligible_to_win(1) except PotException as e: assert str(e) == 'Position 1 is already not eligible to win' else: assert False