summaryrefslogtreecommitdiffstats
path: root/tests/test_main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_main.cpp')
-rw-r--r--tests/test_main.cpp17
1 files changed, 13 insertions, 4 deletions
diff --git a/tests/test_main.cpp b/tests/test_main.cpp
index 291321a45e..05d7df038c 100644
--- a/tests/test_main.cpp
+++ b/tests/test_main.cpp
@@ -93,6 +93,7 @@
#include "tests/scene/test_code_edit.h"
#include "tests/scene/test_curve.h"
#include "tests/scene/test_curve_2d.h"
+#include "tests/scene/test_curve_3d.h"
#include "tests/scene/test_gradient.h"
#include "tests/scene/test_navigation_agent_2d.h"
#include "tests/scene/test_navigation_agent_3d.h"
@@ -134,6 +135,8 @@ int test_main(int argc, char *argv[]) {
OS::get_singleton()->set_cmdline("", args, List<String>());
DisplayServerMock::register_mock_driver();
+ WorkerThreadPool::get_singleton()->init();
+
// Run custom test tools.
if (test_commands) {
for (const KeyValue<String, TestFunc> &E : (*test_commands)) {
@@ -199,7 +202,7 @@ struct GodotTestCaseListener : public doctest::IReporter {
ThemeDB *theme_db = nullptr;
void test_case_start(const doctest::TestCaseData &p_in) override {
- SignalWatcher::get_singleton()->_clear_signals();
+ reinitialize();
String name = String(p_in.m_name);
String suite_name = String(p_in.m_test_suite);
@@ -255,8 +258,8 @@ struct GodotTestCaseListener : public doctest::IReporter {
}
if (suite_name.find("[Navigation]") != -1 && navigation_server_2d == nullptr && navigation_server_3d == nullptr) {
- navigation_server_2d = memnew(NavigationServer2D);
navigation_server_3d = NavigationServer3DManager::new_default_server();
+ navigation_server_2d = memnew(NavigationServer2D);
return;
}
}
@@ -340,11 +343,11 @@ struct GodotTestCaseListener : public doctest::IReporter {
}
void test_case_reenter(const doctest::TestCaseData &) override {
- SignalWatcher::get_singleton()->_clear_signals();
+ reinitialize();
}
void subcase_start(const doctest::SubcaseSignature &) override {
- SignalWatcher::get_singleton()->_clear_signals();
+ reinitialize();
}
void report_query(const doctest::QueryData &) override {}
@@ -354,6 +357,12 @@ struct GodotTestCaseListener : public doctest::IReporter {
void log_assert(const doctest::AssertData &in) override {}
void log_message(const doctest::MessageData &) override {}
void test_case_skipped(const doctest::TestCaseData &) override {}
+
+private:
+ void reinitialize() {
+ Math::seed(0x60d07);
+ SignalWatcher::get_singleton()->_clear_signals();
+ }
};
REGISTER_LISTENER("GodotTestCaseListener", 1, GodotTestCaseListener);