Beispiel #1
0
    def test_take_card__reduces_deck(self):
        deck = Deck()
        deck._cards = [Card(3, "Test"), Card(2, "Test")]
        person = HumanPlayer("Sam")

        person.take_card(deck)

        self.assertEqual(1, len(deck))
Beispiel #2
0
    def test_take_card__removes_card(self):
        deck = Deck()
        deck._cards = [Card(3, "Test"), Card(2, "Test")]
        person = HumanPlayer("Sam")

        person.take_card(deck)

        card = person.cards[0]
        self.assertNotIn(card, deck)
Beispiel #3
0
    def test_take_card__adds_to_hand(self):
        deck = Deck()
        deck._cards = [Card(3, "Test"), Card(2, "Test")]
        person = HumanPlayer("Sam")

        self.assertEqual(0, len(person.cards))
        person.take_card(deck)

        self.assertEqual(1, len(person.cards))
Beispiel #4
0
    def test_deal_hand(self):
        mocked_deck = Deck()
        mocked_deck._cards = list(reversed([_ACE_OF_HEARTS, _ACE_OF_SPADES, _ACE_OF_HEARTS,
                                            _ACE_OF_CLUBS, _SEVEN_OF_HEARTS, _SEVEN_OF_CLUBS]))
        game = Game(mocked_deck)
        hand = game._deal_hand()
        self.assertEqual(HandType.SET, hand.get_hand_type())
        self.assertEqual(Rank.ACE, hand.get_hand_type_rank())

        hand = game._deal_hand()
        self.assertEqual(HandType.PAIR, hand.get_hand_type())
        self.assertEqual(Rank.SEVEN, hand.get_hand_type_rank())
        self.assertEqual(Rank.ACE, hand.get_high_card_rank())