def test_two_pair_valuation(self): hand = [ Card(Suit.SPADES, Rank.JACK), Card(Suit.HEARTS, Rank.JACK), Card(Suit.DIAMONDS, Rank.EIGHT), Card(Suit.HEARTS, Rank.FOUR), Card(Suit.CLUBS, Rank.FOUR) ] self.assertEqual(poker_sim.value_hand(hand), 2002220)
def test_pair_valuation(self): hand = [ Card(Suit.HEARTS, Rank.KING), Card(Suit.HEARTS, Rank.THREE), Card(Suit.HEARTS, Rank.TWO), Card(Suit.DIAMONDS, Rank.TEN), Card(Suit.CLUBS, Rank.TEN) ] self.assertEqual(poker_sim.value_hand(hand), 1030032)
def test_straight_five_high_valuation(self): hand = [ Card(Suit.SPADES, Rank.ACE), Card(Suit.HEARTS, Rank.FIVE), Card(Suit.HEARTS, Rank.FOUR), Card(Suit.HEARTS, Rank.TWO), Card(Suit.HEARTS, Rank.THREE) ] self.assertEqual(poker_sim.value_hand(hand), 4000005) hand = [ Card(Suit.HEARTS, Rank.ACE), Card(Suit.HEARTS, Rank.FIVE), Card(Suit.HEARTS, Rank.FOUR), Card(Suit.HEARTS, Rank.TWO), Card(Suit.HEARTS, Rank.THREE) ] self.assertEqual(poker_sim.value_hand(hand), 8000005)
def test_best_hand_ties(self): com = [ Card(Suit.SPADES, Rank.ACE), Card(Suit.SPADES, Rank.KING), Card(Suit.SPADES, Rank.QUEEN), Card(Suit.SPADES, Rank.JACK), Card(Suit.SPADES, Rank.TEN) ] hole_cards = [[ Card(Suit.SPADES, Rank.TWO), Card(Suit.HEARTS, Rank.THREE) ], [Card(Suit.HEARTS, Rank.TWO), Card(Suit.DIAMONDS, Rank.FOUR)]] self.assertEqual(len(poker_sim.winning_hands(hole_cards, com)), 2)
def test_best_five_card_hand(self): com = [ Card(Suit.SPADES, Rank.ACE), Card(Suit.SPADES, Rank.KING), Card(Suit.SPADES, Rank.EIGHT), Card(Suit.HEARTS, Rank.KING), Card(Suit.DIAMONDS, Rank.NINE) ] hole_cards = [ Card(Suit.HEARTS, Rank.ACE), Card(Suit.HEARTS, Rank.EIGHT) ] self.assertEqual( set(poker_sim.best_five_card_hand(com + hole_cards)['cards']), { Card(Suit.SPADES, Rank.ACE), Card(Suit.SPADES, Rank.KING), Card(Suit.HEARTS, Rank.ACE), Card(Suit.HEARTS, Rank.KING), Card(Suit.DIAMONDS, Rank.NINE) })