From 24649c498032cc50dfa990044d100ae5ce2aeab8 Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Sat, 6 Jan 2024 14:17:07 +0100 Subject: [PATCH] TaskTree: Add a test for nested cancel Change-Id: I5d4d329e6c069e744d25d6f94e1d33b53f288f13 Reviewed-by: Reviewed-by: hjk --- tests/auto/solutions/tasking/tst_tasking.cpp | 25 ++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/tests/auto/solutions/tasking/tst_tasking.cpp b/tests/auto/solutions/tasking/tst_tasking.cpp index 8cd8949e501..956e412dee2 100644 --- a/tests/auto/solutions/tasking/tst_tasking.cpp +++ b/tests/auto/solutions/tasking/tst_tasking.cpp @@ -2667,6 +2667,31 @@ void tst_Tasking::testTree_data() QTest::newRow("CommonStorage") << TestData{storage, root, log, 0, DoneWith::Success}; } + { + const Group root { + storage, + Group { + parallel, + createSuccessTask(1, 100ms), + Group { + createFailingTask(2, 10ms), + createSuccessTask(3, 10ms) + }, + createSuccessTask(4, 10ms) + }, + createSuccessTask(5, 10ms) + }; + const Log log { + {1, Handler::Setup}, + {2, Handler::Setup}, + {4, Handler::Setup}, + {2, Handler::Error}, + {1, Handler::Canceled}, + {4, Handler::Canceled} + }; + QTest::newRow("NestedCancel") << TestData{storage, root, log, 5, DoneWith::Error}; + } + // This test checks if storage shadowing works OK. QTest::newRow("StorageShadowing") << storageShadowingData(); }