mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-04-27 07:48:01 -07:00
[Card DB] Split out database loading and querying from main class (#6175)
* Simplify add card. Took 25 minutes Took 8 minutes # Commit time for manual adjustment: # Took 16 minutes Took 7 seconds * Refactor out db loading from card db. Took 39 minutes Took 9 minutes Took 2 minutes Took 17 seconds * Refactor out db queries from card db. Took 42 minutes * Lint. Took 3 minutes * I guess. Took 7 minutes * Tests. Took 15 minutes * I don't understand this. Took 9 minutes * fix linker errors * Rename to querier and promote to QObject Took 39 minutes * Lint. Took 3 minutes --------- Co-authored-by: Lukas Brübach <Bruebach.Lukas@bdosecurity.de> Co-authored-by: ebbit1q <ebbit1q@gmail.com>
This commit is contained in:
parent
754dd904d2
commit
d31b044529
49 changed files with 719 additions and 572 deletions
|
|
@ -21,6 +21,8 @@ add_executable(
|
|||
../../cockatrice/src/card/card_info.cpp
|
||||
../../cockatrice/src/card/exact_card.cpp
|
||||
../../cockatrice/src/database/card_database.cpp
|
||||
../../cockatrice/src/database/card_database_loader.cpp
|
||||
../../cockatrice/src/database/card_database_querier.cpp
|
||||
../../cockatrice/src/database/parser/card_database_parser.cpp
|
||||
../../cockatrice/src/database/parser/cockatrice_xml_3.cpp
|
||||
../../cockatrice/src/database/parser/cockatrice_xml_4.cpp
|
||||
|
|
@ -35,6 +37,8 @@ add_executable(
|
|||
../../cockatrice/src/card/card_info.cpp
|
||||
../../cockatrice/src/card/exact_card.cpp
|
||||
../../cockatrice/src/database/card_database.cpp
|
||||
../../cockatrice/src/database/card_database_loader.cpp
|
||||
../../cockatrice/src/database/card_database_querier.cpp
|
||||
../../cockatrice/src/database/card_database_manager.cpp
|
||||
../../cockatrice/src/database/parser/card_database_parser.cpp
|
||||
../../cockatrice/src/database/parser/cockatrice_xml_3.cpp
|
||||
|
|
|
|||
|
|
@ -13,21 +13,21 @@ TEST(CardDatabaseTest, LoadXml)
|
|||
// ensure the card database is empty at start
|
||||
ASSERT_EQ(0, db->getCardList().size()) << "Cards not empty at start";
|
||||
ASSERT_EQ(0, db->getSetList().size()) << "Sets not empty at start";
|
||||
ASSERT_EQ(0, db->getAllMainCardTypes().size()) << "Types not empty at start";
|
||||
ASSERT_EQ(0, db->query()->getAllMainCardTypes().size()) << "Types not empty at start";
|
||||
ASSERT_EQ(NotLoaded, db->getLoadStatus()) << "Incorrect status at start";
|
||||
|
||||
// load dummy cards and test result
|
||||
db->loadCardDatabases();
|
||||
ASSERT_EQ(9, db->getCardList().size()) << "Wrong card count after load";
|
||||
ASSERT_EQ(5, db->getSetList().size()) << "Wrong sets count after load";
|
||||
ASSERT_EQ(3, db->getAllMainCardTypes().size()) << "Wrong types count after load";
|
||||
ASSERT_EQ(3, db->query()->getAllMainCardTypes().size()) << "Wrong types count after load";
|
||||
ASSERT_EQ(Ok, db->getLoadStatus()) << "Wrong status after load";
|
||||
|
||||
// ensure the card database is empty after clear()
|
||||
db->clear();
|
||||
ASSERT_EQ(0, db->getCardList().size()) << "Cards not empty after clear";
|
||||
ASSERT_EQ(0, db->getSetList().size()) << "Sets not empty after clear";
|
||||
ASSERT_EQ(0, db->getAllMainCardTypes().size()) << "Types not empty after clear";
|
||||
ASSERT_EQ(0, db->query()->getAllMainCardTypes().size()) << "Types not empty after clear";
|
||||
ASSERT_EQ(NotLoaded, db->getLoadStatus()) << "Incorrect status after clear";
|
||||
}
|
||||
} // namespace
|
||||
|
|
|
|||
|
|
@ -18,10 +18,10 @@ class CardQuery : public ::testing::Test
|
|||
protected:
|
||||
void SetUp() override
|
||||
{
|
||||
cat = CardDatabaseManager::getInstance()->getCardBySimpleName("Cat");
|
||||
notDeadAfterAll = CardDatabaseManager::getInstance()->getCardBySimpleName("Not Dead");
|
||||
truth = CardDatabaseManager::getInstance()->getCardBySimpleName("Truth");
|
||||
doctor = CardDatabaseManager::getInstance()->getCardBySimpleName("Doctor");
|
||||
cat = CardDatabaseManager::query()->getCardBySimpleName("Cat");
|
||||
notDeadAfterAll = CardDatabaseManager::query()->getCardBySimpleName("Not Dead");
|
||||
truth = CardDatabaseManager::query()->getCardBySimpleName("Truth");
|
||||
doctor = CardDatabaseManager::query()->getCardBySimpleName("Doctor");
|
||||
}
|
||||
// void TearDown() override {}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue