mirror of
https://github.com/QIDITECH/QIDISlicer.git
synced 2026-01-30 15:38:43 +03:00
QIDISlicer1.0.0
This commit is contained in:
54
tests/catch_main.hpp
Normal file
54
tests/catch_main.hpp
Normal file
@@ -0,0 +1,54 @@
|
||||
#ifndef CATCH_MAIN
|
||||
#define CATCH_MAIN
|
||||
|
||||
#define CATCH_CONFIG_EXTERNAL_INTERFACES
|
||||
#define CATCH_CONFIG_MAIN
|
||||
// #define CATCH_CONFIG_DEFAULT_REPORTER "verboseconsole"
|
||||
#include <catch2/catch.hpp>
|
||||
|
||||
namespace Catch {
|
||||
struct VerboseConsoleReporter : public ConsoleReporter {
|
||||
double duration = 0.;
|
||||
using ConsoleReporter::ConsoleReporter;
|
||||
|
||||
void testCaseStarting(TestCaseInfo const& _testInfo) override
|
||||
{
|
||||
Colour::use(Colour::Cyan);
|
||||
stream << "Testing ";
|
||||
Colour::use(Colour::None);
|
||||
stream << _testInfo.name << std::endl;
|
||||
ConsoleReporter::testCaseStarting(_testInfo);
|
||||
}
|
||||
|
||||
void sectionStarting(const SectionInfo &_sectionInfo) override
|
||||
{
|
||||
if (_sectionInfo.name != currentTestCaseInfo->name)
|
||||
stream << _sectionInfo.name << std::endl;
|
||||
|
||||
ConsoleReporter::sectionStarting(_sectionInfo);
|
||||
}
|
||||
|
||||
void sectionEnded(const SectionStats &_sectionStats) override {
|
||||
duration += _sectionStats.durationInSeconds;
|
||||
ConsoleReporter::sectionEnded(_sectionStats);
|
||||
}
|
||||
|
||||
void testCaseEnded(TestCaseStats const& stats) override
|
||||
{
|
||||
if (stats.totals.assertions.allOk()) {
|
||||
Colour::use(Colour::BrightGreen);
|
||||
stream << "Passed";
|
||||
Colour::use(Colour::None);
|
||||
stream << " in " << duration << " [seconds]\n" << std::endl;
|
||||
}
|
||||
|
||||
duration = 0.;
|
||||
ConsoleReporter::testCaseEnded(stats);
|
||||
}
|
||||
};
|
||||
|
||||
CATCH_REGISTER_REPORTER( "verboseconsole", VerboseConsoleReporter )
|
||||
|
||||
} // namespace Catch
|
||||
|
||||
#endif // CATCH_MAIN
|
||||
Reference in New Issue
Block a user