From 01747388d47e51074f622ba0d9b008e486cb9575 Mon Sep 17 00:00:00 2001 From: Christian Stenger Date: Mon, 6 Jun 2016 14:41:42 +0200 Subject: [PATCH] AutoTest: Pass parameter by reference and use framework id... ...for determining from which root node test cases names are needed. Another preparation for introducing test frameworks. Change-Id: I02910f3e4736d9be6e6822eea7863fc62252d4db Reviewed-by: David Schulz --- src/plugins/autotest/qtest/qttestparser.cpp | 2 +- src/plugins/autotest/testtreemodel.cpp | 12 +++++++----- src/plugins/autotest/testtreemodel.h | 2 +- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/plugins/autotest/qtest/qttestparser.cpp b/src/plugins/autotest/qtest/qttestparser.cpp index 0f51d058fdc..ca53ab994b2 100644 --- a/src/plugins/autotest/qtest/qttestparser.cpp +++ b/src/plugins/autotest/qtest/qttestparser.cpp @@ -234,7 +234,7 @@ static bool handleQtTest(QFutureInterface futureInterface, void QtTestParser::init(const QStringList &filesToParse) { - m_testCaseNames = TestTreeModel::instance()->testCaseNamesForFiles(filesToParse); + m_testCaseNames = TestTreeModel::instance()->testCaseNamesForFiles(id(), filesToParse); CppParser::init(filesToParse); } diff --git a/src/plugins/autotest/testtreemodel.cpp b/src/plugins/autotest/testtreemodel.cpp index ad1550bc798..4ecfecb56c3 100644 --- a/src/plugins/autotest/testtreemodel.cpp +++ b/src/plugins/autotest/testtreemodel.cpp @@ -261,14 +261,16 @@ void TestTreeModel::sweep() #endif } -QHash TestTreeModel::testCaseNamesForFiles(QStringList files) +// TODO move this function to qtest framework folder as it's only necessary there +QHash TestTreeModel::testCaseNamesForFiles(const Core::Id &id, + const QStringList &files) { QHash result; - if (!m_qtTestRootItem) - return result; + TestTreeItem *rootNode = rootItemForFramework(id); + QTC_ASSERT(rootNode, return result); - for (int row = 0, count = m_qtTestRootItem->childCount(); row < count; ++row) { - const TestTreeItem *child = m_qtTestRootItem->childItem(row); + for (int row = 0, count = rootNode->childCount(); row < count; ++row) { + const TestTreeItem *child = rootNode->childItem(row); if (files.contains(child->filePath())) { result.insert(child->filePath(), child->name()); } diff --git a/src/plugins/autotest/testtreemodel.h b/src/plugins/autotest/testtreemodel.h index 105fe518cc1..f65da209b4a 100644 --- a/src/plugins/autotest/testtreemodel.h +++ b/src/plugins/autotest/testtreemodel.h @@ -73,7 +73,7 @@ public: void markAllForRemoval(); void markForRemoval(const QString &filePath); void sweep(); - QHash testCaseNamesForFiles(QStringList files); + QHash testCaseNamesForFiles(const Core::Id &id, const QStringList &files); signals: void testTreeModelChanged();