Ejemplo n.º 1
0
class CardGame:

    # מספר הקלפים לכל שחקן+שחקנים
    def __init__(self, cardnumber=5):
        self.deck = Deckofcards()
        self.players = []
        self.cardnumber = cardnumber

        if type(cardnumber) != int:
            cardnumber == 5
        if cardnumber > 13:
            cardnumber == 13
        if cardnumber < 1:
            cardnumber == 5
        hag = randint(5000, 10000)

        for i in range(4):
            self.players.append(
                Player(input('enter name:'), hag, self.cardnumber))

    #וחלוקה של קלפים ערבוב של החפיסה מחדש
    def newGame(self):
        self.deck.newGame()
        shuffle(self.deck)
        for i in self.players:
            i.setHand(self.deck)

    def __str__(self):
        return (
            f'{self.players[0]}\n{self.players[1]}\n{self.players[2]}\n{self.players[3]}'
        )
Ejemplo n.º 2
0
class TestDeckofcards(TestCase):
    def setUp(self):
        self.d1 = Deckofcards()
        self.d2 = Deckofcards()
        self.d3 = Deckofcards()
        self.d4 = ''

    def test_deck_has_52_cards(self):
        # Arrange
        d7 = Deckofcards()
        # Act
        # Assert
        self.assertEqual(len(d7.deck), 52)

    def test_shuffle(self):
        self.assertTrue(self.d1.shuffle() == True)
        self.d1.dealOne()
        self.assertTrue(self.d1.shuffle() == False)
        self.d3.shuffle()
        self.assertFalse(self.d3 != self.d2 == True)

    def test_deal_one(self):
        card = self.d1.deck[0]
        card1 = self.d1.dealOne()
        if card == card1:
            self.assertEqual((card, card1) == True)
        self.assertTrue(len(self.d1.deck) == 51)
        for i in range(51):
            self.d1.dealOne()
        self.assertTrue(len(self.d1.deck) == 0)

    def test_new_game(self):
        self.d1.newGame()
        self.assertTrue((self.d1 != self.d2) == True)
        self.d1.dealOne()
        self.assertTrue((self.d1 != self.d2) == True)

    def test_show(self):
        pass