Stash.get_winner fix

This commit is contained in:
Jakub Senderák
2020-03-28 07:19:29 +01:00
parent 9885571222
commit ada5d74fd4
2 changed files with 9 additions and 9 deletions
+3 -3
View File
@@ -220,13 +220,13 @@ class Stash():
def get_winner(self) -> int: def get_winner(self) -> int:
if not self.is_completed(): if not self.is_completed():
raise BridzikException('Nie je mozne urcit vitaza, kopka nie je dohrana.') raise BridzikException('Nie je mozne urcit vitaza, kopka nie je dohrana.')
winner = None winner = self.first_player
winning_card = self.get_first_card() winning_card = self.get_first_card()
for player_number in range(4): for player_number in range(4):
if self._cards[player_number].color == self.get_first_card().color \ if self._cards[player_number].color == self.get_first_card().color \
or self._cards[player_number].color == Card_colors['HEARTS']: or self._cards[player_number].color == Card_colors['HEARTS']:
if self._cards[player_number].color == winning_card.color \ if self._cards[player_number].color == winning_card.color:
and self._cards[player_number].value >= winning_card.value: if self._cards[player_number].value >= winning_card.value:
winning_card = self._cards[player_number] winning_card = self._cards[player_number]
winner = player_number winner = player_number
elif self._cards[player_number].color == Card_colors['HEARTS']: elif self._cards[player_number].color == Card_colors['HEARTS']:
+2 -2
View File
@@ -65,11 +65,11 @@ class StashCase(unittest.TestCase):
# highest heart takes the stash # highest heart takes the stash
heart_upper = Card(Card_colors['HEARTS'], Card_values['UPPER']) heart_upper = Card(Card_colors['HEARTS'], Card_values['UPPER'])
c4 = [leaves_8, leaves_lower, heart_7, heart_upper] c4 = [leaves_8, leaves_lower, heart_upper, heart_7]
s4 = Stash(0) s4 = Stash(0)
for i in range(4): for i in range(4):
s4.add_card(i, c4[i]) s4.add_card(i, c4[i])
self.assertEqual(s4.get_winner(), 3) self.assertEqual(s4.get_winner(), 2)
# test exceptions # test exceptions
s5 = Stash(3) s5 = Stash(3)