2019-10-06 11:50:52 +00:00
|
|
|
#ifdef TESTS_BUILD
|
2019-12-07 12:45:44 +00:00
|
|
|
#include "../../extern/catch.hpp"
|
2019-10-24 11:37:55 +00:00
|
|
|
#include "../../src/Battling/Models/CreateCreature.hpp"
|
2019-12-07 12:45:44 +00:00
|
|
|
#include "../TestLibrary/TestLibrary.hpp"
|
2019-10-06 11:50:52 +00:00
|
|
|
|
2020-04-10 18:09:15 +00:00
|
|
|
using namespace CreatureLib::Battling;
|
2019-11-28 11:55:22 +00:00
|
|
|
TEST_CASE("Create basic creature", "[Library]") {
|
2019-12-07 12:45:44 +00:00
|
|
|
auto library = TestLibrary::Get();
|
2020-04-10 14:44:25 +00:00
|
|
|
auto creature = CreateCreature(library, "testSpecies1"_cnc, 1).Create();
|
2019-10-06 11:50:52 +00:00
|
|
|
delete creature;
|
|
|
|
}
|
|
|
|
|
2019-11-28 11:55:22 +00:00
|
|
|
TEST_CASE("Get creature species", "[Library]") {
|
2019-12-07 12:45:44 +00:00
|
|
|
auto library = TestLibrary::Get();
|
2020-04-10 14:44:25 +00:00
|
|
|
auto creature = CreateCreature(library, "testSpecies1"_cnc, 1).Create();
|
2020-02-27 17:23:23 +00:00
|
|
|
REQUIRE(creature->GetSpecies()->GetName() == "testSpecies1"_cnc);
|
2019-10-06 11:50:52 +00:00
|
|
|
delete creature;
|
|
|
|
}
|
|
|
|
|
2019-11-28 11:55:22 +00:00
|
|
|
TEST_CASE("Get creature level", "[Library]") {
|
2019-12-07 12:45:44 +00:00
|
|
|
auto library = TestLibrary::Get();
|
2020-04-10 14:44:25 +00:00
|
|
|
auto creature = CreateCreature(library, "testSpecies1"_cnc, 1).Create();
|
2019-10-06 11:50:52 +00:00
|
|
|
REQUIRE(creature->GetLevel() == 1);
|
|
|
|
delete creature;
|
|
|
|
}
|
|
|
|
|
2019-11-28 11:55:22 +00:00
|
|
|
TEST_CASE("Get creature variant when unset", "[Library]") {
|
2019-12-07 12:45:44 +00:00
|
|
|
auto library = TestLibrary::Get();
|
2020-04-10 14:44:25 +00:00
|
|
|
auto creature = CreateCreature(library, "testSpecies1"_cnc, 1).Create();
|
2019-10-06 11:50:52 +00:00
|
|
|
REQUIRE(creature->GetVariant()->GetName() == "default");
|
|
|
|
delete creature;
|
|
|
|
}
|
|
|
|
|
2019-11-28 11:55:22 +00:00
|
|
|
TEST_CASE("Get creature nickname when unset", "[Library]") {
|
2019-12-07 12:45:44 +00:00
|
|
|
auto library = TestLibrary::Get();
|
2020-04-10 14:44:25 +00:00
|
|
|
auto creature = CreateCreature(library, "testSpecies1"_cnc, 1).Create();
|
2019-10-06 11:50:52 +00:00
|
|
|
REQUIRE(creature->GetNickname() == "testSpecies1");
|
|
|
|
delete creature;
|
|
|
|
}
|
|
|
|
|
2020-01-05 13:25:48 +00:00
|
|
|
TEST_CASE("Increase creature stat boost", "[Library]") {
|
|
|
|
auto library = TestLibrary::Get();
|
2020-04-10 14:44:25 +00:00
|
|
|
auto creature = CreateCreature(library, "testSpecies1"_cnc, 1).Create();
|
2020-03-22 09:11:53 +00:00
|
|
|
creature->ChangeStatBoost(CreatureLib::Library::Statistic::PhysicalAttack, 6);
|
|
|
|
REQUIRE(creature->GetStatBoost(CreatureLib::Library::Statistic::PhysicalAttack) == 6);
|
2020-01-05 13:25:48 +00:00
|
|
|
delete creature;
|
|
|
|
}
|
|
|
|
|
2020-08-01 08:27:46 +00:00
|
|
|
TEST_CASE("Override Creature talent", "[Library]") {
|
|
|
|
auto library = TestLibrary::Get();
|
|
|
|
auto creature = CreateCreature(library, "testSpecies1"_cnc, 1).Create();
|
|
|
|
creature->OverrideActiveTalent("foobar");
|
|
|
|
REQUIRE(creature->GetActiveTalent() == "foobar");
|
|
|
|
delete creature;
|
|
|
|
}
|
|
|
|
|
2019-10-06 11:50:52 +00:00
|
|
|
#endif
|