summaryrefslogtreecommitdiff
path: root/tests/test_main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_main.cpp')
-rw-r--r--tests/test_main.cpp25
1 files changed, 21 insertions, 4 deletions
diff --git a/tests/test_main.cpp b/tests/test_main.cpp
index ec32bfa18d..805380a9aa 100644
--- a/tests/test_main.cpp
+++ b/tests/test_main.cpp
@@ -156,12 +156,16 @@ int test_main(int argc, char *argv[]) {
struct GodotTestCaseListener : public doctest::IReporter {
GodotTestCaseListener(const doctest::ContextOptions &p_in) {}
+ SignalWatcher *signal_watcher = nullptr;
+
PhysicsServer3D *physics_3d_server = nullptr;
PhysicsServer2D *physics_2d_server = nullptr;
NavigationServer3D *navigation_3d_server = nullptr;
NavigationServer2D *navigation_2d_server = nullptr;
void test_case_start(const doctest::TestCaseData &p_in) override {
+ SignalWatcher::get_singleton()->_clear_signals();
+
String name = String(p_in.m_name);
if (name.find("[SceneTree]") != -1) {
@@ -266,13 +270,26 @@ struct GodotTestCaseListener : public doctest::IReporter {
}
}
+ void test_run_start() override {
+ signal_watcher = memnew(SignalWatcher);
+ }
+
+ void test_run_end(const doctest::TestRunStats &) override {
+ memdelete(signal_watcher);
+ }
+
+ void test_case_reenter(const doctest::TestCaseData &) override {
+ SignalWatcher::get_singleton()->_clear_signals();
+ }
+
+ void subcase_start(const doctest::SubcaseSignature &) override {
+ SignalWatcher::get_singleton()->_clear_signals();
+ }
+
void report_query(const doctest::QueryData &) override {}
- void test_run_start() override {}
- void test_run_end(const doctest::TestRunStats &) override {}
- void test_case_reenter(const doctest::TestCaseData &) override {}
void test_case_exception(const doctest::TestCaseException &) override {}
- void subcase_start(const doctest::SubcaseSignature &) override {}
void subcase_end() override {}
+
void log_assert(const doctest::AssertData &in) override {}
void log_message(const doctest::MessageData &) override {}
void test_case_skipped(const doctest::TestCaseData &) override {}