diff options
author | Christian Stenger <christian.stenger@theqtcompany.com> | 2015-03-03 13:14:31 +0100 |
---|---|---|
committer | Christian Stenger <christian.stenger@theqtcompany.com> | 2015-03-03 15:36:43 +0200 |
commit | 535f1eec182b54011e2b32a625ba048e8e99ec98 (patch) | |
tree | c1ff1551caca476eb294a9d46a7469fa5363372a | |
parent | aba2844a5aecb506d97d869ccd74e8bf76393883 (diff) |
Fix removing unnamed quick tests...
...this was wrong especially when closing (the last) open project
that contained unnamed quick tests.
Change-Id: I6d030b6219d9f397a6ffb51a985ef4147eebec8a
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
-rw-r--r-- | plugins/autotest/testcodeparser.cpp | 16 | ||||
-rw-r--r-- | plugins/autotest/testtreemodel.cpp | 8 | ||||
-rw-r--r-- | plugins/autotest/testtreemodel.h | 3 |
3 files changed, 12 insertions, 15 deletions
diff --git a/plugins/autotest/testcodeparser.cpp b/plugins/autotest/testcodeparser.cpp index 3cd3ea518a..6b2ff8d4a8 100644 --- a/plugins/autotest/testcodeparser.cpp +++ b/plugins/autotest/testcodeparser.cpp @@ -672,14 +672,16 @@ void TestCodeParser::removeTestsIfNecessary(const QString &fileName) emit testItemsRemoved(file, TestTreeModel::QuickTest); } // unnamed Quick Tests must be handled separately - removeUnnamedQuickTestsByName(fileName); - QSet<QString> filePaths; - QList<QString> functionNames; - if (m_model->hasUnnamedQuickTests()) { - m_model->qmlFilesAndFunctionNamesForMainFile(fileName, &filePaths, &functionNames); - foreach (const QString &file, filePaths) - emit testItemsRemoved(file, TestTreeModel::QuickTest); + if (fileName.endsWith(QLatin1String(".qml"))) { + removeUnnamedQuickTestsByName(fileName); + emit unnamedQuickTestsRemoved(fileName); + } else { + m_model->qmlFilesForMainFile(fileName, &filePaths); + foreach (const QString &file, filePaths) { + removeUnnamedQuickTestsByName(file); + emit unnamedQuickTestsRemoved(file); + } } } } diff --git a/plugins/autotest/testtreemodel.cpp b/plugins/autotest/testtreemodel.cpp index eadfb74b7b..2ae5693feb 100644 --- a/plugins/autotest/testtreemodel.cpp +++ b/plugins/autotest/testtreemodel.cpp @@ -615,19 +615,15 @@ QString TestTreeModel::getMainFileForUnnamedQuickTest(const QString &qmlFile) co return QString(); } -void TestTreeModel::qmlFilesAndFunctionNamesForMainFile(const QString &mainFile, - QSet<QString> *filePaths, - QList<QString> *functionNames) const +void TestTreeModel::qmlFilesForMainFile(const QString &mainFile, QSet<QString> *filePaths) const { TestTreeItem *unnamed = unnamedQuickTests(); if (!unnamed) return; for (int i = 0; i < unnamed->childCount(); ++i) { const TestTreeItem *child = unnamed->child(i); - if (child->mainFile() == mainFile) { + if (child->mainFile() == mainFile) filePaths->insert(child->filePath()); - functionNames->append(child->name()); - } } } diff --git a/plugins/autotest/testtreemodel.h b/plugins/autotest/testtreemodel.h index 437aa787be..b476bb1a5b 100644 --- a/plugins/autotest/testtreemodel.h +++ b/plugins/autotest/testtreemodel.h @@ -72,8 +72,7 @@ public: QList<TestConfiguration *> getAllTestCases() const; QList<TestConfiguration *> getSelectedTests() const; QString getMainFileForUnnamedQuickTest(const QString &qmlFile) const; - void qmlFilesAndFunctionNamesForMainFile(const QString &mainFile, QSet<QString> *filePaths, - QList<QString> *functionNames) const; + void qmlFilesForMainFile(const QString &mainFile, QSet<QString> *filePaths) const; QList<QString> getUnnamedQuickTestFunctions() const; QSet<QString> qmlFilesForProFile(const QString &proFile) const; bool hasUnnamedQuickTests() const; |