Example #1
0
def test_everyone_goes_all_in_for_15_from_beginning(collector_four_players):
    collector, players = collector_four_players
    for player in players:
        player.award_chips(15)
    collector.get_blind_wagers()
    for player in players:
        player.bet(15 - player.check_wager())
    for i in range(4):
        collector.ask_next_player_for_wager()
        collector.collect_all_bets()
    assert len(collector.pots) == 1
    assert collector.pots[0].size == 60
Example #2
0
def test_one_player_all_ins_and_other_players_call(collector_four_players):
    collector, players = collector_four_players
    for player in players[:3]:
        player.award_chips(20)
    players[3].award_chips(13)
    collector.get_blind_wagers()
    for player in players:
        player.bet(13 - player.check_wager())
    for i in range(4):
        collector.ask_next_player_for_wager()
    collector.collect_all_bets()
    assert len(collector.pots) == 1
    assert collector.pots[0].size == 13 * 4
Example #3
0
def test_everyone_all_ins_with_different_amounts(collector_four_players):
    collector, players = collector_four_players
    for index, player in enumerate(players):
        player.award_chips(5 * (index + 1))
    collector.get_blind_wagers()
    for player in players:
        player.bet(player.chip_count)
    for i in range(20):
        collector.ask_next_player_for_wager()
    collector.collect_all_bets()
    assert len(collector.pots) == 4
    assert collector.pots[0].size == 5 * 4
    assert collector.pots[1].size == 5 * 3
    assert collector.pots[2].size == 5 * 2
    assert collector.pots[3].size == 5
Example #4
0
def test_one_player_forces_others_to_all_in_without_doing_it_himself(
        collector_four_players):
    collector, players = collector_four_players
    for player in players:
        player.award_chips(15)
    players[3].award_chips(20)
    collector.get_blind_wagers()
    players[3].bet(35)
    for player in players[:3]:
        player.bet(15 - player.check_wager())
    for i in range(4):
        collector.ask_next_player_for_wager()
    collector.collect_all_bets()
    assert len(collector.pots) == 2
    assert collector.pots[0].size == 60
    assert collector.pots[1].size == 20
Example #5
0
def test_everyone_all_ins_with_different_amounts_and_pay_out(
        collector_four_players):
    collector, players = collector_four_players
    for index, player in enumerate(players):
        player.award_chips(5 * (index + 1))
    collector.get_blind_wagers()
    for player in players:
        player.bet(player.chip_count)
    for i in range(20):
        collector.ask_next_player_for_wager()
    collector.collect_all_bets()
    best_to_worst = [players[0], players[2], players[3], players[1]]
    collector.pay_out(best_to_worst)
    assert players[0].chip_count == 20
    assert players[2].chip_count == 25  # 15 + 10
    assert players[3].chip_count == 5
    assert players[1].chip_count == 0
Example #6
0
def test_one_player_all_ins_and_other_players_continue_betting(
        collector_four_players):
    collector, players = collector_four_players
    for player in players[1:]:
        player.award_chips(20)
    players[0].award_chips(17)
    collector.get_blind_wagers()
    for player in players:
        player.bet(17 - player.check_wager())
    for i in range(4):
        collector.ask_next_player_for_wager()
    for player in players:
        if not player.all_in:
            player.bet(3)
    collector.collect_all_bets()
    assert len(collector.pots) == 2
    assert collector.pots[0].size == 17 * 4
    assert collector.pots[1].size == 9