CreatureLib/tests/LibraryTests/CreatureTests.cpp

67 lines
2.4 KiB
C++

#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