def testMultipleCardsThatExceedDeck(self): testDeck4 = Deck() cards2 = testDeck4.DealOut(20) self.assertEqual(len(cards2), 20, "The number of cards was not dealt correctly") self.assertEqual( testDeck4.Size(), 32, "The number of cards removed from deck was not correct") try: cards3 = testDeck4.DealOut(40) self.assertFalse(len(cards3), 40, "Dealt too many cards") except ValueError: pass
def testDeckRemoval(self): testDeck5 = Deck() card0 = testDeck5.DealOut(1) self.assertEqual( testDeck5.IsCard(card0[0].GetValue(), card0[0].GetSuit()), False, "Card was not removed from deck")
def testNumCardsDealt(self): testDeck2 = Deck() cards0 = testDeck2.DealOut(10) self.assertEquals(len(cards0), 10, "The number of cards dealt out was not correct.") self.assertEqual( testDeck2.Size(), 42, "The number of cards removed from deck was not correct")
def testNumCardsDealtExceedsDeck(self): testDeck3 = Deck() try: cards1 = testDeck3.DealOut(54) self.assertsFalse( len(cards1), 54, "This number exceeds the number of cards in the deck.") except ValueError: pass
class Table(object): def __init__(self, numPlayers): self.players = [] self.numPlayers = numPlayers self.deck = Deck() def getNumOfPlayers(self): return self.numPlayers def getHands(self): return self.players def deal(self, numOfCards): if numOfCards * len(self.players) > self.deck.Size(): raise ValueError else: for _ in range(self.numPlayers): self.players.append(self.deck.DealOut(numOfCards))