diff --git a/plugins/autotest/autotestunittests.cpp b/plugins/autotest/autotestunittests.cpp index 8878f754183..1a8097c48ca 100644 --- a/plugins/autotest/autotestunittests.cpp +++ b/plugins/autotest/autotestunittests.cpp @@ -79,6 +79,7 @@ void AutoTestUnitTests::testCodeParser() QFETCH(int, expectedAutoTestsCount); QFETCH(int, expectedNamedQuickTestsCount); QFETCH(int, expectedUnnamedQuickTestsCount); + QFETCH(int, expectedDataTagsCount); NavigationWidget *navigation = NavigationWidget::instance(); navigation->activateSubWidget(Constants::AUTOTEST_ID); @@ -96,6 +97,7 @@ void AutoTestUnitTests::testCodeParser() QCOMPARE(m_model->autoTestsCount(), expectedAutoTestsCount); QCOMPARE(m_model->namedQuickTestsCount(), expectedNamedQuickTestsCount); QCOMPARE(m_model->unnamedQuickTestsCount(), expectedUnnamedQuickTestsCount); + QCOMPARE(m_model->dataTagsCount(), expectedDataTagsCount); QCOMPARE(m_model->parser()->autoTestsCount(), expectedAutoTestsCount); QCOMPARE(m_model->parser()->namedQuickTestsCount(), expectedNamedQuickTestsCount); @@ -109,20 +111,21 @@ void AutoTestUnitTests::testCodeParser_data() QTest::addColumn("expectedAutoTestsCount"); QTest::addColumn("expectedNamedQuickTestsCount"); QTest::addColumn("expectedUnnamedQuickTestsCount"); + QTest::addColumn("expectedDataTagsCount"); QTest::newRow("plainAutoTest") << QString(m_tmpDir->path() + QLatin1String("/plain/plain.pro")) - << 1 << 0 << 0; + << 1 << 0 << 0 << 0; QTest::newRow("mixedAutoTestAndQuickTests") << QString(m_tmpDir->path() + QLatin1String("/mixed_atp/mixed_atp.pro")) - << 3 << 5 << 3; + << 3 << 5 << 3 << 8; QTest::newRow("plainAutoTestQbs") << QString(m_tmpDir->path() + QLatin1String("/plain/plain.qbs")) - << 1 << 0 << 0; - QTest::newRow("mixedAuotTestAndQuickTestsQbs") + << 1 << 0 << 0 << 0; + QTest::newRow("mixedAutoTestAndQuickTestsQbs") << QString(m_tmpDir->path() + QLatin1String("/mixed_atp/mixed_atp.qbs")) - << 3 << 5 << 3; + << 3 << 5 << 3 << 8; } void AutoTestUnitTests::testCodeParserSwitchStartup() @@ -131,6 +134,7 @@ void AutoTestUnitTests::testCodeParserSwitchStartup() QFETCH(QList, expectedAutoTestsCount); QFETCH(QList, expectedNamedQuickTestsCount); QFETCH(QList, expectedUnnamedQuickTestsCount); + QFETCH(QList, expectedDataTagsCount); NavigationWidget *navigation = NavigationWidget::instance(); navigation->activateSubWidget(Constants::AUTOTEST_ID); @@ -149,6 +153,8 @@ void AutoTestUnitTests::testCodeParserSwitchStartup() m_isQt4 ? 0 : expectedNamedQuickTestsCount.at(i)); QCOMPARE(m_model->unnamedQuickTestsCount(), m_isQt4 ? 0 : expectedUnnamedQuickTestsCount.at(i)); + QCOMPARE(m_model->dataTagsCount(), + expectedDataTagsCount.at(i)); QCOMPARE(m_model->parser()->autoTestsCount(), expectedAutoTestsCount.at(i)); QCOMPARE(m_model->parser()->namedQuickTestsCount(), @@ -164,6 +170,7 @@ void AutoTestUnitTests::testCodeParserSwitchStartup_data() QTest::addColumn >("expectedAutoTestsCount"); QTest::addColumn >("expectedNamedQuickTestsCount"); QTest::addColumn >("expectedUnnamedQuickTestsCount"); + QTest::addColumn >("expectedDataTagsCount"); QStringList projects = QStringList() << QString(m_tmpDir->path() + QLatin1String("/plain/plain.pro")) @@ -174,9 +181,11 @@ void AutoTestUnitTests::testCodeParserSwitchStartup_data() QList expectedAutoTests = QList() << 1 << 3 << 1 << 3; QList expectedNamedQuickTests = QList() << 0 << 5 << 0 << 5; QList expectedUnnamedQuickTests = QList() << 0 << 3 << 0 << 3; + QList expectedDataTagsCount = QList() << 0 << 8 << 0 << 8; QTest::newRow("loadMultipleProjects") - << projects << expectedAutoTests << expectedNamedQuickTests << expectedUnnamedQuickTests; + << projects << expectedAutoTests << expectedNamedQuickTests + << expectedUnnamedQuickTests << expectedDataTagsCount; } } // namespace Internal diff --git a/plugins/autotest/testtreemodel.cpp b/plugins/autotest/testtreemodel.cpp index c59d69a7457..7271ccfd17b 100644 --- a/plugins/autotest/testtreemodel.cpp +++ b/plugins/autotest/testtreemodel.cpp @@ -670,6 +670,17 @@ int TestTreeModel::unnamedQuickTestsCount() const return unnamed->childCount(); return 0; } + +int TestTreeModel::dataTagsCount() const +{ + int dataTagCount = 0; + foreach (Utils::TreeItem *item, m_autoTestRootItem->children()) { + TestTreeItem *classItem = static_cast(item); + foreach (Utils::TreeItem *functionItem, classItem->children()) + dataTagCount += functionItem->childCount(); + } + return dataTagCount; +} #endif /***************************** Sort/Filter Model **********************************/ diff --git a/plugins/autotest/testtreemodel.h b/plugins/autotest/testtreemodel.h index 5c51648ed50..fe0a8d702b7 100644 --- a/plugins/autotest/testtreemodel.h +++ b/plugins/autotest/testtreemodel.h @@ -67,6 +67,7 @@ public: int autoTestsCount() const; int namedQuickTestsCount() const; int unnamedQuickTestsCount() const; + int dataTagsCount() const; #endif signals: