def test_get_my_cards(self):
     player = Player('Nikhil')
     card1 = Card('Spade', 'A')
     card2 = Card('Heart', 'K')
     player.get_my_cards().append(card1)
     player.get_my_cards().append(card2)
     self.assertEqual(player.get_my_cards(), [card1, card2])
     self.assertNotEqual(player.get_my_cards(), [
         card1,
     ])
Example #2
0
 def test_lose(self):
     start = StartGame()
     player = Player('sushant')
     start.current_players.append(player)
     player.get_my_cards().append(Card('Spade', 'K'))
     player.get_my_cards().append(Card('Spade', 'J'))
     player.get_my_cards().append(Card('Spade', 'Q'))
     start.busted_players.append(player)
     '''lose will return list of names of busted players'''
     self.assertEqual(start.lose()[0], player.get_name())
     start.busted_players.clear()
     '''lose will return empty list if there 
     are no players in busted_list'''
     self.assertEqual(start.lose(), [])
 def __init__(self):
     self.cards = [
         Card(suit, face_value) for suit in SUITS
         for face_value in FACE_VALUE
     ]
     self.decks = self.cards * 8
     random.shuffle(self.decks)
Example #4
0
    def test_is_busted(self):
        start = StartGame()
        player = Player('sushant')
        player.get_my_cards().append(Card('Spade', 'K'))
        player.get_my_cards().append(Card('Spade', 'K'))
        player.get_my_cards().append(Card('Spade', 'Q'))
        '''after calling this method if player's 
        sum is greater than 21 it return True '''
        self.assertEqual(start.isbusted(player), True)
        self.assertNotEqual(start.isbusted(player), False)

        player.get_my_cards().clear()
        player.get_my_cards().append(Card('Spade', 'K'))
        '''after calling this method if player's 
        sum is less than 21 it return False '''
        self.assertEqual(start.isbusted(player), False)
        self.assertNotEqual(start.isbusted(player), True)
    def test_get_sum(self):
        player = Player('Vaibhav')
        card1 = Card('Spade', 'A')
        player.get_my_cards().append(card1)
        self.assertEqual(player.get_sum(), 11)
        self.assertNotEqual(player.get_sum(), 1)

        card1 = Card('Spade', 'K')
        player.get_my_cards().append(card1)
        self.assertEqual(player.get_sum(), 21)
        self.assertNotEqual(player.get_sum(), 1)

        card1 = Card('Spade', '2')
        player.get_my_cards().append(card1)
        self.assertEqual(player.get_sum(), 13)
        self.assertNotEqual(player.get_sum(), 11)

        player.get_my_cards().remove(card1)
        player.get_my_cards().append(Card('Heart', 'K'))
        player.get_my_cards().append(Card('Heart', 'K'))
        self.assertEqual(player.get_sum(), 31)
        self.assertNotEqual(player.get_sum(), 12)

        player.get_my_cards().clear()
        player.get_my_cards().append(Card("Heart", 'A'))
        player.get_my_cards().append(Card("Heart", '2'))
        self.assertEqual(player.get_sum(), 13)
        self.assertNotEqual(player.get_sum(), 2)
    def test_plays(self):
        set_of_decks = SetOfDecks()
        set_of_decks.decks.clear()
        card1 = Card('Spade', 'K')
        card2 = Card('Spade', 'Q')
        dealer = Dealer('DealWithMe')
        set_of_decks.decks.append(card1)
        set_of_decks.decks.append(card2)
        dealer.plays(set_of_decks)
        self.assertEqual(dealer.get_sum(), 20)
        self.assertNotEqual(dealer.get_sum(), 12)

        dealer.get_my_cards().clear()
        dealer.get_my_cards().append(Card('Diamond', 'K'))
        dealer.get_my_cards().append(Card('Diamond', '7'))
        dealer.plays(set_of_decks)
        self.assertEqual(dealer.get_sum(), 17)
        self.assertNotEqual(dealer.get_sum(), 18)
 def test_hit(self):
     set_of_decks = SetOfDecks()
     dealer = Dealer('DealWithMe')
     player = Player('IWill')
     set_of_decks.decks.clear()
     set_of_decks.decks.append(Card('Spade', 'A'))
     dealer.hit(set_of_decks, player)
     self.assertEqual(player.get_my_cards()[0].get_face_val(), 'A')
     self.assertNotEqual(player.get_my_cards()[0].get_face_val(), 'B')
 def test_distribute_card_first_time(self):
     current_players = []
     player1 = Player('Nikhil')
     player2 = Player('Nishant')
     current_players.append(player1)
     current_players.append(player2)
     set_of_decks = SetOfDecks()
     set_of_decks.get_decks_list().clear()
     set_of_decks.get_decks_list().append(Card('Spade', 'K'))
     set_of_decks.get_decks_list().append(Card('Spade', 'Q'))
     set_of_decks.get_decks_list().append(Card('Spade', '2'))
     set_of_decks.get_decks_list().append(Card('Spade', '3'))
     set_of_decks.get_decks_list().append(Card('Spade', '4'))
     set_of_decks.get_decks_list().append(Card('Spade', '5'))
     dealer = Dealer("IamDealer")
     dealer.distribute_card_first_time(current_players, set_of_decks)
     temp_list = []
     for card in player1.get_my_cards():
         temp_list.append(card.get_face_val())
     for card in player2.get_my_cards():
         temp_list.append(card.get_face_val())
     for card in dealer.get_my_cards():
         temp_list.append(card.get_face_val())
     self.assertEqual(temp_list, ['K', 'Q', '2', '3', '4', 0])
