Beispiel #1
0
    def test_yaniv_assaf_action(self):
        players = [
            YanivPlayer(0, None),
            YanivPlayer(1, None),
            YanivPlayer(2, None),
        ]
        players[0].hand = [
            Card("S", "A"),
        ]
        players[1].hand = [
            Card("H", "A"),
        ]
        players[2].hand = [
            Card("D", "A"),
        ]

        rnd = YanivRound(None, 3, None)
        rnd.current_player = 2
        rnd._perform_yaniv_action(players)

        self.assertEqual(rnd.is_over, True)
        self.assertEqual(rnd.winner, 1)
        self.assertEqual(rnd.scores, [1, 0, 31])
Beispiel #2
0
    def test_yaniv_discard_action(self):
        players = [
            YanivPlayer(0, None),
        ]
        players[0].hand = [
            Card("S", "3"),
            Card("H", "3"),
            Card("D", "5"),
            Card("D", "6"),
            Card("D", "7"),
        ]

        rnd = YanivRound(None, 3, None)
        rnd.current_player = 0
        rnd.known_cards[0] = [players[0].hand[1]]

        rnd._perform_discard_action(players, "S3H3")
        self.assertEqual(utils.cards_to_str(players[0].hand), "D5D6D7")
        self.assertEqual(utils.cards_to_str(rnd.discard_pile[-1]), "H3S3")
        self.assertEqual(rnd.known_cards[0], [])

        rnd._perform_discard_action(players, "D5D6D7")
        self.assertEqual(utils.cards_to_str(players[0].hand), "")
        self.assertEqual(utils.cards_to_str(rnd.discard_pile[-1]), "D5D6D7")