#include "ast/ScenarioLoader.hpp"
#include "ast/Scenario.hpp"
#include "ast/RTTIAPI.hpp"
#include "ast/ObjectManager.hpp"
#include "ast/Test.h"
AST_USING_NAMESPACE
TEST(ScenarioLoader, LoadScenario)
{
if(aIsCI())
GTEST_SKIP();
auto testLoadScenario = []()
{
Scenario scenario;
StringView scenarioFile = aTestGetConfigValue("STK_SCENARIO_FILE");
errc_t rc = aLoadScenario(scenarioFile, scenario);
EXPECT_EQ(rc, eNoError);
auto objectCount = ObjectManager::CurrentInstance().getObjectCount();
EXPECT_GT(objectCount, 0);
aPrintObjectTree(&scenario);
};
testLoadScenario();
{
auto objectCount1 = ObjectManager::CurrentInstance().getObjectCount();
testLoadScenario();
auto objectCount2 = ObjectManager::CurrentInstance().getObjectCount();
EXPECT_EQ(objectCount2, objectCount1);
auto objects = ObjectManager::CurrentInstance().getAllObjects();
EXPECT_EQ(objects.size(), objectCount2);
}
}
GTEST_MAIN()