aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/autotest/quick
diff options
context:
space:
mode:
authorChristian Stenger <christian.stenger@qt.io>2017-09-29 15:01:32 +0200
committerChristian Stenger <christian.stenger@qt.io>2017-10-09 12:46:33 +0000
commitfaee18d31e3c34bb9f13be62bfdf2011cca4c67c (patch)
tree02a9e4d8414c76bb67d3fc233759d12ac885fb58 /src/plugins/autotest/quick
parentc2686fd9ae3bc8ac1550984d88b59cb9a307c13a (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')
-rw-r--r--src/plugins/autotest/quick/quicktestconfiguration.cpp10
-rw-r--r--src/plugins/autotest/quick/quicktestconfiguration.h4
-rw-r--r--src/plugins/autotest/quick/quicktesttreeitem.cpp13
-rw-r--r--src/plugins/autotest/quick/quicktesttreeitem.h2
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;