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