Esempio n. 1
0
 def test_invalidhand3(self):
     # wheel (ace-to-five) straight flush
     cards_available = [
         Card(1, Suit.DIAMONDS),
         Card(5, Suit.DIAMONDS),
         Card(3, Suit.DIAMONDS),
         Card(5, Suit.DIAMONDS),
         Card(2, Suit.DIAMONDS)
     ]
     with self.assertRaises(ValueError):
         get_hand(cards_available)
Esempio n. 2
0
 def test_invalidhand1(self):
     # five of a kind and duplicated card
     cards_available = [
         Card(2, Suit.CLUBS),
         Card(2, Suit.DIAMONDS),
         Card(2, Suit.SPADES),
         Card(2, Suit.HEARTS),
         Card(2, Suit.CLUBS)
     ]
     with self.assertRaises(ValueError):
         get_hand(cards_available)
Esempio n. 3
0
 def test_invalidhand2(self):
     # two of clubs is repeated twice
     cards_available = [
         Card(2, Suit.CLUBS),
         Card(2, Suit.DIAMONDS),
         Card(2, Suit.CLUBS),
         Card(1, Suit.HEARTS),
         Card(1, Suit.CLUBS)
     ]
     with self.assertRaises(ValueError):
         get_hand(cards_available)
Esempio n. 4
0
 def test_onepair2(self):
     cards_available = [
         Card(10, Suit.CLUBS),
         Card(13, Suit.HEARTS),
         Card(10, Suit.DIAMONDS),
         Card(1, Suit.DIAMONDS),
         Card(7, Suit.CLUBS)
     ]
     hand = get_hand(cards_available)
     self.assertTrue(isinstance(hand, OnePair))
     self.assertEqual(10, hand.pair_num)
Esempio n. 5
0
 def test_flush(self):
     cards_available = [
         Card(1, Suit.CLUBS),
         Card(4, Suit.CLUBS),
         Card(7, Suit.CLUBS),
         Card(2, Suit.CLUBS),
         Card(11, Suit.CLUBS)
     ]
     hand = get_hand(cards_available)
     self.assertTrue(isinstance(hand, Flush))
     self.assertEqual(1, hand.high_card.get_num())
Esempio n. 6
0
 def test_straight_flush3(self):
     cards_available = [
         Card(5, Suit.CLUBS),
         Card(6, Suit.CLUBS),
         Card(7, Suit.CLUBS),
         Card(8, Suit.CLUBS),
         Card(9, Suit.CLUBS)
     ]
     hand = get_hand(cards_available)
     self.assertTrue(isinstance(hand, StraightFlush))
     self.assertEqual(9, hand.high_num)
Esempio n. 7
0
 def test_straight1(self):
     cards_available = [
         Card(5, Suit.CLUBS),
         Card(6, Suit.DIAMONDS),
         Card(7, Suit.DIAMONDS),
         Card(8, Suit.SPADES),
         Card(9, Suit.SPADES)
     ]
     hand = get_hand(cards_available)
     self.assertTrue(isinstance(hand, Straight))
     self.assertEqual(9, hand.high_num)
Esempio n. 8
0
 def test_highcard(self):
     cards_available = [
         Card(10, Suit.CLUBS),
         Card(13, Suit.HEARTS),
         Card(9, Suit.DIAMONDS),
         Card(1, Suit.DIAMONDS),
         Card(7, Suit.CLUBS)
     ]
     hand = get_hand(cards_available)
     self.assertTrue(isinstance(hand, HighCard))
     self.assertEqual(1, hand.high_card.get_num())
     self.assertEqual(13, hand.cards[1].get_num())
Esempio n. 9
0
 def test_fullhouse2(self):
     cards_available = [
         Card(2, Suit.CLUBS),
         Card(2, Suit.DIAMONDS),
         Card(2, Suit.SPADES),
         Card(1, Suit.HEARTS),
         Card(1, Suit.CLUBS)
     ]
     hand = get_hand(cards_available)
     self.assertTrue(isinstance(hand, FullHouse))
     self.assertEqual(2, hand.big)
     self.assertEqual(1, hand.small)
