Read-only mirrors. Development, issues and pull requests are on GitHub.

summaryrefslogtreecommitdiffhomepage
path: root/src/Progmasoft/Runner/Console.cpp
diff options
context:
space:
mode:
authorLeitwolf112026-11-01 14:23:09 +0300
committerLeitwolf112026-11-01 14:23:09 +0300
commit1db203d56b7c71db3d80b477da1ad49e9ae46468 (patch)
tree48cd538e23e40ebdaae034a864082de30f68364f /src/Progmasoft/Runner/Console.cpp
parent1559307a6ac7731ffd6a8e28147552b3987dbd93 (diff)
downloadcatch3-1db203d56b7c71db3d80b477da1ad49e9ae46468.tar.gz
Import the results of other test frameworks
Tests Catch3 does not run had no history, flaky detection or quarantine. --import=FILE reads a report instead of running tests and sends it through the analysis, history and reports of a run: JUnit with Surefire's reruns, xUnit.net v2, TRX, TAP 12 to 14, CTRF, Catch3's own --json report and catch3-results, a small JSON Lines format for tools with none of these. Results that share an identifier are attempts at one test, so a report of a rerun gives a flaky test. --import-revision says what was tested: a verdict that changes on one revision also counts as flaky. --import-name keeps the results in a history of their own, which --analytics reads too. A TAP stream that ends early fails instead of reading as a run that passed. The amalgamation script now accepts a relative include of the third-party wrappers, because pugixml is included from a second directory.
Diffstat (limited to 'src/Progmasoft/Runner/Console.cpp')
-rw-r--r--src/Progmasoft/Runner/Console.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/Progmasoft/Runner/Console.cpp b/src/Progmasoft/Runner/Console.cpp
index 44765311..91691967 100644
--- a/src/Progmasoft/Runner/Console.cpp
+++ b/src/Progmasoft/Runner/Console.cpp
@@ -203,6 +203,21 @@ namespace Progmasoft::Catch3::Runner
}
void
+ ConsoleReport::ImportStarting(std::size_t tests, std::size_t files)
+ {
+ total_ = tests;
+ if (options_.verbosity == Verbosity::kQuiet)
+ {
+ return;
+ }
+ Write(output_,
+ Paint("Catch3", kBold) + ": " + std::to_string(tests)
+ + " test(s) imported from " + std::to_string(files)
+ + " report(s)\n");
+ std::fflush(output_);
+ }
+
+ void
ConsoleReport::Retrying(const TestResult &test, const Attempt &attempt)
{
if (options_.verbosity != Verbosity::kVerbose)