mirror of
https://github.com/sebastiandine/Card-Collection-Manager-3.git
synced 2026-08-29 01:08:49 +00:00
Minor: Add Asian Pokemon Card Support (#18)
This commit is contained in:
@@ -29,6 +29,9 @@ public:
|
||||
std::string dirName() const override {
|
||||
if (gameId == Game::Magic) return "magic";
|
||||
if (gameId == Game::Pokemon) return "pokemon";
|
||||
if (gameId == Game::YuGiOh) return "yugioh";
|
||||
if (gameId == Game::DigiBattle99) return "digibattle99";
|
||||
if (gameId == Game::JapanesePokemon) return "pokemon";
|
||||
return "yugioh";
|
||||
}
|
||||
std::string displayName() const override { return dirName(); }
|
||||
@@ -179,6 +182,41 @@ TEST_SUITE("SetService") {
|
||||
CHECK(digi.source.calls == 1);
|
||||
}
|
||||
|
||||
TEST_CASE("JapanesePokemon module routes independently when all games are registered") {
|
||||
InMemSetRepo repo;
|
||||
SetService svc{repo};
|
||||
|
||||
FakeGameModule magic{Game::Magic};
|
||||
magic.source.result = Result<std::vector<Set>>::ok({{"lea", "Alpha", "1993/08/05"}});
|
||||
FakeGameModule pokemon{Game::Pokemon};
|
||||
pokemon.source.result = Result<std::vector<Set>>::ok({{"base1", "Base", "1999/01/09"}});
|
||||
FakeGameModule yugioh{Game::YuGiOh};
|
||||
yugioh.source.result = Result<std::vector<Set>>::ok({{"LOB", "Legend of Blue Eyes", "2002/03/08"}});
|
||||
FakeGameModule digi{Game::DigiBattle99};
|
||||
digi.source.result = Result<std::vector<Set>>::ok(
|
||||
{{"series-1-starter-set", "Series 1 Starter Set", "1999/06/01"}});
|
||||
FakeGameModule jp{Game::JapanesePokemon};
|
||||
jp.source.result = Result<std::vector<Set>>::ok(
|
||||
{{"PMCG1", "Expansion Pack", "1996/10/20"}});
|
||||
|
||||
svc.registerModule(&magic);
|
||||
svc.registerModule(&pokemon);
|
||||
svc.registerModule(&yugioh);
|
||||
svc.registerModule(&digi);
|
||||
svc.registerModule(&jp);
|
||||
|
||||
REQUIRE(svc.updateSets(Game::Magic).isOk());
|
||||
REQUIRE(svc.updateSets(Game::Pokemon).isOk());
|
||||
REQUIRE(svc.updateSets(Game::YuGiOh).isOk());
|
||||
REQUIRE(svc.updateSets(Game::DigiBattle99).isOk());
|
||||
const auto out = svc.updateSets(Game::JapanesePokemon);
|
||||
REQUIRE(out.isOk());
|
||||
CHECK(out.value().front().id == "PMCG1");
|
||||
CHECK(jp.source.calls == 1);
|
||||
CHECK(magic.source.calls == 1);
|
||||
CHECK(pokemon.source.calls == 1);
|
||||
}
|
||||
|
||||
TEST_CASE("updateSets propagates repository save failures") {
|
||||
InMemSetRepo repo;
|
||||
repo.failSave = true;
|
||||
|
||||
Reference in New Issue
Block a user