예제 #1
0
    def test_card_search_name(self):
        # there's 18000 in this AllCards.json so we only check some of them
        # This variable can be adjusted to check all of them
        # To check all 18000 cards, it will take at least 30 seconds
        # and will bog down other tests

        NUM_CARDS_TO_CHECK = 100

        with open("./data/AllCards.json", "r") as f:
            card_data = json.load(f)
            count = 0
            for name in card_data:
                if count < NUM_CARDS_TO_CHECK:
                    new_card = Card(name)
                    db.session.add(new_card)
                    count += 1
            db.session.commit()

        count = 0
        for name in card_data:
            if count < NUM_CARDS_TO_CHECK:
                card = Card.search_card_by_name(name)
                self.assertIsNotNone(card)
                formatted_name = Card.format_card_name_for_search(name)
                cards = Card.query.filter_by(search_name=formatted_name).all()
                self.assertEqual(len(cards), 1)
                count += 1