Example #9
0
    def test_win(self):
        start = StartGame()
        player = Player('sushant')
        start.current_players.append(player)
        player.get_my_cards().append(Card('Spade', 'Q'))
        player.get_my_cards().append(Card('Spade', 'K'))
        start.dealer.get_my_cards().append(Card('Spade', 'Q'))
        start.standed_players.append(player)
        '''playersum > dealersum and playersum <=21'''
        self.assertEqual(start.wins()[0], player.get_name())

        player.get_my_cards().clear()
        player.get_my_cards().append(Card('Spade', 'K'))
        player.get_my_cards().append(Card('Spade', 'A'))
        start.dealer.get_my_cards().append(Card('Spade', '5'))
        start.dealer.get_my_cards().append(Card('Spade', '6'))
        '''BlackJack Condition for player wins'''
        self.assertEqual(start.wins()[0], player.get_name())

        player.get_my_cards().clear()
        start.dealer.get_my_cards().clear()
        player.get_my_cards().append(Card('Spade', '5'))
        player.get_my_cards().append(Card('Spade', '6'))
        player.get_my_cards().append(Card('Spade', 'K'))
        start.dealer.get_my_cards().append(Card('Spade', 'A'))
        start.dealer.get_my_cards().append(Card('Spade', 'K'))
        '''BlackJack Condtion for Dealer wins'''
        self.assertEqual(start.wins()[0], start.dealer.get_name())

        player.get_my_cards().clear()
        start.dealer.get_my_cards().clear()
        player.get_my_cards().append(Card('Spade', '5'))
        start.dealer.get_my_cards().append(Card('Spade', '5'))
        '''Draw condition response draw '''
        self.assertEqual(start.wins()[0], 'draw')

        start.dealer.get_my_cards().append(Card('Spade', '6'))
        '''DealerSum > playerSum Dealer wins'''
        self.assertEqual(start.wins()[0], start.dealer.get_name())
Example #10
0
 def test_hide_card(self):
     card = Card('Spade', 'A')
     card.hide_card()
     self.assertEqual(card.get_face_val(), 0)
     self.assertNotEqual(card.get_face_val(), 'A')
Example #11
0
 def test_get_face_val(self):
     card = Card('Spade', 'A')
     self.assertEqual(card.get_face_val(), 'A')
     self.assertNotEqual(card.get_face_val(), 'B')
Example #12
0
 def test_make_card_visible(self):
     card = Card('Spade', 'A')
     card.hide_card()
     card.make_card_visible()
     self.assertEqual(card.get_face_val(), 'A')
     self.assertNotEqual(card.get_face_val(), 0)