diff options
author | Christian Stenger <christian.stenger@qt.io> | 2023-01-10 09:36:43 +0100 |
---|---|---|
committer | Christian Stenger <christian.stenger@qt.io> | 2023-01-10 09:49:40 +0000 |
commit | 7684571e108f5d7a803944a1cd78f17b61a29c35 (patch) | |
tree | 9cdb56cfa6b464c1a5c75f0ed5737b9b52fcc362 | |
parent | 6e7c257a8cfec316fc863119716f4ea7dd66e831 (diff) |
AutoTest: Fix handling of data tags with spaces
Change-Id: Ie725d8bf67b6a143f52c84b902b69a077a55a2bc
Reviewed-by: David Schulz <david.schulz@qt.io>
-rw-r--r-- | src/plugins/autotest/qtest/qttesttreeitem.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/plugins/autotest/qtest/qttesttreeitem.cpp b/src/plugins/autotest/qtest/qttesttreeitem.cpp index 222680d4cf..dcada43181 100644 --- a/src/plugins/autotest/qtest/qttesttreeitem.cpp +++ b/src/plugins/autotest/qtest/qttesttreeitem.cpp @@ -15,6 +15,13 @@ namespace Autotest { namespace Internal { +static QString functionWithDataTagAsArg(const QString &func, const QString &dataTag) +{ + if (dataTag.contains(' ')) + return '"' + func + ':' + dataTag + '"'; + return func + ':' + dataTag; +} + QtTestTreeItem::QtTestTreeItem(ITestFramework *testFramework, const QString &name, const Utils::FilePath &filePath, TestTreeItem::Type type) : TestTreeItem(testFramework, name, filePath, type) @@ -140,9 +147,8 @@ ITestConfiguration *QtTestTreeItem::testConfiguration() const const TestTreeItem *parent = function ? function->parentItem() : nullptr; if (!parent) return nullptr; - const QString functionWithTag = function->name() + ':' + name(); config = new QtTestConfiguration(framework()); - config->setTestCases(QStringList(functionWithTag)); + config->setTestCases(QStringList(functionWithDataTagAsArg(function->name(), name()))); config->setProjectFile(parent->proFile()); config->setProject(project); break; @@ -185,7 +191,7 @@ static void fillTestConfigurationsFromCheckState(const TestTreeItem *item, const QString funcName = grandChild->name(); grandChild->forFirstLevelChildren([&testCases, &funcName](ITestTreeItem *dataTag) { if (dataTag->checked() == Qt::Checked) - testCases << funcName + ':' + dataTag->name(); + testCases << functionWithDataTagAsArg(funcName, dataTag->name()); }); } }); @@ -217,7 +223,7 @@ static void collectFailedTestInfo(TestTreeItem *item, QList<ITestConfiguration * } else { func->forFirstLevelChildren([&testCases, func](ITestTreeItem *dataTag) { if (dataTag->data(0, FailedRole).toBool()) - testCases << func->name() + ':' + dataTag->name(); + testCases << functionWithDataTagAsArg(func->name(), dataTag->name()); }); } }); |