diff --git a/src/libs/solutions/tasking/tasktree.cpp b/src/libs/solutions/tasking/tasktree.cpp index 0f176447903..ba90500bccb 100644 --- a/src/libs/solutions/tasking/tasktree.cpp +++ b/src/libs/solutions/tasking/tasktree.cpp @@ -959,30 +959,30 @@ void GroupItem::addChildren(const QList &children) case Type::GroupData: if (child.m_groupData.m_groupHandler.m_setupHandler) { QTC_ASSERT(!m_groupData.m_groupHandler.m_setupHandler, - qWarning("Group Setup Handler redefinition, overriding...")); + qWarning("Group setup handler redefinition, overriding...")); m_groupData.m_groupHandler.m_setupHandler = child.m_groupData.m_groupHandler.m_setupHandler; } if (child.m_groupData.m_groupHandler.m_doneHandler) { QTC_ASSERT(!m_groupData.m_groupHandler.m_doneHandler, - qWarning("Group Done Handler redefinition, overriding...")); + qWarning("Group done handler redefinition, overriding...")); m_groupData.m_groupHandler.m_doneHandler = child.m_groupData.m_groupHandler.m_doneHandler; } if (child.m_groupData.m_parallelLimit) { QTC_ASSERT(!m_groupData.m_parallelLimit, - qWarning("Group Execution Mode redefinition, overriding...")); + qWarning("Group execution mode redefinition, overriding...")); m_groupData.m_parallelLimit = child.m_groupData.m_parallelLimit; } if (child.m_groupData.m_workflowPolicy) { QTC_ASSERT(!m_groupData.m_workflowPolicy, - qWarning("Group Workflow Policy redefinition, overriding...")); + qWarning("Group workflow policy redefinition, overriding...")); m_groupData.m_workflowPolicy = child.m_groupData.m_workflowPolicy; } break; case Type::TaskHandler: QTC_ASSERT(child.m_taskHandler.m_createHandler, - qWarning("Task Create Handler can't be null, skipping..."); return); + qWarning("Task create handler can't be null, skipping..."); return); m_children.append(child); break; case Type::Storage: diff --git a/tests/auto/solutions/tasking/tst_tasking.cpp b/tests/auto/solutions/tasking/tst_tasking.cpp index d5d5386172a..aa8068cfbcd 100644 --- a/tests/auto/solutions/tasking/tst_tasking.cpp +++ b/tests/auto/solutions/tasking/tst_tasking.cpp @@ -94,6 +94,7 @@ class tst_Tasking : public QObject private slots: void validConstructs(); // compile test + void runtimeCheck(); // checks done on runtime void testTree_data(); void testTree(); void testInThread_data(); @@ -254,6 +255,74 @@ void tst_Tasking::validConstructs() #endif } +void tst_Tasking::runtimeCheck() +{ + { + QTest::ignoreMessage(QtDebugMsg, QRegularExpression("^SOFT ASSERT: ")); + QTest::ignoreMessage(QtWarningMsg, + "Can't add the same storage into one Group twice, skipping..."); + const TreeStorage storage; + + Group { + Storage(storage), + Storage(storage), + }; + } + + { + QTest::ignoreMessage(QtDebugMsg, QRegularExpression("^SOFT ASSERT: ")); + QTest::ignoreMessage(QtWarningMsg, + "Can't add the same storage into one Group twice, skipping..."); + const TreeStorage storage1; + const auto storage2 = storage1; + + Group { + Storage(storage1), + Storage(storage2), + }; + } + + { + QTest::ignoreMessage(QtDebugMsg, QRegularExpression("^SOFT ASSERT: ")); + QTest::ignoreMessage(QtWarningMsg, + "Group setup handler redefinition, overriding..."); + Group { + onGroupSetup([] {}), + onGroupSetup([] {}), + }; + } + + { + QTest::ignoreMessage(QtDebugMsg, QRegularExpression("^SOFT ASSERT: ")); + QTest::ignoreMessage(QtWarningMsg, + "Group done handler redefinition, overriding..."); + Group { + onGroupDone([] {}), + onGroupDone([] {}), + }; + } + + { + QTest::ignoreMessage(QtDebugMsg, QRegularExpression("^SOFT ASSERT: ")); + QTest::ignoreMessage(QtWarningMsg, + "Group execution mode redefinition, overriding..."); + Group { + sequential, + sequential, + }; + } + + { + QTest::ignoreMessage(QtDebugMsg, QRegularExpression("^SOFT ASSERT: ")); + QTest::ignoreMessage(QtWarningMsg, + "Group workflow policy redefinition, overriding..."); + Group { + stopOnError, + stopOnError, + }; + } +} + class TickAndDone : public QObject { Q_OBJECT