示例#1
0
 def test_bigger_trump_wins(self):
     from Environment.Card import Card, is_new_winner
     old = Card("Red", 13)
     new = Card("Red", 12)
     trump = Card("Red", 1)
     first = Card("Red", 2)
     self.assertFalse(is_new_winner(new, old, trump, first))
     self.assertTrue(is_new_winner(old, new, trump, first))
示例#2
0
 def test_Z_win_trump(self):
     from Environment.Card import Card, is_new_winner
     old = Card("White", 14)
     new = Card("Red", 13)
     trump = Card("Red", 1)
     first = Card("Red", 2)
     self.assertFalse(is_new_winner(new, old, trump, first))
     self.assertTrue(is_new_winner(old, new, trump, first))
示例#3
0
 def test_first_color_wins(self):
     from Environment.Card import Card, is_new_winner
     old = Card("Red", 13)
     new = Card("Red", 12)
     invalid = Card("Green", 13)
     trump = Card("White", 0)
     first = Card("Red", 2)
     self.assertFalse(is_new_winner(new, old, trump, first))
     self.assertTrue(is_new_winner(old, new, trump, first))
     self.assertFalse(is_new_winner(invalid, old, trump, first))
示例#4
0
 def test_double_Z(self):
     from Environment.Card import Card, is_new_winner
     old = Card("White", 14)
     new = Card("White", 14)
     trump = Card("White", 0)
     first = Card("White", 0)
     self.assertFalse(is_new_winner(new, old, trump, first))
示例#5
0
 def play(self):
     winner = None
     num_players = len(self.players)
     trick_cards = []
     for i in range(num_players):
         player_index = (self.first_player + i) % num_players
         # Start with the first player and ascend, then reset at 0.
         player = self.players[player_index]
         played_card = player.play_card(self.trump_card, self.first_card,
                                        trick_cards, self.players,
                                        self.played_cards_in_game)
         trick_cards.append(played_card)
         if self.first_card is None and played_card.value != 0:
             self.first_card = played_card
         if winner is None or is_new_winner(
                 played_card, winner[0], self.trump_card, self.first_card):
             winner = (played_card, player_index)
         """self.logger.info("First card: {}\nTrump card: {}\nWinning: {}".format(self.first_card,
                                                                    self.trump_card,
                                                                    winner))"""
     return winner[1], trick_cards