def test_invalid_value__init__(self): """cases when the value invalid""" try: Card('a', 3) self.assertTrue(False) except TypeError: self.assertTrue(True) try: Card(33, 3) self.assertTrue(False) except TypeError: self.assertTrue(True) try: Card(0, 3) self.assertTrue(False) except TypeError: self.assertTrue(True) try: Card(14, 3) self.assertTrue(True) except TypeError: self.assertTrue(True) try: Card(15, 3) self.assertTrue(False) except TypeError: self.assertTrue(True)
def test_Card_not_int(self): """Invalid value and/or suit""" with self.assertRaises(SystemExit): card = Card("123", 4334) with self.assertRaises(SystemExit): card_1 = Card("13434", "3434") with self.assertRaises(SystemExit): card_2 = Card(123, "123")
def test_get_winner(self): """בודקת כאשר יש לשחקן השני פחות קלפים שהשם שלו חוזר""" card1 = Card(1, 1) card2 = Card(2, 2) card3 = Card(3, 3) self.game_test.player_1.player_deck = [card1, card2] self.game_test.player_2.player_deck = [card3] self.assertIn("shachar", self.game_test.get_winner())
def test_compare_cards_3(self): # check "compare_cards" to 4 cards in list. self.c1 = Card(13, "Heart") self.c2 = Card(13, "Spade") self.c3 = Card(13, "Heart") self.c4 = Card(13, "Club") temp_list = [self.c1, self.c2, self.c3, self.c4] self.assertEqual(self.my_game.compare_cards(temp_list), self.c4)
def test_get_winner_player1_win(self): """checks thw winner is player 1""" player1 = Player("ohad") player2 = Player("polly") game = CardGame(player1.name, player2.name) game.player2.player_hand = [Card(8, 3), Card(9, 4), Card(13, 4)] game.player1.player_hand = [Card(7, 3)] winner = game.get_winner() self.assertEqual(player1.name, winner)
def test_get_winner_none(self): """בודקת במידה והרשימות של שני השחקנים באותו אורך שהיא מחזירה none""" card1 = Card(1, 1) card2 = Card(2, 2) card3 = Card(5, 2) card4 = Card(7, 4) self.game_test.player_1.player_deck = [card1, card2] self.game_test.player_2.player_deck = [card3, card4] self.assertIsNone(self.game_test.get_winner())
def setUp(self): print("Set_up") self.c1 = Card(1, "Diamond") self.c2 = Card(2, "Diamond") self.c3 = Card(3, "Diamond") self.c4 = Card(4, "Diamond") self.p_1 = Player("p_1", 5000, 5) self.list = [self.c1, self.c2, self.c3, self.c4] self.dc = DeckOfCards()
class TestPlayer(TestCase): def setUp(self): print("I am setup") def test_invalid_name__init__(self): """cases when the name is not only letters""" player = Player("!!!") self.assertEqual("unnamed player", player.name) player = Player("123") self.assertEqual("unnamed player", player.name) player = Player("o!h!a!d123") self.assertEqual("unnamed player", player.name) def test_valid_name__init__(self): """checks valid name""" player = Player("ohad") self.assertEqual("ohad", player.name) def test_card_number__init__(self): """checks what happened if the cards number>26""" player = Player("Ohad", 29) self.assertEqual(player.cards_number, 26) @mock.patch('games_cards.DeckOfCards.DeckOfCards.deal_one', return_value=Card(11, 2)) def test_set_hand1(self, mock_deal_one): """checks the player really get cards from the deck""" deck = DeckOfCards() player = Player('Ohad') player.set_hand(deck) self.assertEqual(player.player_hand.count(Card(11, 2)), 10) def test_set_hand_all_cards_set(self): """checks the game will played for 10 rounds""" deck = DeckOfCards() player = Player('Ohad') player.set_hand(deck) self.assertEqual(len(player.player_hand), player.cards_number) def test_get_card(self): """checks the function removing card from players' deck""" player = Player("aaa") player.player_hand = [Card(9, 3), Card(11, 2), Card(13, 1)] player.get_card() self.assertEqual(len(player.player_hand), 2) def test_add_card(self): """checks the function is adds card to the players' deck""" player = Player("aaa") card = Card(4, 3) player.add_card(card) self.assertIn(card, player.player_hand) def test_show(self): """checks the method are really shows the player name and deck""" player = Player("ohad") self.assertEqual(player.show(), player.__str__()) def tearDown(self): print('I am teardown')
def __init__(self): self.list_cards = [] suit = {1: "Diamond", 2: "Spade", 3: "Heart", 4: "Club"} value = {11: "Jack", 12: "Queen", 13: 'King', 14: "Ace"} for i in range(2, 15): for j in suit: c = Card(i, j) self.list_cards.append(c)
def __init__(self): # Create a deck of cards self.pack = [] suits = ["Diamond", "Spade", "Heart", "Club"] for suit in suits: for num in range(1, 14): c = Card(num, suit) self.pack.append(c)
def new_game(self): # Create a deck of cards and shuffle the deck self.pack = [] suits = ["Diamond", "Spade", "Heart", "Club"] for suit in suits: for num in range(1, 14): c = Card(num, suit) self.pack.append(c) shuffle(self.pack)
def test_invalid_suit__init__(self): """cases when the suit is invalid""" try: Card(3, 'a') self.assertTrue(False) except TypeError: self.assertTrue(True) try: Card(3, 43) self.assertTrue(False) except TypeError: self.assertTrue(True) try: Card(3, 5) self.assertTrue(False) except TypeError: self.assertTrue(True) try: Card(3, 0) self.assertTrue(False) except TypeError: self.assertTrue(True)
def test_get_winner_draw(self): """checks if the result is draw""" player1 = Player("ohad") player2 = Player("polly") game = CardGame(player1.name, player2.name) game.player2.player_hand = [Card(8, 3), Card(9, 4), Card(13, 4)] game.player1.player_hand = [Card(7, 3), Card(10, 4), Card(12, 4)] winner = game.get_winner() self.assertEqual(None, winner)
class TestPlayer(TestCase): def setUp(self): self.player_1 = Player("dima", 2) self.player_2 = Player("shahar", 27) self.deck_cards = DeckOfCards() self.card_1 = Card(1, 3) self.card_2 = Card(2, 1) @mock.patch("games_cards.DeckOfCards.DeckOfCards.deal_one", return_value=Card(2, 1)) def test_set_hand(self, mock_1): """בודקת האם CARD נמצא בPLAYER_DECK""" card = Card(2, 1) self.player_1.set_hand(self.deck_cards) self.assertIn(card, self.player_1.player_deck) def test_set_hand_2(self): """בודקת האם בPLAYER DECK לא יהיה יותר מ26 קלפים""" self.player_2.set_hand(self.deck_cards) self.assertEqual(26, len(self.player_2.player_deck)) def test_set_hand_3(self): """בודקת אם נכנס לחפיסה משהו שהוא לא אובייקט Card""" deck_cards = DeckOfCards() deck_cards.cards.append(1) # מכניסים סתם מספר במקום אובייקט with self.assertRaises(SystemExit): self.player_1.set_hand(deck_cards) @mock.patch("games_cards.Player.Player.random_get_card", return_value=1) def test_get_card(self, mock_rand): """בדיקה האם פונקציה מחזירה קלף אשר נמצא במקום השני ברשימת PLAYER_DECK """ self.player_1.player_deck = [self.card_1, self.card_2] self.assertIs(self.card_2, self.player_1.get_card()) def test_add_card(self): """בודקת האם ADD_CARD מוסיפה CARD1""" self.player_1.set_hand(self.deck_cards) self.player_1.add_card(self.card_1) self.assertIn(self.card_1, self.player_1.player_deck)
def test_show(self): """בודקת האם הקלף הספיציפי נמצא בתוך חפיסת הקלפים""" self.card1 = Card(1, 1) self.assertIn(self.card1, self.tester.show())
def test_valid__init__(self): """valid init check""" Card(14, 4) self.assertTrue(True)
def test_get_card(self): """checks the function removing card from players' deck""" player = Player("aaa") player.player_hand = [Card(9, 3), Card(11, 2), Card(13, 1)] player.get_card() self.assertEqual(len(player.player_hand), 2)
def test_set_hand(self, mock_1): """בודקת האם CARD נמצא בPLAYER_DECK""" card = Card(2, 1) self.player_1.set_hand(self.deck_cards) self.assertIn(card, self.player_1.player_deck)
def test_set_hand1(self, mock_deal_one): """checks the player really get cards from the deck""" deck = DeckOfCards() player = Player('Ohad') player.set_hand(deck) self.assertEqual(player.player_hand.count(Card(11, 2)), 10)
def setUp(self): self.card_1 = Card(1, 3) # Ace:Heart self.card_2 = Card(5, 1) # 5:Diamond self.card_3 = Card(3, 2) # 3:Spade self.card_4 = Card(5, 4) # 5:Club self.card_5 = Card(1, 2) # Ace:Spade
def test_invalid__gt__(self): """checking card gt from another""" card1 = Card(9, 4) card2 = Card(3, 4) self.assertFalse(card1 < card2)
def test_Card_Invalid(self): """INVALID value and/or suit""" with self.assertRaises(SystemExit): card_6 = Card(3, -50) with self.assertRaises(SystemExit): card_6 = Card(-50, 4)
def __init__(self): """מגדירה חפיסת קלפים חדשה עם 52 קלפים""" self.cards = [] for i in range(1, 5): for c in range(1, 14): self.cards.append(Card(c, i))
def test_add_card(self): """checks the function is adds card to the players' deck""" player = Player("aaa") card = Card(4, 3) player.add_card(card) self.assertIn(card, player.player_hand)
def setUp(self): self.player_1 = Player("dima", 2) self.player_2 = Player("shahar", 27) self.deck_cards = DeckOfCards() self.card_1 = Card(1, 3) self.card_2 = Card(2, 1)
def test_valid__gt__(self): """checking card gt from another""" card1 = Card(9, 4) card2 = Card(3, 4) self.assertTrue(card1 > card2)
def setUp(self): print("Set_up") self.d_card = DeckOfCards() self.c1 = Card(1, "Diamond")
def test_suit__gt__(self): """checking if value is equal the gt card will be the one with the gt suit""" card1 = Card(8, 4) card2 = Card(8, 3) self.assertTrue(card1 > card2)