#include #include #include "logger.h" #include "objects/base/instance.h" #include "objects/service/script/scriptcontext.h" #include "objects/service/script/serverscriptservice.h" #include "objects/service/workspace.h" #include "testcommon.h" std::shared_ptr gTestModel; std::stringstream testLogOutput; class commonTestListener : public Catch::EventListenerBase { public: using Catch::EventListenerBase::EventListenerBase; void testRunStarting(Catch::TestRunInfo const&) override { // TODO: Make physicsInit optional in headless environments physicsInit(); Logger::initTest(&testLogOutput); } void testRunEnded(Catch::TestRunStats const&) override { gTestModel = nullptr; physicsDeinit(); Logger::initTest(nullptr); } void testCasePartialStarting(const Catch::TestCaseInfo &testInfo, uint64_t partNumber) override { // Clear the log output prior to each test testLogOutput.str(""); gTestModel = DataModel::New(); gTestModel->Init(true); } void testCasePartialEnded(const Catch::TestCaseStats &testCaseStats, uint64_t partNumber) override { } }; CATCH_REGISTER_LISTENER(commonTestListener)