diff options
author | Christian Stenger <christian.stenger@qt.io> | 2017-09-29 15:01:32 +0200 |
---|---|---|
committer | Christian Stenger <christian.stenger@qt.io> | 2017-10-09 12:46:33 +0000 |
commit | faee18d31e3c34bb9f13be62bfdf2011cca4c67c (patch) | |
tree | 02a9e4d8414c76bb67d3fc233759d12ac885fb58 /src/plugins/autotest/quick | |
parent | c2686fd9ae3bc8ac1550984d88b59cb9a307c13a (diff) |
AutoTest: Enable debugging for Quick Tests
Task-number: QTCREATORBUG-18961
Change-Id: I6f00c84ea6279ceb59745e5bb12349511ae4637b
Reviewed-by: David Schulz <david.schulz@qt.io>
Diffstat (limited to 'src/plugins/autotest/quick')
4 files changed, 27 insertions, 2 deletions
diff --git a/src/plugins/autotest/quick/quicktestconfiguration.cpp b/src/plugins/autotest/quick/quicktestconfiguration.cpp index 827b350cfe6..6875207bf76 100644 --- a/src/plugins/autotest/quick/quicktestconfiguration.cpp +++ b/src/plugins/autotest/quick/quicktestconfiguration.cpp @@ -35,6 +35,11 @@ namespace Autotest { namespace Internal { +QuickTestConfiguration::QuickTestConfiguration() +{ + setMixedDebugging(true); +} + TestOutputReader *QuickTestConfiguration::outputReader(const QFutureInterface<TestResultPtr> &fi, QProcess *app) const { @@ -74,6 +79,11 @@ QStringList QuickTestConfiguration::argumentsForTestRunner(QStringList *omitted) const QString &metricsOption = QtTestSettings::metricsTypeToOption(qtSettings->metrics); if (!metricsOption.isEmpty()) arguments << metricsOption; + + if (isDebugRunMode()) { + if (qtSettings->noCrashHandler) + arguments << "-nocrashhandler"; + } return arguments; } diff --git a/src/plugins/autotest/quick/quicktestconfiguration.h b/src/plugins/autotest/quick/quicktestconfiguration.h index ecab2f4a2f3..7eca4cc1f01 100644 --- a/src/plugins/autotest/quick/quicktestconfiguration.h +++ b/src/plugins/autotest/quick/quicktestconfiguration.h @@ -30,10 +30,10 @@ namespace Autotest { namespace Internal { -class QuickTestConfiguration : public TestConfiguration +class QuickTestConfiguration : public DebuggableTestConfiguration { public: - explicit QuickTestConfiguration() {} + QuickTestConfiguration(); TestOutputReader *outputReader(const QFutureInterface<TestResultPtr> &fi, QProcess *app) const override; QStringList argumentsForTestRunner(QStringList *omitted = nullptr) const override; diff --git a/src/plugins/autotest/quick/quicktesttreeitem.cpp b/src/plugins/autotest/quick/quicktesttreeitem.cpp index 35202696364..953f31e6618 100644 --- a/src/plugins/autotest/quick/quicktesttreeitem.cpp +++ b/src/plugins/autotest/quick/quicktesttreeitem.cpp @@ -109,6 +109,11 @@ bool QuickTestTreeItem::canProvideTestConfiguration() const } } +bool QuickTestTreeItem::canProvideDebugConfiguration() const +{ + return canProvideTestConfiguration(); +} + TestConfiguration *QuickTestTreeItem::testConfiguration() const { ProjectExplorer::Project *project = ProjectExplorer::SessionManager::startupProject(); @@ -143,6 +148,14 @@ TestConfiguration *QuickTestTreeItem::testConfiguration() const return config; } +TestConfiguration *QuickTestTreeItem::debugConfiguration() const +{ + QuickTestConfiguration *config = static_cast<QuickTestConfiguration *>(testConfiguration()); + if (config) + config->setRunMode(TestRunMode::Debug); + return config; +} + QList<TestConfiguration *> QuickTestTreeItem::getAllTestConfigurations() const { QList<TestConfiguration *> result; diff --git a/src/plugins/autotest/quick/quicktesttreeitem.h b/src/plugins/autotest/quick/quicktesttreeitem.h index a0e860a52c0..be036a13fb3 100644 --- a/src/plugins/autotest/quick/quicktesttreeitem.h +++ b/src/plugins/autotest/quick/quicktesttreeitem.h @@ -39,7 +39,9 @@ public: QVariant data(int column, int role) const override; Qt::ItemFlags flags(int column) const override; bool canProvideTestConfiguration() const override; + bool canProvideDebugConfiguration() const override; TestConfiguration *testConfiguration() const override; + TestConfiguration *debugConfiguration() const override; QList<TestConfiguration *> getAllTestConfigurations() const override; QList<TestConfiguration *> getSelectedTestConfigurations() const override; TestTreeItem *find(const TestParseResult *result) override; |