forked from qt-creator/qt-creator
AutoTest: Unify naming scheme for gtest related classes and files
Change-Id: Ib0739889cbc6416da3f28f1e39b197317ec8a4e6 Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
This commit is contained in:
@@ -23,9 +23,9 @@ SOURCES += \
|
|||||||
testsettingspage.cpp \
|
testsettingspage.cpp \
|
||||||
testnavigationwidget.cpp \
|
testnavigationwidget.cpp \
|
||||||
testoutputreader.cpp \
|
testoutputreader.cpp \
|
||||||
gtest/googletestconfiguration.cpp \
|
gtest/gtestconfiguration.cpp \
|
||||||
gtest/googletestparser.cpp \
|
gtest/gtestparser.cpp \
|
||||||
gtest/googletesttreeitem.cpp \
|
gtest/gtesttreeitem.cpp \
|
||||||
gtest/gtestresult.cpp \
|
gtest/gtestresult.cpp \
|
||||||
gtest/gtestoutputreader.cpp \
|
gtest/gtestoutputreader.cpp \
|
||||||
gtest/gtestvisitors.cpp \
|
gtest/gtestvisitors.cpp \
|
||||||
@@ -63,9 +63,9 @@ HEADERS += \
|
|||||||
testoutputreader.h \
|
testoutputreader.h \
|
||||||
autotesticons.h \
|
autotesticons.h \
|
||||||
itestparser.h \
|
itestparser.h \
|
||||||
gtest/googletestconfiguration.h \
|
gtest/gtestconfiguration.h \
|
||||||
gtest/googletestparser.h \
|
gtest/gtestparser.h \
|
||||||
gtest/googletesttreeitem.h \
|
gtest/gtesttreeitem.h \
|
||||||
gtest/gtestoutputreader.h \
|
gtest/gtestoutputreader.h \
|
||||||
gtest/gtestresult.h \
|
gtest/gtestresult.h \
|
||||||
gtest/gtest_utils.h \
|
gtest/gtest_utils.h \
|
||||||
|
|||||||
@@ -23,20 +23,20 @@
|
|||||||
**
|
**
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#include "googletestconfiguration.h"
|
#include "gtestconfiguration.h"
|
||||||
#include "gtestoutputreader.h"
|
#include "gtestoutputreader.h"
|
||||||
#include "../testsettings.h"
|
#include "../testsettings.h"
|
||||||
|
|
||||||
namespace Autotest {
|
namespace Autotest {
|
||||||
namespace Internal {
|
namespace Internal {
|
||||||
|
|
||||||
TestOutputReader *GoogleTestConfiguration::outputReader(const QFutureInterface<TestResultPtr> &fi,
|
TestOutputReader *GTestConfiguration::outputReader(const QFutureInterface<TestResultPtr> &fi,
|
||||||
QProcess *app) const
|
QProcess *app) const
|
||||||
{
|
{
|
||||||
return new GTestOutputReader(fi, app, buildDirectory());
|
return new GTestOutputReader(fi, app, buildDirectory());
|
||||||
}
|
}
|
||||||
|
|
||||||
QStringList GoogleTestConfiguration::argumentsForTestRunner(const TestSettings &settings) const
|
QStringList GTestConfiguration::argumentsForTestRunner(const TestSettings &settings) const
|
||||||
{
|
{
|
||||||
QStringList arguments;
|
QStringList arguments;
|
||||||
const QStringList &testSets = testCases();
|
const QStringList &testSets = testCases();
|
||||||
@@ -30,10 +30,10 @@
|
|||||||
namespace Autotest {
|
namespace Autotest {
|
||||||
namespace Internal {
|
namespace Internal {
|
||||||
|
|
||||||
class GoogleTestConfiguration : public TestConfiguration
|
class GTestConfiguration : public TestConfiguration
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
explicit GoogleTestConfiguration() {}
|
explicit GTestConfiguration() {}
|
||||||
TestOutputReader *outputReader(const QFutureInterface<TestResultPtr> &fi,
|
TestOutputReader *outputReader(const QFutureInterface<TestResultPtr> &fi,
|
||||||
QProcess *app) const override;
|
QProcess *app) const override;
|
||||||
QStringList argumentsForTestRunner(const TestSettings &settings) const override;
|
QStringList argumentsForTestRunner(const TestSettings &settings) const override;
|
||||||
@@ -23,8 +23,8 @@
|
|||||||
**
|
**
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#include "googletestparser.h"
|
#include "gtestparser.h"
|
||||||
#include "googletesttreeitem.h"
|
#include "gtesttreeitem.h"
|
||||||
#include "gtestvisitors.h"
|
#include "gtestvisitors.h"
|
||||||
#include "gtest_utils.h"
|
#include "gtest_utils.h"
|
||||||
#include "../autotest_utils.h"
|
#include "../autotest_utils.h"
|
||||||
@@ -32,10 +32,10 @@
|
|||||||
namespace Autotest {
|
namespace Autotest {
|
||||||
namespace Internal {
|
namespace Internal {
|
||||||
|
|
||||||
TestTreeItem *GoogleTestParseResult::createTestTreeItem() const
|
TestTreeItem *GTestParseResult::createTestTreeItem() const
|
||||||
{
|
{
|
||||||
if (itemType == TestTreeItem::TestCase || itemType == TestTreeItem::TestFunctionOrSet)
|
if (itemType == TestTreeItem::TestCase || itemType == TestTreeItem::TestFunctionOrSet)
|
||||||
return GoogleTestTreeItem::createTestItem(this);
|
return GTestTreeItem::createTestItem(this);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -91,7 +91,7 @@ static bool handleGTest(QFutureInterface<TestParseResultPtr> futureInterface,
|
|||||||
proFile = ppList.first()->projectFile;
|
proFile = ppList.first()->projectFile;
|
||||||
|
|
||||||
foreach (const GTestCaseSpec &testSpec, result.keys()) {
|
foreach (const GTestCaseSpec &testSpec, result.keys()) {
|
||||||
GoogleTestParseResult *parseResult = new GoogleTestParseResult;
|
GTestParseResult *parseResult = new GTestParseResult;
|
||||||
parseResult->itemType = TestTreeItem::TestCase;
|
parseResult->itemType = TestTreeItem::TestCase;
|
||||||
parseResult->fileName = filePath;
|
parseResult->fileName = filePath;
|
||||||
parseResult->name = testSpec.testCaseName;
|
parseResult->name = testSpec.testCaseName;
|
||||||
@@ -101,12 +101,12 @@ static bool handleGTest(QFutureInterface<TestParseResultPtr> futureInterface,
|
|||||||
parseResult->proFile = proFile;
|
parseResult->proFile = proFile;
|
||||||
|
|
||||||
foreach (const GTestCodeLocationAndType &location, result.value(testSpec)) {
|
foreach (const GTestCodeLocationAndType &location, result.value(testSpec)) {
|
||||||
GoogleTestParseResult *testSet = new GoogleTestParseResult;
|
GTestParseResult *testSet = new GTestParseResult;
|
||||||
testSet->name = location.m_name;
|
testSet->name = location.m_name;
|
||||||
testSet->fileName = filePath;
|
testSet->fileName = filePath;
|
||||||
testSet->line = location.m_line;
|
testSet->line = location.m_line;
|
||||||
testSet->column = location.m_column;
|
testSet->column = location.m_column;
|
||||||
testSet->disabled = location.m_state & GoogleTestTreeItem::Disabled;
|
testSet->disabled = location.m_state & GTestTreeItem::Disabled;
|
||||||
testSet->itemType = location.m_type;
|
testSet->itemType = location.m_type;
|
||||||
testSet->proFile = proFile;
|
testSet->proFile = proFile;
|
||||||
|
|
||||||
@@ -118,8 +118,8 @@ static bool handleGTest(QFutureInterface<TestParseResultPtr> futureInterface,
|
|||||||
return !result.keys().isEmpty();
|
return !result.keys().isEmpty();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool GoogleTestParser::processDocument(QFutureInterface<TestParseResultPtr> futureInterface,
|
bool GTestParser::processDocument(QFutureInterface<TestParseResultPtr> futureInterface,
|
||||||
const QString &fileName)
|
const QString &fileName)
|
||||||
{
|
{
|
||||||
if (!m_cppSnapshot.contains(fileName) || !selectedForBuilding(fileName))
|
if (!m_cppSnapshot.contains(fileName) || !selectedForBuilding(fileName))
|
||||||
return false;
|
return false;
|
||||||
@@ -30,17 +30,17 @@
|
|||||||
namespace Autotest {
|
namespace Autotest {
|
||||||
namespace Internal {
|
namespace Internal {
|
||||||
|
|
||||||
class GoogleTestParseResult : public TestParseResult
|
class GTestParseResult : public TestParseResult
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
explicit GoogleTestParseResult() : TestParseResult(TestTreeModel::GoogleTest) {}
|
explicit GTestParseResult() : TestParseResult(TestTreeModel::GoogleTest) {}
|
||||||
TestTreeItem *createTestTreeItem() const override;
|
TestTreeItem *createTestTreeItem() const override;
|
||||||
bool parameterized = false;
|
bool parameterized = false;
|
||||||
bool typed = false;
|
bool typed = false;
|
||||||
bool disabled = false;
|
bool disabled = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
class GoogleTestParser : public CppParser
|
class GTestParser : public CppParser
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
bool processDocument(QFutureInterface<TestParseResultPtr> futureInterface,
|
bool processDocument(QFutureInterface<TestParseResultPtr> futureInterface,
|
||||||
@@ -23,9 +23,9 @@
|
|||||||
**
|
**
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#include "googletesttreeitem.h"
|
#include "gtesttreeitem.h"
|
||||||
#include "googletestconfiguration.h"
|
#include "gtestconfiguration.h"
|
||||||
#include "googletestparser.h"
|
#include "gtestparser.h"
|
||||||
#include "../autotest_utils.h"
|
#include "../autotest_utils.h"
|
||||||
|
|
||||||
#include <projectexplorer/session.h>
|
#include <projectexplorer/session.h>
|
||||||
@@ -34,22 +34,22 @@
|
|||||||
namespace Autotest {
|
namespace Autotest {
|
||||||
namespace Internal {
|
namespace Internal {
|
||||||
|
|
||||||
static QString gtestFilter(GoogleTestTreeItem::TestStates states)
|
static QString gtestFilter(GTestTreeItem::TestStates states)
|
||||||
{
|
{
|
||||||
if ((states & GoogleTestTreeItem::Parameterized) && (states & GoogleTestTreeItem::Typed))
|
if ((states & GTestTreeItem::Parameterized) && (states & GTestTreeItem::Typed))
|
||||||
return QLatin1String("*/%1/*.%2");
|
return QLatin1String("*/%1/*.%2");
|
||||||
if (states & GoogleTestTreeItem::Parameterized)
|
if (states & GTestTreeItem::Parameterized)
|
||||||
return QLatin1String("*/%1.%2/*");
|
return QLatin1String("*/%1.%2/*");
|
||||||
if (states & GoogleTestTreeItem::Typed)
|
if (states & GTestTreeItem::Typed)
|
||||||
return QLatin1String("%1/*.%2");
|
return QLatin1String("%1/*.%2");
|
||||||
return QLatin1String("%1.%2");
|
return QLatin1String("%1.%2");
|
||||||
}
|
}
|
||||||
|
|
||||||
GoogleTestTreeItem *GoogleTestTreeItem::createTestItem(const TestParseResult *result)
|
GTestTreeItem *GTestTreeItem::createTestItem(const TestParseResult *result)
|
||||||
{
|
{
|
||||||
const GoogleTestParseResult *parseResult = static_cast<const GoogleTestParseResult *>(result);
|
const GTestParseResult *parseResult = static_cast<const GTestParseResult *>(result);
|
||||||
GoogleTestTreeItem *item = new GoogleTestTreeItem(parseResult->name, parseResult->fileName,
|
GTestTreeItem *item = new GTestTreeItem(parseResult->name, parseResult->fileName,
|
||||||
parseResult->itemType);
|
parseResult->itemType);
|
||||||
item->setProFile(parseResult->proFile);
|
item->setProFile(parseResult->proFile);
|
||||||
item->setLine(parseResult->line);
|
item->setLine(parseResult->line);
|
||||||
item->setColumn(parseResult->column);
|
item->setColumn(parseResult->column);
|
||||||
@@ -65,7 +65,7 @@ GoogleTestTreeItem *GoogleTestTreeItem::createTestItem(const TestParseResult *re
|
|||||||
return item;
|
return item;
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariant GoogleTestTreeItem::data(int column, int role) const
|
QVariant GTestTreeItem::data(int column, int role) const
|
||||||
{
|
{
|
||||||
switch (role) {
|
switch (role) {
|
||||||
case Qt::DisplayRole: {
|
case Qt::DisplayRole: {
|
||||||
@@ -93,17 +93,17 @@ QVariant GoogleTestTreeItem::data(int column, int role) const
|
|||||||
return TestTreeItem::data(column, role);
|
return TestTreeItem::data(column, role);
|
||||||
}
|
}
|
||||||
|
|
||||||
TestConfiguration *GoogleTestTreeItem::testConfiguration() const
|
TestConfiguration *GTestTreeItem::testConfiguration() const
|
||||||
{
|
{
|
||||||
ProjectExplorer::Project *project = ProjectExplorer::SessionManager::startupProject();
|
ProjectExplorer::Project *project = ProjectExplorer::SessionManager::startupProject();
|
||||||
QTC_ASSERT(project, return 0);
|
QTC_ASSERT(project, return 0);
|
||||||
|
|
||||||
GoogleTestConfiguration *config = 0;
|
GTestConfiguration *config = 0;
|
||||||
switch (type()) {
|
switch (type()) {
|
||||||
case TestCase: {
|
case TestCase: {
|
||||||
const QString &testSpecifier = gtestFilter(state()).arg(name()).arg(QLatin1Char('*'));
|
const QString &testSpecifier = gtestFilter(state()).arg(name()).arg(QLatin1Char('*'));
|
||||||
if (int count = childCount()) {
|
if (int count = childCount()) {
|
||||||
config = new GoogleTestConfiguration;
|
config = new GTestConfiguration;
|
||||||
config->setTestCases(QStringList(testSpecifier));
|
config->setTestCases(QStringList(testSpecifier));
|
||||||
config->setTestCaseCount(count);
|
config->setTestCaseCount(count);
|
||||||
config->setProFile(proFile());
|
config->setProFile(proFile());
|
||||||
@@ -115,11 +115,11 @@ TestConfiguration *GoogleTestTreeItem::testConfiguration() const
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case TestFunctionOrSet: {
|
case TestFunctionOrSet: {
|
||||||
GoogleTestTreeItem *parent = static_cast<GoogleTestTreeItem *>(parentItem());
|
GTestTreeItem *parent = static_cast<GTestTreeItem *>(parentItem());
|
||||||
if (!parent)
|
if (!parent)
|
||||||
return 0;
|
return 0;
|
||||||
const QString &testSpecifier = gtestFilter(parent->state()).arg(parent->name()).arg(name());
|
const QString &testSpecifier = gtestFilter(parent->state()).arg(parent->name()).arg(name());
|
||||||
config = new GoogleTestConfiguration;
|
config = new GTestConfiguration;
|
||||||
config->setTestCases(QStringList(testSpecifier));
|
config->setTestCases(QStringList(testSpecifier));
|
||||||
config->setProFile(proFile());
|
config->setProFile(proFile());
|
||||||
config->setProject(project);
|
config->setProject(project);
|
||||||
@@ -161,7 +161,7 @@ uint qHash(const ProFileWithDisplayName &lhs)
|
|||||||
return ::qHash(lhs.proFile) ^ ::qHash(lhs.displayName);
|
return ::qHash(lhs.proFile) ^ ::qHash(lhs.displayName);
|
||||||
}
|
}
|
||||||
|
|
||||||
QList<TestConfiguration *> GoogleTestTreeItem::getAllTestConfigurations() const
|
QList<TestConfiguration *> GTestTreeItem::getAllTestConfigurations() const
|
||||||
{
|
{
|
||||||
QList<TestConfiguration *> result;
|
QList<TestConfiguration *> result;
|
||||||
|
|
||||||
@@ -171,7 +171,7 @@ QList<TestConfiguration *> GoogleTestTreeItem::getAllTestConfigurations() const
|
|||||||
|
|
||||||
QHash<ProFileWithDisplayName, int> proFilesWithTestSets;
|
QHash<ProFileWithDisplayName, int> proFilesWithTestSets;
|
||||||
for (int row = 0, count = childCount(); row < count; ++row) {
|
for (int row = 0, count = childCount(); row < count; ++row) {
|
||||||
const GoogleTestTreeItem *child = static_cast<const GoogleTestTreeItem *>(childItem(row));
|
const GTestTreeItem *child = static_cast<const GTestTreeItem *>(childItem(row));
|
||||||
|
|
||||||
const int grandChildCount = child->childCount();
|
const int grandChildCount = child->childCount();
|
||||||
for (int grandChildRow = 0; grandChildRow < grandChildCount; ++grandChildRow) {
|
for (int grandChildRow = 0; grandChildRow < grandChildCount; ++grandChildRow) {
|
||||||
@@ -190,7 +190,7 @@ QList<TestConfiguration *> GoogleTestTreeItem::getAllTestConfigurations() const
|
|||||||
QHash<ProFileWithDisplayName, int>::ConstIterator end = proFilesWithTestSets.end();
|
QHash<ProFileWithDisplayName, int>::ConstIterator end = proFilesWithTestSets.end();
|
||||||
for ( ; it != end; ++it) {
|
for ( ; it != end; ++it) {
|
||||||
const ProFileWithDisplayName &key = it.key();
|
const ProFileWithDisplayName &key = it.key();
|
||||||
GoogleTestConfiguration *tc = new GoogleTestConfiguration;
|
GTestConfiguration *tc = new GTestConfiguration;
|
||||||
tc->setTestCaseCount(it.value());
|
tc->setTestCaseCount(it.value());
|
||||||
tc->setProFile(key.proFile);
|
tc->setProFile(key.proFile);
|
||||||
tc->setDisplayName(key.displayName);
|
tc->setDisplayName(key.displayName);
|
||||||
@@ -201,7 +201,7 @@ QList<TestConfiguration *> GoogleTestTreeItem::getAllTestConfigurations() const
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
QList<TestConfiguration *> GoogleTestTreeItem::getSelectedTestConfigurations() const
|
QList<TestConfiguration *> GTestTreeItem::getSelectedTestConfigurations() const
|
||||||
{
|
{
|
||||||
QList<TestConfiguration *> result;
|
QList<TestConfiguration *> result;
|
||||||
ProjectExplorer::Project *project = ProjectExplorer::SessionManager::startupProject();
|
ProjectExplorer::Project *project = ProjectExplorer::SessionManager::startupProject();
|
||||||
@@ -210,7 +210,7 @@ QList<TestConfiguration *> GoogleTestTreeItem::getSelectedTestConfigurations() c
|
|||||||
|
|
||||||
QHash<ProFileWithDisplayName, QStringList> proFilesWithCheckedTestSets;
|
QHash<ProFileWithDisplayName, QStringList> proFilesWithCheckedTestSets;
|
||||||
for (int row = 0, count = childCount(); row < count; ++row) {
|
for (int row = 0, count = childCount(); row < count; ++row) {
|
||||||
const GoogleTestTreeItem *child = static_cast<const GoogleTestTreeItem *>(childItem(row));
|
const GTestTreeItem *child = static_cast<const GTestTreeItem *>(childItem(row));
|
||||||
if (child->checked() == Qt::Unchecked)
|
if (child->checked() == Qt::Unchecked)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
@@ -232,7 +232,7 @@ QList<TestConfiguration *> GoogleTestTreeItem::getSelectedTestConfigurations() c
|
|||||||
QHash<ProFileWithDisplayName, QStringList>::ConstIterator end = proFilesWithCheckedTestSets.end();
|
QHash<ProFileWithDisplayName, QStringList>::ConstIterator end = proFilesWithCheckedTestSets.end();
|
||||||
for ( ; it != end; ++it) {
|
for ( ; it != end; ++it) {
|
||||||
const ProFileWithDisplayName &key = it.key();
|
const ProFileWithDisplayName &key = it.key();
|
||||||
GoogleTestConfiguration *tc = new GoogleTestConfiguration;
|
GTestConfiguration *tc = new GTestConfiguration;
|
||||||
tc->setTestCases(it.value());
|
tc->setTestCases(it.value());
|
||||||
tc->setProFile(key.proFile);
|
tc->setProFile(key.proFile);
|
||||||
tc->setDisplayName(key.displayName);
|
tc->setDisplayName(key.displayName);
|
||||||
@@ -243,17 +243,17 @@ QList<TestConfiguration *> GoogleTestTreeItem::getSelectedTestConfigurations() c
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
TestTreeItem *GoogleTestTreeItem::find(const TestParseResult *result)
|
TestTreeItem *GTestTreeItem::find(const TestParseResult *result)
|
||||||
{
|
{
|
||||||
QTC_ASSERT(result, return 0);
|
QTC_ASSERT(result, return 0);
|
||||||
|
|
||||||
const GoogleTestParseResult *parseResult = static_cast<const GoogleTestParseResult *>(result);
|
const GTestParseResult *parseResult = static_cast<const GTestParseResult *>(result);
|
||||||
GoogleTestTreeItem::TestStates states = parseResult->disabled ? GoogleTestTreeItem::Disabled
|
GTestTreeItem::TestStates states = parseResult->disabled ? GTestTreeItem::Disabled
|
||||||
: GoogleTestTreeItem::Enabled;
|
: GTestTreeItem::Enabled;
|
||||||
if (parseResult->parameterized)
|
if (parseResult->parameterized)
|
||||||
states |= GoogleTestTreeItem::Parameterized;
|
states |= GTestTreeItem::Parameterized;
|
||||||
if (parseResult->typed)
|
if (parseResult->typed)
|
||||||
states |= GoogleTestTreeItem::Typed;
|
states |= GTestTreeItem::Typed;
|
||||||
switch (type()) {
|
switch (type()) {
|
||||||
case Root:
|
case Root:
|
||||||
return findChildByNameStateAndFile(parseResult->name, states, parseResult->proFile);
|
return findChildByNameStateAndFile(parseResult->name, states, parseResult->proFile);
|
||||||
@@ -264,23 +264,23 @@ TestTreeItem *GoogleTestTreeItem::find(const TestParseResult *result)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool GoogleTestTreeItem::modify(const TestParseResult *result)
|
bool GTestTreeItem::modify(const TestParseResult *result)
|
||||||
{
|
{
|
||||||
QTC_ASSERT(result, return false);
|
QTC_ASSERT(result, return false);
|
||||||
|
|
||||||
switch (type()) {
|
switch (type()) {
|
||||||
case TestFunctionOrSet:
|
case TestFunctionOrSet:
|
||||||
return modifyTestSetContent(static_cast<const GoogleTestParseResult *>(result));
|
return modifyTestSetContent(static_cast<const GTestParseResult *>(result));
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool GoogleTestTreeItem::modifyTestSetContent(const GoogleTestParseResult *result)
|
bool GTestTreeItem::modifyTestSetContent(const GTestParseResult *result)
|
||||||
{
|
{
|
||||||
bool hasBeenModified = modifyLineAndColumn(result->line, result->column);
|
bool hasBeenModified = modifyLineAndColumn(result->line, result->column);
|
||||||
GoogleTestTreeItem::TestStates states = result->disabled ? GoogleTestTreeItem::Disabled
|
GTestTreeItem::TestStates states = result->disabled ? GTestTreeItem::Disabled
|
||||||
: GoogleTestTreeItem::Enabled;
|
: GTestTreeItem::Enabled;
|
||||||
if (m_state != states) {
|
if (m_state != states) {
|
||||||
m_state = states;
|
m_state = states;
|
||||||
hasBeenModified = true;
|
hasBeenModified = true;
|
||||||
@@ -288,22 +288,22 @@ bool GoogleTestTreeItem::modifyTestSetContent(const GoogleTestParseResult *resul
|
|||||||
return hasBeenModified;
|
return hasBeenModified;
|
||||||
}
|
}
|
||||||
|
|
||||||
TestTreeItem *GoogleTestTreeItem::findChildByNameStateAndFile(const QString &name,
|
TestTreeItem *GTestTreeItem::findChildByNameStateAndFile(const QString &name,
|
||||||
GoogleTestTreeItem::TestStates state,
|
GTestTreeItem::TestStates state,
|
||||||
const QString &proFile) const
|
const QString &proFile) const
|
||||||
{
|
{
|
||||||
return findChildBy([name, state, proFile](const TestTreeItem *other) -> bool {
|
return findChildBy([name, state, proFile](const TestTreeItem *other) -> bool {
|
||||||
const GoogleTestTreeItem *gtestItem = static_cast<const GoogleTestTreeItem *>(other);
|
const GTestTreeItem *gtestItem = static_cast<const GTestTreeItem *>(other);
|
||||||
return other->proFile() == proFile
|
return other->proFile() == proFile
|
||||||
&& other->name() == name
|
&& other->name() == name
|
||||||
&& gtestItem->state() == state;
|
&& gtestItem->state() == state;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
QString GoogleTestTreeItem::nameSuffix() const
|
QString GTestTreeItem::nameSuffix() const
|
||||||
{
|
{
|
||||||
static QString markups[] = { QCoreApplication::translate("GoogleTestTreeItem", "parameterized"),
|
static QString markups[] = { QCoreApplication::translate("GTestTreeItem", "parameterized"),
|
||||||
QCoreApplication::translate("GoogleTestTreeItem", "typed") };
|
QCoreApplication::translate("GTestTreeItem", "typed") };
|
||||||
QString suffix;
|
QString suffix;
|
||||||
if (m_state & Parameterized)
|
if (m_state & Parameterized)
|
||||||
suffix = QLatin1String(" [") + markups[0];
|
suffix = QLatin1String(" [") + markups[0];
|
||||||
@@ -30,9 +30,9 @@
|
|||||||
namespace Autotest {
|
namespace Autotest {
|
||||||
namespace Internal {
|
namespace Internal {
|
||||||
|
|
||||||
class GoogleTestParseResult;
|
class GTestParseResult;
|
||||||
|
|
||||||
class GoogleTestTreeItem : public TestTreeItem
|
class GTestTreeItem : public TestTreeItem
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
enum TestState
|
enum TestState
|
||||||
@@ -46,10 +46,10 @@ public:
|
|||||||
Q_FLAGS(TestState)
|
Q_FLAGS(TestState)
|
||||||
Q_DECLARE_FLAGS(TestStates, TestState)
|
Q_DECLARE_FLAGS(TestStates, TestState)
|
||||||
|
|
||||||
GoogleTestTreeItem(const QString &name = QString(), const QString &filePath = QString(),
|
GTestTreeItem(const QString &name = QString(), const QString &filePath = QString(),
|
||||||
Type type = Root) : TestTreeItem(name, filePath, type), m_state(Enabled) {}
|
Type type = Root) : TestTreeItem(name, filePath, type), m_state(Enabled) {}
|
||||||
|
|
||||||
static GoogleTestTreeItem *createTestItem(const TestParseResult *result);
|
static GTestTreeItem *createTestItem(const TestParseResult *result);
|
||||||
|
|
||||||
QVariant data(int column, int role) const override;
|
QVariant data(int column, int role) const override;
|
||||||
bool canProvideTestConfiguration() const override { return type() != Root; }
|
bool canProvideTestConfiguration() const override { return type() != Root; }
|
||||||
@@ -62,20 +62,20 @@ public:
|
|||||||
void setStates(TestStates states) { m_state = states; }
|
void setStates(TestStates states) { m_state = states; }
|
||||||
void setState(TestState state) { m_state |= state; }
|
void setState(TestState state) { m_state |= state; }
|
||||||
TestStates state() const { return m_state; }
|
TestStates state() const { return m_state; }
|
||||||
bool modifyTestSetContent(const GoogleTestParseResult *result);
|
bool modifyTestSetContent(const GTestParseResult *result);
|
||||||
TestTreeItem *findChildByNameStateAndFile(const QString &name,
|
TestTreeItem *findChildByNameStateAndFile(const QString &name,
|
||||||
GoogleTestTreeItem::TestStates state,
|
GTestTreeItem::TestStates state,
|
||||||
const QString &proFile) const;
|
const QString &proFile) const;
|
||||||
QString nameSuffix() const;
|
QString nameSuffix() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
GoogleTestTreeItem::TestStates m_state;
|
GTestTreeItem::TestStates m_state;
|
||||||
};
|
};
|
||||||
|
|
||||||
class GTestCodeLocationAndType : public TestCodeLocationAndType
|
class GTestCodeLocationAndType : public TestCodeLocationAndType
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
GoogleTestTreeItem::TestStates m_state;
|
GTestTreeItem::TestStates m_state;
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef QVector<GTestCodeLocationAndType> GTestCodeLocationList;
|
typedef QVector<GTestCodeLocationAndType> GTestCodeLocationList;
|
||||||
@@ -70,8 +70,8 @@ bool GTestVisitor::visit(CPlusPlus::FunctionDefinitionAST *ast)
|
|||||||
locationAndType.m_line = line;
|
locationAndType.m_line = line;
|
||||||
locationAndType.m_column = column - 1;
|
locationAndType.m_column = column - 1;
|
||||||
locationAndType.m_type = TestTreeItem::TestFunctionOrSet;
|
locationAndType.m_type = TestTreeItem::TestFunctionOrSet;
|
||||||
locationAndType.m_state = disabled ? GoogleTestTreeItem::Disabled
|
locationAndType.m_state = disabled ? GTestTreeItem::Disabled
|
||||||
: GoogleTestTreeItem::Enabled;
|
: GTestTreeItem::Enabled;
|
||||||
GTestCaseSpec spec;
|
GTestCaseSpec spec;
|
||||||
spec.testCaseName = testCaseName;
|
spec.testCaseName = testCaseName;
|
||||||
spec.parameterized = GTestUtils::isGTestParameterized(prettyName);
|
spec.parameterized = GTestUtils::isGTestParameterized(prettyName);
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "googletesttreeitem.h"
|
#include "gtesttreeitem.h"
|
||||||
|
|
||||||
#include <cplusplus/ASTVisitor.h>
|
#include <cplusplus/ASTVisitor.h>
|
||||||
#include <cplusplus/CppDocument.h>
|
#include <cplusplus/CppDocument.h>
|
||||||
|
|||||||
@@ -30,7 +30,7 @@
|
|||||||
// FIXME
|
// FIXME
|
||||||
#include "qtest/qttestparser.h"
|
#include "qtest/qttestparser.h"
|
||||||
#include "quick/quicktestparser.h"
|
#include "quick/quicktestparser.h"
|
||||||
#include "gtest/googletestparser.h"
|
#include "gtest/gtestparser.h"
|
||||||
// end of FIXME
|
// end of FIXME
|
||||||
|
|
||||||
#include <coreplugin/editormanager/editormanager.h>
|
#include <coreplugin/editormanager/editormanager.h>
|
||||||
@@ -84,7 +84,7 @@ TestCodeParser::TestCodeParser(TestTreeModel *parent)
|
|||||||
|
|
||||||
m_testCodeParsers.append(new QtTestParser);
|
m_testCodeParsers.append(new QtTestParser);
|
||||||
m_testCodeParsers.append(new QuickTestParser);
|
m_testCodeParsers.append(new QuickTestParser);
|
||||||
m_testCodeParsers.append(new GoogleTestParser);
|
m_testCodeParsers.append(new GTestParser);
|
||||||
}
|
}
|
||||||
|
|
||||||
TestCodeParser::~TestCodeParser()
|
TestCodeParser::~TestCodeParser()
|
||||||
|
|||||||
@@ -33,7 +33,7 @@
|
|||||||
// FIXME
|
// FIXME
|
||||||
#include "qtest/qttesttreeitem.h"
|
#include "qtest/qttesttreeitem.h"
|
||||||
#include "quick/quicktesttreeitem.h"
|
#include "quick/quicktesttreeitem.h"
|
||||||
#include "gtest/googletesttreeitem.h"
|
#include "gtest/gtesttreeitem.h"
|
||||||
// end of FIXME
|
// end of FIXME
|
||||||
|
|
||||||
#include <cpptools/cppmodelmanager.h>
|
#include <cpptools/cppmodelmanager.h>
|
||||||
@@ -50,7 +50,7 @@ TestTreeModel::TestTreeModel(QObject *parent) :
|
|||||||
TreeModel(parent),
|
TreeModel(parent),
|
||||||
m_qtTestRootItem(new QtTestTreeItem(tr("Qt Tests"), QString(), TestTreeItem::Root)),
|
m_qtTestRootItem(new QtTestTreeItem(tr("Qt Tests"), QString(), TestTreeItem::Root)),
|
||||||
m_quickTestRootItem(new QuickTestTreeItem(tr("Qt Quick Tests"), QString(), TestTreeItem::Root)),
|
m_quickTestRootItem(new QuickTestTreeItem(tr("Qt Quick Tests"), QString(), TestTreeItem::Root)),
|
||||||
m_googleTestRootItem(new GoogleTestTreeItem(tr("Google Tests"), QString(), TestTreeItem::Root)),
|
m_googleTestRootItem(new GTestTreeItem(tr("Google Tests"), QString(), TestTreeItem::Root)),
|
||||||
m_parser(new TestCodeParser(this)),
|
m_parser(new TestCodeParser(this)),
|
||||||
m_connectionsInitialized(false)
|
m_connectionsInitialized(false)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user