PkmnLib/tests/LibraryTests/SpeciesLibraryTests.cpp

40 lines
1.7 KiB
C++

#ifdef TESTS_BUILD
#define CATCH_CONFIG_MAIN
#include "../../extern/catch.hpp"
#include "../../src/Library/Species/SpeciesLibrary.hpp"
TEST_CASE("Able to build and destroy empty library", "library") {
auto lib = new PkmnLib::Library::SpeciesLibrary();
delete lib;
}
TEST_CASE("Able to build, destroy and insert library", "library") {
auto lib = new PkmnLib::Library::SpeciesLibrary();
lib->LoadSpecies("foo",
new PkmnLib::Library::PokemonSpecies(
1, "foo",
new PkmnLib::Library::PokemonForme(
"default", 1.0f, 1.0f, 100, {0},
CreatureLib::Core::StatisticSet<uint16_t>(100, 100, 100, 100, 100, 100), {"testAbility"},
{"testHiddenAbility"}, new CreatureLib::Library::LearnableAttacks(100)),
0.5f, "testGrowthRate", 100, 100));
delete lib;
}
TEST_CASE("Able to insert and retrieve from library", "library") {
auto lib = new PkmnLib::Library::SpeciesLibrary();
lib->LoadSpecies("foo",
new PkmnLib::Library::PokemonSpecies(
1, "foo",
new PkmnLib::Library::PokemonForme(
"default", 1.0f, 1.0f, 100, {0},
CreatureLib::Core::StatisticSet<uint16_t>(100, 100, 100, 100, 100, 100), {"testAbility"},
{"testHiddenAbility"}, new CreatureLib::Library::LearnableAttacks(100)),
0.5f, "testGrowthRate", 100, 100));
auto val = lib->GetPkmnSpecies("foo");
REQUIRE(val->GetName() == "foo");
delete lib;
}
#endif