コード例 #1
0
def test_deck_deal():
    cards = deck.Deck()
    cards.add_cards(*[deck.Card(r, s) for s in range(4) for r in range(13)])
    hand = deck.Hand(cards.deal(2))

    assert len(hand) == 2
    assert hand[0] not in cards
コード例 #2
0
def test_deck_deal_errors():
    cards = deck.Deck()
    cards.add_cards(*[deck.Card(r, s) for s in range(4) for r in range(13)])
    with pytest.raises(ValueError, match=r"> 0"):
        cards.deal(2, hands=0)
    with pytest.raises(TypeError, match=r"int"):
        cards.deal(2, hands="0")
コード例 #3
0
def test_deck_deal_multiple_players():
    cards = deck.Deck()
    cards.add_cards(*[deck.Card(r, s) for s in range(4) for r in range(13)])
    p1, p2 = [deck.Hand(c) for c in cards.deal(2, hands=2)]
    assert len(p1) == 2
    assert len(p2) == 2
コード例 #4
0
def test_deck_shuffle():
    cards = deck.Deck()
    cards.add_cards(*[deck.Card(r, s) for s in range(4) for r in range(13)])
    assert cards[-1] == deck.Card(12, 3)
    cards.shuffle()
    assert cards[-1] != deck.Card(12, 3)
コード例 #5
0
def test_deck_add_card():
    cards = deck.Deck()
コード例 #6
0
def test_deck_add():
    d1 = deck.Deck()
    d2 = deck.Deck()
    d2.add_cards(deck.Card(0, 0))
    assert d1 + d2 == d2
    assert d1 != d2
コード例 #7
0
def test_deck_string():
    cards = deck.Deck()
    assert str(cards) == "Deck()"