Esempio n. 10
0
 def test_quads1(self):
     cards_available = [
         Card(1, Suit.CLUBS),
         Card(1, Suit.DIAMONDS),
         Card(1, Suit.SPADES),
         Card(1, Suit.HEARTS),
         Card(13, Suit.CLUBS)
     ]
     hand = get_hand(cards_available)
     self.assertTrue(isinstance(hand, FourOfAKind))
     self.assertEqual(1, hand.big)
     self.assertEqual(13, hand.small)
Esempio n. 11
0
 def test_straight_flush2(self):
     # wheel (ace-to-five) straight flush
     cards_available = [
         Card(1, Suit.DIAMONDS),
         Card(5, Suit.DIAMONDS),
         Card(3, Suit.DIAMONDS),
         Card(4, Suit.DIAMONDS),
         Card(2, Suit.DIAMONDS)
     ]
     hand = get_hand(cards_available)
     self.assertTrue(isinstance(hand, StraightFlush))
     self.assertEqual(5, hand.high_num)
Esempio n. 12
0
 def test_straight_flush1(self):
     # nut (ten-to-ace) straight flush, a.k.a. royal flush
     cards_available = [
         Card(1, Suit.HEARTS),
         Card(11, Suit.HEARTS),
         Card(13, Suit.HEARTS),
         Card(10, Suit.HEARTS),
         Card(12, Suit.HEARTS)
     ]
     hand = get_hand(cards_available)
     self.assertTrue(isinstance(hand, StraightFlush))
     self.assertEqual(1, hand.high_num)
Esempio n. 13
0
 def test_straight3(self):
     # nut (ten-to-ace) straight
     cards_available = [
         Card(1, Suit.HEARTS),
         Card(11, Suit.SPADES),
         Card(13, Suit.DIAMONDS),
         Card(10, Suit.HEARTS),
         Card(12, Suit.DIAMONDS)
     ]
     hand = get_hand(cards_available)
     self.assertTrue(isinstance(hand, Straight))
     self.assertEqual(1, hand.high_num)
Esempio n. 14
0
 def test_straight2(self):
     # wheel (ace-to-five) straight
     cards_available = [
         Card(1, Suit.CLUBS),
         Card(5, Suit.HEARTS),
         Card(3, Suit.DIAMONDS),
         Card(4, Suit.SPADES),
         Card(2, Suit.SPADES)
     ]
     hand = get_hand(cards_available)
     self.assertTrue(isinstance(hand, Straight))
     self.assertEqual(5, hand.high_num)
Esempio n. 15
0
 def test_twopair2(self):
     cards_available = [
         Card(1, Suit.CLUBS),
         Card(13, Suit.HEARTS),
         Card(7, Suit.DIAMONDS),
         Card(1, Suit.DIAMONDS),
         Card(7, Suit.CLUBS)
     ]
     hand = get_hand(cards_available)
     self.assertTrue(isinstance(hand, TwoPair))
     self.assertEqual(1, hand.big)
     self.assertEqual(7, hand.small)
     self.assertEqual(13, hand.kicker)
Esempio n. 16
0
 def test_trips2(self):
     cards_available = [
         Card(10, Suit.CLUBS),
         Card(10, Suit.HEARTS),
         Card(10, Suit.DIAMONDS),
         Card(13, Suit.DIAMONDS),
         Card(7, Suit.DIAMONDS)
     ]
     hand = get_hand(cards_available)
     self.assertTrue(isinstance(hand, ThreeOfAKind))
     self.assertEqual(10, hand.num)
     self.assertEqual(2, len(hand.kickers))
     self.assertEqual(13, hand.kickers[0].get_num())
     self.assertEqual(7, hand.kickers[1].get_num())