diff options
Diffstat (limited to 'src/plugins/autotest/qtest/qttestconfiguration.cpp')
-rw-r--r-- | src/plugins/autotest/qtest/qttestconfiguration.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/plugins/autotest/qtest/qttestconfiguration.cpp b/src/plugins/autotest/qtest/qttestconfiguration.cpp index 529821644c..6a316b0657 100644 --- a/src/plugins/autotest/qtest/qttestconfiguration.cpp +++ b/src/plugins/autotest/qtest/qttestconfiguration.cpp @@ -10,11 +10,22 @@ #include "../itestframework.h" #include "../testsettings.h" +#include <utils/algorithm.h> #include <utils/stringutils.h> namespace Autotest { namespace Internal { +static QStringList quoteIfNeeded(const QStringList &testCases, bool debugMode) +{ + if (debugMode) + return testCases; + + return Utils::transform(testCases, [](const QString &testCase){ + return testCase.contains(' ') ? '"' + testCase + '"' : testCase; + }); +} + TestOutputReader *QtTestConfiguration::outputReader(const QFutureInterface<TestResultPtr> &fi, Utils::QtcProcess *app) const { @@ -39,7 +50,7 @@ QStringList QtTestConfiguration::argumentsForTestRunner(QStringList *omitted) co if (qtSettings->useXMLOutput.value()) arguments << "-xml"; if (!testCases().isEmpty()) - arguments << testCases(); + arguments << quoteIfNeeded(testCases(), isDebugRunMode()); const QString &metricsOption = QtTestSettings::metricsTypeToOption(MetricsType(qtSettings->metrics.value())); if (!metricsOption.isEmpty()) |