diff options
author | Christian Stenger <christian.stenger@theqtcompany.com> | 2015-12-09 14:09:49 +0100 |
---|---|---|
committer | Christian Stenger <christian.stenger@theqtcompany.com> | 2016-01-12 12:14:34 +0000 |
commit | b13373e45e4c6105d665a1c70029d446c4f968cc (patch) | |
tree | 95a8b7568cee8f5c6d02737e0e63d6305cb509f1 | |
parent | a88d3df334f5711c75da89b7ca2baaf7e4f3775f (diff) |
Enable 'Run This Test' for gtest items
Change-Id: Ia0fb93a4bbc225c45352f0f818262f5b6ff9d6d6
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
-rw-r--r-- | plugins/autotest/testnavigationwidget.cpp | 8 | ||||
-rw-r--r-- | plugins/autotest/testtreemodel.cpp | 20 |
2 files changed, 26 insertions, 2 deletions
diff --git a/plugins/autotest/testnavigationwidget.cpp b/plugins/autotest/testnavigationwidget.cpp index e396c807eb..bff1b4de8d 100644 --- a/plugins/autotest/testnavigationwidget.cpp +++ b/plugins/autotest/testnavigationwidget.cpp @@ -106,7 +106,9 @@ void TestNavigationWidget::contextMenuEvent(QContextMenuEvent *event) const QString &unnamed = tr(Constants::UNNAMED_QUICKTESTS); if ((type == TestTreeItem::TestFunction && index.parent().data().toString() != unnamed) || (type == TestTreeItem::TestClass && index.data().toString() != unnamed) - || (type == TestTreeItem::TestDataTag)) { + || (type == TestTreeItem::TestDataTag) + || (type == TestTreeItem::GTestCase) + || (type == TestTreeItem::GTestName)) { runThisTest = new QAction(tr("Run This Test"), &menu); runThisTest->setEnabled(enabled); connect(runThisTest, &QAction::triggered, @@ -251,7 +253,9 @@ void TestNavigationWidget::onRunThisTestTriggered() TestTreeItem *item = static_cast<TestTreeItem *>(sourceIndex.internalPointer()); if (item->type() == TestTreeItem::TestClass || item->type() == TestTreeItem::TestFunction - || item->type() == TestTreeItem::TestDataTag) { + || item->type() == TestTreeItem::TestDataTag + || item->type() == TestTreeItem::GTestCase + || item->type() == TestTreeItem::GTestName) { if (TestConfiguration *configuration = m_model->getTestConfiguration(item)) { TestRunner *runner = TestRunner::instance(); runner->setSelectedTests( {configuration} ); diff --git a/plugins/autotest/testtreemodel.cpp b/plugins/autotest/testtreemodel.cpp index 91811f621f..507e18da20 100644 --- a/plugins/autotest/testtreemodel.cpp +++ b/plugins/autotest/testtreemodel.cpp @@ -461,6 +461,26 @@ TestConfiguration *TestTreeModel::getTestConfiguration(const TestTreeItem *item) config->setProject(project); break; } + case TestTreeItem::GTestCase: { + if (int childCount = item->childCount()) { + config = new TestConfiguration(QString(), + QStringList(item->name() + QLatin1String(".*"))); + config->setTestCaseCount(childCount); + config->setProFile(item->childItem(0)->mainFile()); + config->setProject(project); + config->setTestType(TestConfiguration::GTest); + } + break; + } + case TestTreeItem::GTestName: { + const TestTreeItem *parent = item->parentItem(); + config = new TestConfiguration(QString(), + QStringList(parent->name() + QLatin1Char('.') + item->name())); + config->setProFile(item->mainFile()); + config->setProject(project); + config->setTestType(TestConfiguration::GTest); + break; + } // not supported items default: return 0; |