def test_receiving_valid_card(self): cards = Cards() number_of_cards_before_receiving_card = len(cards) valid_card = Card(4, "O") cards.receive_card(valid_card) number_of_cards_after_receiving_card = len(cards) assert cards[ 0] == valid_card and number_of_cards_after_receiving_card - number_of_cards_before_receiving_card == 1
def test_receiving_a_non_card_element(self): cards = Cards() number_of_cards_before_receiving_card = len(cards) invalid_card = "string" try: cards.receive_card(invalid_card) has_rised_type_error = False except TypeError: has_rised_type_error = True except Exception: has_rised_type_error = False number_of_cards_after_receiving_card = len(cards) assert has_rised_type_error and number_of_cards_after_receiving_card == number_of_cards_before_receiving_card
def _initialize_hand(self, style=None): if not hasattr(self, 'games_detector'): self.games_detector = GamesDetector() hand = Cards() if style == "one_same_number_game_one_ladder": hand.receive_card(Card(1, "O")) hand.receive_card(Card(1, "B")) hand.receive_card(Card(1, "C")) hand.receive_card(Card(3, "O")) hand.receive_card(Card(4, "O")) hand.receive_card(Card(5, "O")) hand.receive_card(Card(9, "O")) elif style == "two_same_number_game_no_ladder": hand.receive_card(Card(1, "O")) hand.receive_card(Card(1, "B")) hand.receive_card(Card(1, "C")) hand.receive_card(Card(3, "E")) hand.receive_card(Card(3, "O")) hand.receive_card(Card(3, "C")) hand.receive_card(Card(9, "O")) elif style == "no_same_number_game_one_ladder": hand.receive_card(Card(1, "O")) hand.receive_card(Card(2, "B")) hand.receive_card(Card(4, "C")) hand.receive_card(Card(5, "E")) hand.receive_card(Card(6, "E")) hand.receive_card(Card(7, "E")) hand.receive_card(Card(8, "E")) elif style == "no_game": hand.receive_card(Card(1, "O")) hand.receive_card(Card(2, "B")) hand.receive_card(Card(4, "C")) hand.receive_card(Card(5, "E")) hand.receive_card(Card(6, "E")) hand.receive_card(Card(10, "E")) hand.receive_card(Card(11, "C")) return hand