Acey Ducey (Python): Add unit tests

The unit tests can be executed via:

    $ pip install pytest
    $ pytest .

Also a few more type annotations
This commit is contained in:
Martin Thoma
2022-03-09 07:32:30 +01:00
parent 386d421dc3
commit 619d9e5253
3 changed files with 65 additions and 14 deletions

View File

@@ -0,0 +1,36 @@
from acey_ducey_oo import Card, Deck, Game
def test_card_init() -> None:
card = Card("\u2665", 2)
assert card.suit == "\u2665"
assert card.rank == 2
def test_card_str() -> None:
card = Card("\u2665", 2)
assert str(card) == "2\u2665"
def test_deck_init() -> None:
deck = Deck()
assert len(deck.cards) == 52
assert deck.cards[0].suit == "\u2665"
assert deck.cards[0].rank == 2
def test_deck_shuffle() -> None:
deck = Deck()
deck.shuffle()
def test_deck_deal() -> None:
deck = Deck()
card = deck.deal()
assert card.rank == 14
assert card.suit == "\u2660"
def test_game_init() -> None:
game = Game()
assert len(game.deck.cards) == 50 # two are already dealt