#ifdef TESTS_BUILD #include "../../extern/catch.hpp" #include "../../src/Battling/Models/CreateCreature.hpp" #include "../TestLibrary/TestLibrary.hpp" using namespace CreatureLib::Library; TEST_CASE("Create basic creature", "[Library]") { auto library = TestLibrary::Get(); auto creature = CreateCreature(library, "testSpecies1", 1).Create(); delete creature; } TEST_CASE("Get creature species", "[Library]") { auto library = TestLibrary::Get(); auto creature = CreateCreature(library, "testSpecies1", 1).Create(); REQUIRE(creature->GetSpecies()->GetName() == "testSpecies1"); delete creature; } TEST_CASE("Get creature level", "[Library]") { auto library = TestLibrary::Get(); auto creature = CreateCreature(library, "testSpecies1", 1).Create(); REQUIRE(creature->GetLevel() == 1); delete creature; } TEST_CASE("Get creature variant when unset", "[Library]") { auto library = TestLibrary::Get(); auto creature = CreateCreature(library, "testSpecies1", 1).Create(); REQUIRE(creature->GetVariant()->GetName() == "default"); delete creature; } TEST_CASE("Get creature nickname when unset", "[Library]") { auto library = TestLibrary::Get(); auto creature = CreateCreature(library, "testSpecies1", 1).Create(); REQUIRE(creature->GetNickname() == "testSpecies1"); delete creature; } TEST_CASE("Get creature stat potentials when unset", "[Library]") { auto library = TestLibrary::Get(); auto creature = CreateCreature(library, "testSpecies1", 1).Create(); auto potentials = creature->GetStatPotential(); REQUIRE(potentials.GetHealth() == 0); REQUIRE(potentials.GetPhysicalAttack() == 0); REQUIRE(potentials.GetPhysicalDefense() == 0); REQUIRE(potentials.GetMagicalAttack() == 0); REQUIRE(potentials.GetMagicalDefense() == 0); REQUIRE(potentials.GetSpeed() == 0); delete creature; } TEST_CASE("Get creature stat experience when unset", "[Library]") { auto library = TestLibrary::Get(); auto creature = CreateCreature(library, "testSpecies1", 1).Create(); auto experiences = creature->GetStatExperience(); REQUIRE(experiences.GetHealth() == 0); REQUIRE(experiences.GetPhysicalAttack() == 0); REQUIRE(experiences.GetPhysicalDefense() == 0); REQUIRE(experiences.GetMagicalAttack() == 0); REQUIRE(experiences.GetMagicalDefense() == 0); REQUIRE(experiences.GetSpeed() == 0); delete creature; } #endif