summaryrefslogtreecommitdiff
path: root/src/plugins/autotest/catch/catchconfiguration.cpp
diff options
context:
space:
mode:
authorChristian Stenger <christian.stenger@qt.io>2020-04-17 13:45:38 +0200
committerChristian Stenger <christian.stenger@qt.io>2020-04-21 06:37:40 +0000
commit3b36dcc4c68cafc514e0e3a37144a8c039763589 (patch)
tree9debbe82780f87669bde82ace1c51d7d3f8bfabb /src/plugins/autotest/catch/catchconfiguration.cpp
parent82a7adf624164c7eb797ce8cb27d98b011641da7 (diff)
downloadqt-creator-3b36dcc4c68cafc514e0e3a37144a8c039763589.tar.gz
AutoTest: Provide catch settings
Users can now modify some settings of Catch tests. Task-number: QTCREATORBUG-19740 Change-Id: I47e64a43f22fbf783cbf7b256e498d9037533e9a Reviewed-by: David Schulz <david.schulz@qt.io>
Diffstat (limited to 'src/plugins/autotest/catch/catchconfiguration.cpp')
-rw-r--r--src/plugins/autotest/catch/catchconfiguration.cpp29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/plugins/autotest/catch/catchconfiguration.cpp b/src/plugins/autotest/catch/catchconfiguration.cpp
index ae112b73e9..51b2946a4f 100644
--- a/src/plugins/autotest/catch/catchconfiguration.cpp
+++ b/src/plugins/autotest/catch/catchconfiguration.cpp
@@ -24,8 +24,10 @@
#include "catchconfiguration.h"
#include "catchoutputreader.h"
+#include "catchtestsettings.h"
#include "../autotestplugin.h"
+#include "../itestframework.h"
#include "../testsettings.h"
namespace Autotest {
@@ -100,6 +102,33 @@ QStringList CatchConfiguration::argumentsForTestRunner(QStringList *omitted) con
' ', QString::SkipEmptyParts), omitted);
}
+ auto settings = dynamic_cast<CatchTestSettings *>(framework()->frameworkSettings());
+ if (!settings)
+ return arguments;
+
+ if (settings->abortAfterChecked)
+ arguments << "-x" << QString::number(settings->abortAfter);
+ if (settings->samplesChecked)
+ arguments << "--benchmark-samples" << QString::number(settings->benchmarkSamples);
+ if (settings->resamplesChecked)
+ arguments << "--benchmark-resamples" << QString::number(settings->benchmarkResamples);
+ if (settings->warmupChecked)
+ arguments << "--benchmark-warmup-time" << QString::number(settings->benchmarkWarmupTime);
+ if (settings->confidenceIntervalChecked)
+ arguments << "--benchmark-confidence-interval" << QString::number(settings->confidenceInterval);
+ if (settings->noAnalysis)
+ arguments << "--benchmark-no-analysis";
+ if (settings->showSuccess)
+ arguments << "-s";
+ if (settings->noThrow)
+ arguments << "-e";
+ if (settings->visibleWhitespace)
+ arguments << "-i";
+ if (settings->warnOnEmpty)
+ arguments << "-w" << "NoAssertions";
+
+ if (isDebugRunMode() && settings->breakOnFailure)
+ arguments << "-b";
return arguments;
}