def test_BettingRound_called_to_blind(self): """Test of BettingRound with calls around to blind. Blind should still have option to act.""" players = [ Player(stack=500), Player(stack=100), Player(stack=1000), Player(stack=700) ] table = Table() table.seat_players(players, in_order=True) message_handler = MessageHandler(table, self.console) pot = Pot(players) round = BettingRound(table, pot, message_handler) action_is_on = players[0] round.set_action(action_is_on) # Player 0 50 blind, fold, fold, fold round.process_action(Action.new_blind(50)) round.process_action(Action.new_fold()) round.process_action(Action.new_call(50)) round.process_action(Action.new_fold()) # Back on blind self.assertFalse(round.is_pot_good()) round.process_action(Action.new_check()) self.assertTrue(round.is_pot_good()) round.sweep_bets_into_pot() # At this point we should have a pot of 50 with only player # 0 contending. pot = round.pot self.assertEqual(pot.amount, 100) self.assertListEqual(pot.contending_players, [players[0], players[2]]) self.assertIsNone(pot.parent)
def test_Action_check(self): """Test check Action""" action = Action.new_check() self.assertIsNotNone(action) self.assertTrue(action.is_check()) self.assertEqual(action.amount, 0) self.assertFalse(action.is_all_in()) self.assertEqual(str(action), "check")
def test_option_ActionRequest(self): """Test ActionRequest for option""" amount = 50 request = ActionRequest.new_option_request(amount) self.assertIsNotNone(request) self.assertTrue(request.is_option_request()) self.assertEqual(request.raise_amount, amount) request.validate_action(Action.new_check()) request.validate_action(Action.new_raise(amount)) with self.assertRaises(InvalidActionException): request.validate_action(Action.new_blind(amount+1)) with self.assertRaises(InvalidActionException): request.validate_action(Action.new_call(amount)) with self.assertRaises(InvalidActionException): request.validate_action(Action.new_bet(amount)) with self.assertRaises(InvalidActionException): request.validate_action(Action.new_fold())