From add592280cf7075d75205d7769bfc1ff233cd343 Mon Sep 17 00:00:00 2001 From: Arseniy Obolenskiy Date: Wed, 14 May 2025 13:03:30 +0200 Subject: [PATCH] Add death test on task order failure --- modules/core/task/func_tests/task_tests.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/modules/core/task/func_tests/task_tests.cpp b/modules/core/task/func_tests/task_tests.cpp index d68d2ad1a..0e55f3ebd 100644 --- a/modules/core/task/func_tests/task_tests.cpp +++ b/modules/core/task/func_tests/task_tests.cpp @@ -178,6 +178,24 @@ TEST(task_tests, check_wrong_order) { ASSERT_ANY_THROW(test_task.PostProcessing()); } +TEST(task_tests, terminates_on_wrong_order_no_calls) { + // Create data + std::vector in(20, 1); + std::vector out(1, 0); + + // Create task_data + auto task_data = std::make_shared(); + task_data->inputs.emplace_back(reinterpret_cast(in.data())); + task_data->inputs_count.emplace_back(in.size()); + task_data->outputs.emplace_back(reinterpret_cast(out.data())); + task_data->outputs_count.emplace_back(out.size()); + ASSERT_DEATH({ + // Create Task + ppc::test::task::TestTask test_task(task_data); + // dtor throws std::terminate + }, "ORDER OF FUNCTIONS IS NOT RIGHT"); +} + int main(int argc, char **argv) { testing::InitGoogleTest(&argc, argv); return RUN_ALL_TESTS();