mirror of
https://github.com/catchorg/Catch2.git
synced 2026-08-09 23:21:18 +02:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4cde128517 | ||
|
|
0b4d7a5a16 | ||
|
|
a0eba50e9d |
@@ -8,6 +8,7 @@
|
||||
# SPDX-License-Identifier: BSL-1.0
|
||||
|
||||
import argparse
|
||||
import copy
|
||||
import json
|
||||
import os
|
||||
import re
|
||||
@@ -33,14 +34,19 @@ def load_template(path: str) -> dict:
|
||||
return catch_out
|
||||
|
||||
|
||||
def synthesize_listing(template_doc: dict, count: int, file) -> str:
|
||||
def synthesize_listing(template_doc: dict, count: int, file, with_tags: bool) -> str:
|
||||
"""Writes JSON listing with exactly `count` test cases into `file`.
|
||||
|
||||
The template entries are cycled through, and each name is made unique by
|
||||
appending an index, so that every registered CTest test has a distinct name.
|
||||
"""
|
||||
doc_copy = template_doc.copy()
|
||||
template_tests = template_doc['listings']['tests']
|
||||
# To avoid messing up the template tests by deletion, we have
|
||||
# to take a deepcopy before the changes.
|
||||
doc_copy = copy.deepcopy(template_doc)
|
||||
template_tests = doc_copy['listings']['tests']
|
||||
if not with_tags:
|
||||
for test in template_tests:
|
||||
del test['tags']
|
||||
num_original = len(template_tests)
|
||||
|
||||
out_tests = []
|
||||
@@ -176,10 +182,10 @@ def main():
|
||||
os.makedirs(workdir, exist_ok=True)
|
||||
for count in COUNTS:
|
||||
listing_path = os.path.join(workdir, f"listing-{count}.json")
|
||||
with open(listing_path, "w", encoding="utf-8") as f:
|
||||
synthesize_listing(template_doc, count, f)
|
||||
|
||||
for add_tags in tag_modes:
|
||||
with open(listing_path, "w", encoding="utf-8") as f:
|
||||
synthesize_listing(template_doc, count, f, add_tags)
|
||||
mode = "on" if add_tags else "off"
|
||||
ctest_file = os.path.join(workdir, f"ctest-{count}-{mode}.cmake")
|
||||
cmd = build_command(args, listing_path, ctest_file, add_tags)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "benchmark-template",
|
||||
"catch2-version": "3.15.2"
|
||||
@@ -8,66 +8,41 @@
|
||||
"tests": [
|
||||
{
|
||||
"name": "Comparing function pointers",
|
||||
"class-name": "",
|
||||
"tags": [
|
||||
"function pointer",
|
||||
"Tricky"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "/mnt/c/ubuntu/Catch2/tests/SelfTest/UsageTests/Tricky.tests.cpp",
|
||||
"line": 266
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Testing checked-if 4",
|
||||
"class-name": "",
|
||||
"tags": [
|
||||
"!shouldfail",
|
||||
"checked-if"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "/mnt/c/ubuntu/Catch2/tests/SelfTest/UsageTests/Misc.tests.cpp",
|
||||
"line": 216
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "count_equidistant_floats - double",
|
||||
"class-name": "",
|
||||
"tags": [
|
||||
"approvals",
|
||||
"distance",
|
||||
"floating-point"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "/mnt/c/ubuntu/Catch2/tests/SelfTest/IntrospectiveTests/FloatingPoint.tests.cpp",
|
||||
"line": 103
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Usage of AllTrue range matcher",
|
||||
"class-name": "",
|
||||
"tags": [
|
||||
"matchers",
|
||||
"quantifiers",
|
||||
"templated"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "/mnt/c/ubuntu/Catch2/tests/SelfTest/UsageTests/MatchersRanges.tests.cpp",
|
||||
"line": 372
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Exception matchers that succeed",
|
||||
"class-name": "",
|
||||
"tags": [
|
||||
"!throws",
|
||||
"exceptions",
|
||||
"matchers"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "/mnt/c/ubuntu/Catch2/tests/SelfTest/UsageTests/Matchers.tests.cpp",
|
||||
"line": 428
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "A TEMPLATE_TEST_CASE_METHOD based test run that succeeds - float",
|
||||
@@ -75,59 +50,35 @@
|
||||
"tags": [
|
||||
"class",
|
||||
"template"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "/mnt/c/ubuntu/Catch2/tests/SelfTest/UsageTests/Class.tests.cpp",
|
||||
"line": 82
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Approximate PI",
|
||||
"class-name": "",
|
||||
"tags": [
|
||||
"Approx",
|
||||
"PI"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "/mnt/c/ubuntu/Catch2/tests/SelfTest/UsageTests/Approx.tests.cpp",
|
||||
"line": 134
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "TextFlow::Column respects width setting",
|
||||
"class-name": "",
|
||||
"tags": [
|
||||
"approvals",
|
||||
"column",
|
||||
"TextFlow"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "/mnt/c/ubuntu/Catch2/tests/SelfTest/IntrospectiveTests/TextFlow.tests.cpp",
|
||||
"line": 38
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Generators internals",
|
||||
"class-name": "",
|
||||
"tags": [
|
||||
"generators",
|
||||
"internals"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "/mnt/c/ubuntu/Catch2/tests/SelfTest/IntrospectiveTests/GeneratorsImpl.tests.cpp",
|
||||
"line": 24
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Mayfail test case with nested sections",
|
||||
"class-name": "",
|
||||
"tags": [
|
||||
"!mayfail"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "/mnt/c/ubuntu/Catch2/tests/SelfTest/UsageTests/Condition.tests.cpp",
|
||||
"line": 83
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -202,8 +202,13 @@ as many times as you want, e.g. `--reporter xml::out=someFile.xml` or
|
||||
|
||||
The keys must either be prefixed by "X", in which case they are not parsed
|
||||
by Catch2 and are only passed down to the reporter, or one of options
|
||||
hardcoded into Catch2. Currently there are only 2,
|
||||
["out"](#sending-output-to-a-file), and ["colour-mode"](#colour-mode).
|
||||
hardcoded into Catch2. Currently there are 3 supported options:
|
||||
|
||||
* ["out"](#sending-output-to-a-file)
|
||||
* ["colour-mode"](#colour-mode)
|
||||
* ["verbosity"](#output-verbosity)
|
||||
|
||||
> Support for per-reporter verbosity option was added in Catch2 vX.Y.Z
|
||||
|
||||
_Note that the reporter might still check the X-prefixed options for
|
||||
validity, and throw an error if they are wrong._
|
||||
|
||||
+4
-4
@@ -43,13 +43,13 @@ them write into different destinations. The two main uses of this are
|
||||
|
||||
Specifying multiple reporter looks like this:
|
||||
```
|
||||
--reporter JUnit::out=result-junit.xml --reporter console::out=-::colour-mode=ansi
|
||||
--reporter JUnit::out=result-junit.xml --reporter console::out=-::colour-mode=ansi::verbosity=quiet
|
||||
```
|
||||
|
||||
This tells Catch2 to use two reporters, `JUnit` reporter that writes
|
||||
its machine-readable XML output to file `result-junit.xml`, and the
|
||||
`console` reporter that writes its user-friendly output to stdout and
|
||||
uses ANSI colour codes for colouring the output.
|
||||
`console` reporter that writes its user-friendly output to stdout, uses
|
||||
ANSI colour codes for colouring the output and is set to "quiet" verbosity.
|
||||
|
||||
Using multiple reporters (or one reporter and one-or-more [event
|
||||
listeners](event-listeners.md#top)) can have surprisingly complex semantics
|
||||
@@ -110,7 +110,7 @@ passing and failing assertions.
|
||||
|
||||
_Generally we recommend that if you override a member function from either
|
||||
of the bases, you call into the base's implementation first. This is not
|
||||
necessarily in all cases, but it is safer and easier._
|
||||
necessary in all cases, but it is safer and easier._
|
||||
|
||||
|
||||
Writing your own reporter then looks like this:
|
||||
|
||||
@@ -253,10 +253,15 @@ function(catch_discover_tests_impl)
|
||||
|
||||
make_temp_file_path(listing_output_path "${_TEST_WORKING_DIR}")
|
||||
|
||||
set(_Verbosity "quiet")
|
||||
if (add_tags)
|
||||
set(_Verbosity "normal")
|
||||
endif()
|
||||
|
||||
execute_process(
|
||||
COMMAND ${_TEST_EXECUTOR} "${_TEST_EXECUTABLE}" ${spec}
|
||||
--list-tests
|
||||
--reporter json
|
||||
--reporter "json::verbosity=${_Verbosity}"
|
||||
--out "${listing_output_path}"
|
||||
--order lex # Make sure the output order, and thus test registration order, is consistent across runs.
|
||||
OUTPUT_VARIABLE listing_output
|
||||
@@ -326,7 +331,7 @@ function(catch_discover_tests_impl)
|
||||
|
||||
# Parse JSON output for list of tests/class names/tags
|
||||
string(JSON version GET "${listing_output}" "version")
|
||||
if(NOT version STREQUAL "1")
|
||||
if(NOT version STREQUAL "2")
|
||||
message(FATAL_ERROR "Unsupported catch output version: '${version}'")
|
||||
endif()
|
||||
|
||||
|
||||
@@ -89,6 +89,7 @@ namespace Catch {
|
||||
return lhs.name == rhs.name &&
|
||||
lhs.outputFilename == rhs.outputFilename &&
|
||||
lhs.colourMode == rhs.colourMode &&
|
||||
lhs.verbosity == rhs.verbosity &&
|
||||
lhs.customOptions == rhs.customOptions;
|
||||
}
|
||||
|
||||
@@ -157,6 +158,7 @@ namespace Catch {
|
||||
reporterSpec.outputFile() ? *reporterSpec.outputFile()
|
||||
: data.defaultOutputFilename,
|
||||
reporterSpec.colourMode().valueOr( data.defaultColourMode ),
|
||||
reporterSpec.verbosity().valueOr( data.verbosity ),
|
||||
reporterSpec.customOptions() } );
|
||||
}
|
||||
}
|
||||
@@ -232,7 +234,7 @@ namespace Catch {
|
||||
|
||||
if ( bazelOutputFile ) {
|
||||
m_data.reporterSpecifications.push_back(
|
||||
{ "junit", std::string( bazelOutputFile ), {}, {} } );
|
||||
{ "junit", std::string( bazelOutputFile ), {}, {}, {} } );
|
||||
}
|
||||
|
||||
const auto bazelTestSpec = Detail::getEnv( "TESTBRIDGE_TEST_ONLY" );
|
||||
|
||||
@@ -35,6 +35,7 @@ namespace Catch {
|
||||
std::string name;
|
||||
std::string outputFilename;
|
||||
ColourMode colourMode;
|
||||
Verbosity verbosity;
|
||||
std::map<std::string, std::string> customOptions;
|
||||
friend bool operator==( ProcessedReporterSpec const& lhs,
|
||||
ProcessedReporterSpec const& rhs );
|
||||
|
||||
@@ -52,6 +52,7 @@ namespace Catch {
|
||||
ReporterConfig( config,
|
||||
makeStream( spec.outputFilename ),
|
||||
spec.colourMode,
|
||||
spec.verbosity,
|
||||
spec.customOptions ) );
|
||||
}
|
||||
|
||||
@@ -68,6 +69,7 @@ namespace Catch {
|
||||
ReporterConfig( config,
|
||||
makeStream( reporterSpec.outputFilename ),
|
||||
reporterSpec.colourMode,
|
||||
reporterSpec.verbosity,
|
||||
reporterSpec.customOptions ) ) );
|
||||
}
|
||||
|
||||
|
||||
@@ -19,10 +19,12 @@ namespace Catch {
|
||||
IConfig const* _fullConfig,
|
||||
Detail::unique_ptr<IStream> _stream,
|
||||
ColourMode colourMode,
|
||||
Verbosity verbosity,
|
||||
std::map<std::string, std::string> customOptions ):
|
||||
m_stream( CATCH_MOVE(_stream) ),
|
||||
m_fullConfig( _fullConfig ),
|
||||
m_colourMode( colourMode ),
|
||||
m_verbosity( verbosity ),
|
||||
m_customOptions( CATCH_MOVE( customOptions ) ) {}
|
||||
|
||||
Detail::unique_ptr<IStream> ReporterConfig::takeStream() && {
|
||||
@@ -31,6 +33,7 @@ namespace Catch {
|
||||
}
|
||||
IConfig const * ReporterConfig::fullConfig() const { return m_fullConfig; }
|
||||
ColourMode ReporterConfig::colourMode() const { return m_colourMode; }
|
||||
Verbosity ReporterConfig::verbosity() const { return m_verbosity; }
|
||||
|
||||
std::map<std::string, std::string> const&
|
||||
ReporterConfig::customOptions() const {
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
#include <catch2/catch_test_run_info.hpp>
|
||||
#include <catch2/catch_totals.hpp>
|
||||
#include <catch2/catch_assertion_result.hpp>
|
||||
#include <catch2/interfaces/catch_interfaces_config.hpp>
|
||||
#include <catch2/internal/catch_message_info.hpp>
|
||||
#include <catch2/internal/catch_stringref.hpp>
|
||||
#include <catch2/internal/catch_unique_ptr.hpp>
|
||||
@@ -36,6 +37,7 @@ namespace Catch {
|
||||
ReporterConfig( IConfig const* _fullConfig,
|
||||
Detail::unique_ptr<IStream> _stream,
|
||||
ColourMode colourMode,
|
||||
Verbosity verbosity,
|
||||
std::map<std::string, std::string> customOptions );
|
||||
|
||||
ReporterConfig( ReporterConfig&& ) = default;
|
||||
@@ -45,12 +47,14 @@ namespace Catch {
|
||||
Detail::unique_ptr<IStream> takeStream() &&;
|
||||
IConfig const* fullConfig() const;
|
||||
ColourMode colourMode() const;
|
||||
Verbosity verbosity() const;
|
||||
std::map<std::string, std::string> const& customOptions() const;
|
||||
|
||||
private:
|
||||
Detail::unique_ptr<IStream> m_stream;
|
||||
IConfig const* m_fullConfig;
|
||||
ColourMode m_colourMode;
|
||||
Verbosity m_verbosity;
|
||||
std::map<std::string, std::string> m_customOptions;
|
||||
};
|
||||
|
||||
|
||||
@@ -93,6 +93,18 @@ namespace Catch {
|
||||
return {};
|
||||
}
|
||||
}
|
||||
|
||||
Optional<Verbosity> stringToVerbosity( StringRef verbosity ) {
|
||||
if (verbosity == "quiet") { return Verbosity::Quiet;
|
||||
} else if ( verbosity == "normal" ) {
|
||||
return Verbosity::Normal;
|
||||
} else if ( verbosity == "high" ) {
|
||||
return Verbosity::High;
|
||||
} else {
|
||||
return {};
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace Detail
|
||||
|
||||
|
||||
@@ -100,6 +112,7 @@ namespace Catch {
|
||||
return lhs.m_name == rhs.m_name &&
|
||||
lhs.m_outputFileName == rhs.m_outputFileName &&
|
||||
lhs.m_colourMode == rhs.m_colourMode &&
|
||||
lhs.m_verbosity == rhs.m_verbosity &&
|
||||
lhs.m_customOptions == rhs.m_customOptions;
|
||||
}
|
||||
|
||||
@@ -111,6 +124,7 @@ namespace Catch {
|
||||
std::map<std::string, std::string> kvPairs;
|
||||
Optional<std::string> outputFileName;
|
||||
Optional<ColourMode> colourMode;
|
||||
Optional<Verbosity> verbosity;
|
||||
|
||||
// First part is always reporter name, so we skip it
|
||||
for ( size_t i = 1; i < parts.size(); ++i ) {
|
||||
@@ -148,6 +162,12 @@ namespace Catch {
|
||||
if ( !colourMode ) {
|
||||
return {};
|
||||
}
|
||||
} else if ( key == "verbosity" ) {
|
||||
// Duplicated key
|
||||
if ( verbosity ) { return {}; }
|
||||
verbosity = Detail::stringToVerbosity( value );
|
||||
// Parsing failed
|
||||
if ( !verbosity ) { return {}; }
|
||||
} else {
|
||||
// Unrecognized option
|
||||
return {};
|
||||
@@ -157,6 +177,7 @@ namespace Catch {
|
||||
return ReporterSpec{ CATCH_MOVE( parts[0] ),
|
||||
CATCH_MOVE( outputFileName ),
|
||||
CATCH_MOVE( colourMode ),
|
||||
CATCH_MOVE( verbosity),
|
||||
CATCH_MOVE( kvPairs ) };
|
||||
}
|
||||
|
||||
@@ -164,10 +185,12 @@ ReporterSpec::ReporterSpec(
|
||||
std::string name,
|
||||
Optional<std::string> outputFileName,
|
||||
Optional<ColourMode> colourMode,
|
||||
Optional<Verbosity> verbosity,
|
||||
std::map<std::string, std::string> customOptions ):
|
||||
m_name( CATCH_MOVE( name ) ),
|
||||
m_outputFileName( CATCH_MOVE( outputFileName ) ),
|
||||
m_colourMode( CATCH_MOVE( colourMode ) ),
|
||||
m_verbosity( CATCH_MOVE( verbosity ) ),
|
||||
m_customOptions( CATCH_MOVE( customOptions ) ) {}
|
||||
|
||||
} // namespace Catch
|
||||
|
||||
@@ -25,6 +25,7 @@ namespace Catch {
|
||||
std::vector<std::string> splitReporterSpec( StringRef reporterSpec );
|
||||
|
||||
Optional<ColourMode> stringToColourMode( StringRef colourMode );
|
||||
Optional<Verbosity> stringToVerbosity( StringRef verbosity );
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -39,6 +40,7 @@ namespace Catch {
|
||||
std::string m_name;
|
||||
Optional<std::string> m_outputFileName;
|
||||
Optional<ColourMode> m_colourMode;
|
||||
Optional<Verbosity> m_verbosity;
|
||||
std::map<std::string, std::string> m_customOptions;
|
||||
|
||||
friend bool operator==( ReporterSpec const& lhs,
|
||||
@@ -53,6 +55,7 @@ namespace Catch {
|
||||
std::string name,
|
||||
Optional<std::string> outputFileName,
|
||||
Optional<ColourMode> colourMode,
|
||||
Optional<Verbosity> verbosity,
|
||||
std::map<std::string, std::string> customOptions );
|
||||
|
||||
std::string const& name() const { return m_name; }
|
||||
@@ -63,13 +66,15 @@ namespace Catch {
|
||||
|
||||
Optional<ColourMode> const& colourMode() const { return m_colourMode; }
|
||||
|
||||
Optional<Verbosity> const& verbosity() const { return m_verbosity; }
|
||||
|
||||
std::map<std::string, std::string> const& customOptions() const {
|
||||
return m_customOptions;
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Parses provided reporter spec string into
|
||||
* Parses provided reporter spec string into actual `ReporterSpec`
|
||||
*
|
||||
* Returns empty optional on errors, e.g.
|
||||
* * field that is not first and not a key+value pair
|
||||
|
||||
@@ -19,6 +19,7 @@ namespace Catch {
|
||||
m_wrapped_stream( CATCH_MOVE(config).takeStream() ),
|
||||
m_stream( m_wrapped_stream->stream() ),
|
||||
m_colour( makeColourImpl( config.colourMode(), m_wrapped_stream.get() ) ),
|
||||
m_verbosity( config.verbosity() ),
|
||||
m_customOptions( config.customOptions() )
|
||||
{}
|
||||
|
||||
@@ -26,12 +27,12 @@ namespace Catch {
|
||||
|
||||
void ReporterBase::listReporters(
|
||||
std::vector<ReporterDescription> const& descriptions ) {
|
||||
defaultListReporters( m_stream, descriptions, m_config->verbosity() );
|
||||
defaultListReporters( m_stream, descriptions, m_verbosity );
|
||||
}
|
||||
|
||||
void ReporterBase::listListeners(
|
||||
std::vector<ListenerDescription> const& descriptions ) {
|
||||
defaultListListeners( m_stream, descriptions, m_config->verbosity() );
|
||||
defaultListListeners( m_stream, descriptions, m_verbosity );
|
||||
}
|
||||
|
||||
void ReporterBase::listTests(std::vector<TestCaseHandle> const& tests) {
|
||||
@@ -39,11 +40,11 @@ namespace Catch {
|
||||
m_colour.get(),
|
||||
tests,
|
||||
m_config->hasTestFilters(),
|
||||
m_config->verbosity());
|
||||
m_verbosity);
|
||||
}
|
||||
|
||||
void ReporterBase::listTags(std::vector<TagInfo> const& tags) {
|
||||
defaultListTags( m_stream, tags, m_config->hasTestFilters(), m_config->verbosity() );
|
||||
defaultListTags( m_stream, tags, m_config->hasTestFilters(), m_verbosity );
|
||||
}
|
||||
|
||||
} // namespace Catch
|
||||
|
||||
@@ -35,6 +35,8 @@ namespace Catch {
|
||||
std::ostream& m_stream;
|
||||
//! Colour implementation this reporter was configured for
|
||||
Detail::unique_ptr<ColourImpl> m_colour;
|
||||
//! Verbosity configured for this reporter
|
||||
Verbosity m_verbosity;
|
||||
//! The custom reporter options user passed down to the reporter
|
||||
std::map<std::string, std::string> m_customOptions;
|
||||
|
||||
|
||||
@@ -16,6 +16,8 @@
|
||||
|
||||
namespace Catch {
|
||||
namespace {
|
||||
static size_t kJsonOutputVersion = 2;
|
||||
|
||||
void writeSourceInfo( JsonObjectWriter& writer,
|
||||
SourceLineInfo const& sourceInfo ) {
|
||||
auto source_location_writer =
|
||||
@@ -58,7 +60,7 @@ namespace Catch {
|
||||
m_writers.emplace( Writer::Object );
|
||||
auto& writer = m_objectWriters.top();
|
||||
|
||||
writer.write( "version"_sr ).write( 1 );
|
||||
writer.write( "version"_sr ).write( kJsonOutputVersion );
|
||||
|
||||
{
|
||||
auto metadata_writer = writer.write( "metadata"_sr ).writeObject();
|
||||
@@ -344,14 +346,18 @@ namespace Catch {
|
||||
auto const& info = test.getTestCaseInfo();
|
||||
|
||||
desc_writer.write( "name"_sr ).write( info.name );
|
||||
desc_writer.write( "class-name"_sr ).write( info.className );
|
||||
{
|
||||
if (!info.className.empty()) {
|
||||
desc_writer.write( "class-name"_sr ).write( info.className );
|
||||
}
|
||||
if ( m_verbosity >= Verbosity::Normal ) {
|
||||
auto tag_writer = desc_writer.write( "tags"_sr ).writeArray();
|
||||
for ( auto const& tag : info.tags ) {
|
||||
tag_writer.write( tag.original );
|
||||
}
|
||||
}
|
||||
writeSourceInfo( desc_writer, info.lineInfo );
|
||||
if ( m_verbosity >= Verbosity::High) {
|
||||
writeSourceInfo( desc_writer, info.lineInfo );
|
||||
}
|
||||
}
|
||||
}
|
||||
void JsonReporter::listTags( std::vector<TagInfo> const& tags ) {
|
||||
|
||||
@@ -85,9 +85,6 @@ namespace Catch {
|
||||
std::stack<Writer> m_writers{};
|
||||
|
||||
bool m_startedListing = false;
|
||||
|
||||
// std::size_t m_sectionDepth = 0;
|
||||
// std::size_t m_sectionStarted = 0;
|
||||
};
|
||||
} // namespace Catch
|
||||
|
||||
|
||||
@@ -184,6 +184,13 @@ set_tests_properties(List::Tests::Output PROPERTIES
|
||||
PASS_REGULAR_EXPRESSION "[0-9]+ test cases"
|
||||
FAIL_REGULAR_EXPRESSION "Hidden Test"
|
||||
)
|
||||
|
||||
add_test(NAME VerbosityIsPerReporter COMMAND $<TARGET_FILE:SelfTest> --list-tests --verbosity high --reporter console::verbosity=quiet)
|
||||
set_tests_properties(VerbosityIsPerReporter
|
||||
PROPERTIES
|
||||
FAIL_REGULAR_EXPRESSION "\.cpp"
|
||||
)
|
||||
|
||||
# This should be equivalent to the old --list-test-names-only and be usable
|
||||
# with --input-file.
|
||||
add_test(NAME List::Tests::Quiet COMMAND $<TARGET_FILE:SelfTest> --list-tests --verbosity quiet)
|
||||
@@ -193,6 +200,7 @@ set_tests_properties(List::Tests::Quiet PROPERTIES
|
||||
PASS_REGULAR_EXPRESSION "\"#1905 -- test spec parser properly clears internal state between compound tests\"[\r\n]"
|
||||
FAIL_REGULAR_EXPRESSION "[ \t]\"#1905 -- test spec parser properly clears internal state between compound tests\""
|
||||
)
|
||||
|
||||
add_test(NAME List::Tests::ExitCode COMMAND $<TARGET_FILE:SelfTest> --list-tests --verbosity high)
|
||||
add_test(NAME List::Tests::XmlOutput COMMAND $<TARGET_FILE:SelfTest> --list-tests --verbosity high -r xml)
|
||||
set_tests_properties(List::Tests::XmlOutput PROPERTIES
|
||||
@@ -200,6 +208,21 @@ set_tests_properties(List::Tests::XmlOutput PROPERTIES
|
||||
FAIL_REGULAR_EXPRESSION "[0-9]+ test cases"
|
||||
)
|
||||
|
||||
add_test(NAME List::Tests::Json::Normal COMMAND $<TARGET_FILE:SelfTest> --list-tests -r json)
|
||||
set_tests_properties(List::Tests::Json::Normal PROPERTIES
|
||||
PASS_REGULAR_EXPRESSION "\"tags\": \\["
|
||||
FAIL_REGULAR_EXPRESSION "\"source-location\": {"
|
||||
)
|
||||
add_test(NAME List::Tests::Json::Quiet COMMAND $<TARGET_FILE:SelfTest> --list-tests -r json::verbosity=quiet)
|
||||
set_tests_properties(List::Tests::Json::Quiet PROPERTIES
|
||||
PASS_REGULAR_EXPRESSION "\"name\": \""
|
||||
FAIL_REGULAR_EXPRESSION "\"tags\": \\["
|
||||
)
|
||||
add_test(NAME List::Tests::Json::High COMMAND $<TARGET_FILE:SelfTest> --list-tests -r json::verbosity=high)
|
||||
set_tests_properties(List::Tests::Json::High PROPERTIES
|
||||
PASS_REGULAR_EXPRESSION "\"source-location\": {"
|
||||
)
|
||||
|
||||
add_test(NAME List::Tags::Output COMMAND $<TARGET_FILE:SelfTest> --list-tags)
|
||||
set_tests_properties(List::Tags::Output PROPERTIES
|
||||
PASS_REGULAR_EXPRESSION "[0-9]+ tags"
|
||||
@@ -210,6 +233,11 @@ set_tests_properties(List::Tags::XmlOutput PROPERTIES
|
||||
PASS_REGULAR_EXPRESSION "<Count>18</Count>"
|
||||
FAIL_REGULAR_EXPRESSION "[0-9]+ tags"
|
||||
)
|
||||
add_test(NAME List::Tags::JsonOutput COMMAND $<TARGET_FILE:SelfTest> --list-tags -r json)
|
||||
set_tests_properties(List::Tags::JsonOutput PROPERTIES
|
||||
PASS_REGULAR_EXPRESSION "\"count\": 18"
|
||||
FAIL_REGULAR_EXPRESSION "[0-9]+ tags"
|
||||
)
|
||||
|
||||
add_test(NAME List::Reporters::Output COMMAND $<TARGET_FILE:SelfTest> --list-reporters)
|
||||
set_tests_properties(List::Reporters::Output PROPERTIES PASS_REGULAR_EXPRESSION "Available reporters:")
|
||||
@@ -219,6 +247,12 @@ set_tests_properties(List::Reporters::XmlOutput PROPERTIES
|
||||
PASS_REGULAR_EXPRESSION "<Name>compact</Name>"
|
||||
FAIL_REGULAR_EXPRESSION "Available reporters:"
|
||||
)
|
||||
add_test(NAME List::Reporters::JsonOutput COMMAND $<TARGET_FILE:SelfTest> --list-reporters -r json)
|
||||
set_tests_properties(List::Reporters::JsonOutput PROPERTIES
|
||||
PASS_REGULAR_EXPRESSION "\"name\": \"compact\""
|
||||
FAIL_REGULAR_EXPRESSION "Available reporters:"
|
||||
)
|
||||
|
||||
|
||||
add_test(NAME List::Listeners::Output
|
||||
COMMAND
|
||||
@@ -243,6 +277,18 @@ set_tests_properties(List::Listeners::XmlOutput
|
||||
PASS_REGULAR_EXPRESSION "<RegisteredListeners>"
|
||||
FAIL_REGULAR_EXPRESSION "Registered listeners:"
|
||||
)
|
||||
add_test(NAME List::Listeners::JsonOutput
|
||||
COMMAND
|
||||
$<TARGET_FILE:SelfTest>
|
||||
--list-listeners
|
||||
--reporter json
|
||||
)
|
||||
set_tests_properties(List::Listeners::JsonOutput
|
||||
PROPERTIES
|
||||
PASS_REGULAR_EXPRESSION "\"listeners\": \\["
|
||||
FAIL_REGULAR_EXPRESSION "Registered listeners:"
|
||||
)
|
||||
|
||||
|
||||
add_test(NAME NoAssertions COMMAND $<TARGET_FILE:SelfTest> -w NoAssertions "An empty test with no assertions")
|
||||
set_tests_properties(NoAssertions PROPERTIES PASS_REGULAR_EXPRESSION "No assertions in test case")
|
||||
|
||||
@@ -1531,9 +1531,9 @@ CmdLine.tests.cpp:<line number>: passed: config.noThrow == false for: false == f
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications.empty() for: true
|
||||
CmdLine.tests.cpp:<line number>: passed: !(cfg.hasTestFilters()) for: !false
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.getReporterSpecs().size() == 1 for: 1 == 1
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {} } for: {?} == {?}
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {}, {} } for: {?} == {?}
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.getProcessedReporterSpecs().size() == 1 for: 1 == 1
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, {} } for: {?} == {?}
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, Catch::Verbosity::Normal, {} } for: {?} == {?}
|
||||
CmdLine.tests.cpp:<line number>: passed: result for: {?}
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.hasTestFilters() for: true
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.testSpec().matches(*fakeTestCase("notIncluded")) == false for: false == false
|
||||
@@ -1547,21 +1547,21 @@ CmdLine.tests.cpp:<line number>: passed: cfg.hasTestFilters() for: true
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.testSpec().matches(*fakeTestCase("test1")) == false for: false == false
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.testSpec().matches(*fakeTestCase("alwaysIncluded")) for: true
|
||||
CmdLine.tests.cpp:<line number>: passed: result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: !result for: true
|
||||
CmdLine.tests.cpp:<line number>: passed: result.errorMessage(), ContainsSubstring("Unrecognized reporter") for: "Unrecognized reporter, 'unsupported'. Check available with --list-reporters" contains: "Unrecognized reporter"
|
||||
CmdLine.tests.cpp:<line number>: passed: result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: cli.parse({ "test", "-r", "xml::out=output.xml", "-r", "junit::out=output-junit.xml" }) for: {?}
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "junit", "output-junit.xml"s, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "junit", "output-junit.xml"s, {}, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
CmdLine.tests.cpp:<line number>: passed: cli.parse({ "test", "-r", "xml::out=output.xml", "-r", "console" }) for: {?}
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "console", {}, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "console", {}, {}, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
CmdLine.tests.cpp:<line number>: passed: !result for: true
|
||||
CmdLine.tests.cpp:<line number>: passed: result.errorMessage(), ContainsSubstring("Only one reporter may have unspecified output file.") for: "Only one reporter may have unspecified output file." contains: "Only one reporter may have unspecified output file."
|
||||
CmdLine.tests.cpp:<line number>: passed: cli.parse({"test", "-b"}) for: {?}
|
||||
@@ -1696,7 +1696,7 @@ Reporters.tests.cpp:<line number>: passed: listingString, ContainsSubstring( "fa
|
||||
" ( contains: "fake test name" and contains: "fakeTestTag" ) with 1 message: 'Tested reporter: console'
|
||||
Reporters.tests.cpp:<line number>: passed: !(factories.empty()) for: !false
|
||||
Reporters.tests.cpp:<line number>: passed: listingString, ContainsSubstring("fakeTag"s) for: "{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -1713,7 +1713,7 @@ Reporters.tests.cpp:<line number>: passed: listingString, ContainsSubstring("fak
|
||||
]" contains: "fakeTag" with 1 message: 'Tested reporter: JSON'
|
||||
Reporters.tests.cpp:<line number>: passed: !(factories.empty()) for: !false
|
||||
Reporters.tests.cpp:<line number>: passed: listingString, ContainsSubstring("fake reporter"s) for: "{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -1728,7 +1728,7 @@ Reporters.tests.cpp:<line number>: passed: listingString, ContainsSubstring("fak
|
||||
]" contains: "fake reporter" with 1 message: 'Tested reporter: JSON'
|
||||
Reporters.tests.cpp:<line number>: passed: !(factories.empty()) for: !false
|
||||
Reporters.tests.cpp:<line number>: passed: listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) for: "{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -1738,14 +1738,9 @@ Reporters.tests.cpp:<line number>: passed: listingString, ContainsSubstring( "fa
|
||||
"tests": [
|
||||
{
|
||||
"name": "fake test name",
|
||||
"class-name": "",
|
||||
"tags": [
|
||||
"fakeTestTag"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "fake-file.cpp",
|
||||
"line": 123456789
|
||||
}
|
||||
]
|
||||
}
|
||||
]" ( contains: "fake test name" and contains: "fakeTestTag" ) with 1 message: 'Tested reporter: JSON'
|
||||
Reporters.tests.cpp:<line number>: passed: !(factories.empty()) for: !false
|
||||
|
||||
@@ -1529,9 +1529,9 @@ CmdLine.tests.cpp:<line number>: passed: config.noThrow == false for: false == f
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications.empty() for: true
|
||||
CmdLine.tests.cpp:<line number>: passed: !(cfg.hasTestFilters()) for: !false
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.getReporterSpecs().size() == 1 for: 1 == 1
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {} } for: {?} == {?}
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {}, {} } for: {?} == {?}
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.getProcessedReporterSpecs().size() == 1 for: 1 == 1
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, {} } for: {?} == {?}
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, Catch::Verbosity::Normal, {} } for: {?} == {?}
|
||||
CmdLine.tests.cpp:<line number>: passed: result for: {?}
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.hasTestFilters() for: true
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.testSpec().matches(*fakeTestCase("notIncluded")) == false for: false == false
|
||||
@@ -1545,21 +1545,21 @@ CmdLine.tests.cpp:<line number>: passed: cfg.hasTestFilters() for: true
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.testSpec().matches(*fakeTestCase("test1")) == false for: false == false
|
||||
CmdLine.tests.cpp:<line number>: passed: cfg.testSpec().matches(*fakeTestCase("alwaysIncluded")) for: true
|
||||
CmdLine.tests.cpp:<line number>: passed: result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: !result for: true
|
||||
CmdLine.tests.cpp:<line number>: passed: result.errorMessage(), ContainsSubstring("Unrecognized reporter") for: "Unrecognized reporter, 'unsupported'. Check available with --list-reporters" contains: "Unrecognized reporter"
|
||||
CmdLine.tests.cpp:<line number>: passed: result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
CmdLine.tests.cpp:<line number>: passed: cli.parse({ "test", "-r", "xml::out=output.xml", "-r", "junit::out=output-junit.xml" }) for: {?}
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "junit", "output-junit.xml"s, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "junit", "output-junit.xml"s, {}, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
CmdLine.tests.cpp:<line number>: passed: cli.parse({ "test", "-r", "xml::out=output.xml", "-r", "console" }) for: {?}
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "console", {}, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
CmdLine.tests.cpp:<line number>: passed: config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "console", {}, {}, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
CmdLine.tests.cpp:<line number>: passed: !result for: true
|
||||
CmdLine.tests.cpp:<line number>: passed: result.errorMessage(), ContainsSubstring("Only one reporter may have unspecified output file.") for: "Only one reporter may have unspecified output file." contains: "Only one reporter may have unspecified output file."
|
||||
CmdLine.tests.cpp:<line number>: passed: cli.parse({"test", "-b"}) for: {?}
|
||||
@@ -1694,7 +1694,7 @@ Reporters.tests.cpp:<line number>: passed: listingString, ContainsSubstring( "fa
|
||||
" ( contains: "fake test name" and contains: "fakeTestTag" ) with 1 message: 'Tested reporter: console'
|
||||
Reporters.tests.cpp:<line number>: passed: !(factories.empty()) for: !false
|
||||
Reporters.tests.cpp:<line number>: passed: listingString, ContainsSubstring("fakeTag"s) for: "{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -1711,7 +1711,7 @@ Reporters.tests.cpp:<line number>: passed: listingString, ContainsSubstring("fak
|
||||
]" contains: "fakeTag" with 1 message: 'Tested reporter: JSON'
|
||||
Reporters.tests.cpp:<line number>: passed: !(factories.empty()) for: !false
|
||||
Reporters.tests.cpp:<line number>: passed: listingString, ContainsSubstring("fake reporter"s) for: "{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -1726,7 +1726,7 @@ Reporters.tests.cpp:<line number>: passed: listingString, ContainsSubstring("fak
|
||||
]" contains: "fake reporter" with 1 message: 'Tested reporter: JSON'
|
||||
Reporters.tests.cpp:<line number>: passed: !(factories.empty()) for: !false
|
||||
Reporters.tests.cpp:<line number>: passed: listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) for: "{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -1736,14 +1736,9 @@ Reporters.tests.cpp:<line number>: passed: listingString, ContainsSubstring( "fa
|
||||
"tests": [
|
||||
{
|
||||
"name": "fake test name",
|
||||
"class-name": "",
|
||||
"tags": [
|
||||
"fakeTestTag"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "fake-file.cpp",
|
||||
"line": 123456789
|
||||
}
|
||||
]
|
||||
}
|
||||
]" ( contains: "fake test name" and contains: "fakeTestTag" ) with 1 message: 'Tested reporter: JSON'
|
||||
Reporters.tests.cpp:<line number>: passed: !(factories.empty()) for: !false
|
||||
|
||||
@@ -9977,7 +9977,7 @@ with expansion:
|
||||
1 == 1
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
CHECK( cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {} } )
|
||||
CHECK( cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {}, {} } )
|
||||
with expansion:
|
||||
{?} == {?}
|
||||
|
||||
@@ -9987,7 +9987,7 @@ with expansion:
|
||||
1 == 1
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
CHECK( cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, {} } )
|
||||
CHECK( cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, Catch::Verbosity::Normal, {} } )
|
||||
with expansion:
|
||||
{?} == {?}
|
||||
|
||||
@@ -10091,7 +10091,7 @@ with message:
|
||||
result.errorMessage() := ""
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {} } } )
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {}, {} } } )
|
||||
with expansion:
|
||||
{ {?} } == { {?} }
|
||||
with message:
|
||||
@@ -10113,7 +10113,7 @@ with message:
|
||||
result.errorMessage() := ""
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {} } } )
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {}, {} } } )
|
||||
with expansion:
|
||||
{ {?} } == { {?} }
|
||||
with message:
|
||||
@@ -10135,7 +10135,7 @@ with message:
|
||||
result.errorMessage() := ""
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {} } } )
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {}, {} } } )
|
||||
with expansion:
|
||||
{ {?} } == { {?} }
|
||||
with message:
|
||||
@@ -10176,7 +10176,7 @@ with message:
|
||||
result.errorMessage() := ""
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {} } } )
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {}, {} } } )
|
||||
with expansion:
|
||||
{ {?} } == { {?} }
|
||||
with message:
|
||||
@@ -10198,7 +10198,7 @@ with message:
|
||||
result.errorMessage() := ""
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {} } } )
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {}, {} } } )
|
||||
with expansion:
|
||||
{ {?} } == { {?} }
|
||||
with message:
|
||||
@@ -10219,7 +10219,7 @@ with expansion:
|
||||
{?}
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "junit", "output-junit.xml"s, {}, {} } } )
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "junit", "output-junit.xml"s, {}, {}, {} } } )
|
||||
with expansion:
|
||||
{ {?}, {?} } == { {?}, {?} }
|
||||
|
||||
@@ -10238,7 +10238,7 @@ with expansion:
|
||||
{?}
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "console", {}, {}, {} } } )
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "console", {}, {}, {}, {} } } )
|
||||
with expansion:
|
||||
{ {?}, {?} } == { {?}, {?} }
|
||||
|
||||
@@ -11233,7 +11233,7 @@ Reporters.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE_THAT( listingString, ContainsSubstring("fakeTag"s) )
|
||||
with expansion:
|
||||
"{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -11273,7 +11273,7 @@ Reporters.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE_THAT( listingString, ContainsSubstring("fake reporter"s) )
|
||||
with expansion:
|
||||
"{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -11311,7 +11311,7 @@ Reporters.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE_THAT( listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) )
|
||||
with expansion:
|
||||
"{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -11321,14 +11321,9 @@ with expansion:
|
||||
"tests": [
|
||||
{
|
||||
"name": "fake test name",
|
||||
"class-name": "",
|
||||
"tags": [
|
||||
"fakeTestTag"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "fake-file.cpp",
|
||||
"line": 123456789
|
||||
}
|
||||
]
|
||||
}
|
||||
]" ( contains: "fake test name" and contains: "fakeTestTag" )
|
||||
with message:
|
||||
|
||||
@@ -9975,7 +9975,7 @@ with expansion:
|
||||
1 == 1
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
CHECK( cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {} } )
|
||||
CHECK( cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {}, {} } )
|
||||
with expansion:
|
||||
{?} == {?}
|
||||
|
||||
@@ -9985,7 +9985,7 @@ with expansion:
|
||||
1 == 1
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
CHECK( cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, {} } )
|
||||
CHECK( cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, Catch::Verbosity::Normal, {} } )
|
||||
with expansion:
|
||||
{?} == {?}
|
||||
|
||||
@@ -10089,7 +10089,7 @@ with message:
|
||||
result.errorMessage() := ""
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {} } } )
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {}, {} } } )
|
||||
with expansion:
|
||||
{ {?} } == { {?} }
|
||||
with message:
|
||||
@@ -10111,7 +10111,7 @@ with message:
|
||||
result.errorMessage() := ""
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {} } } )
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {}, {} } } )
|
||||
with expansion:
|
||||
{ {?} } == { {?} }
|
||||
with message:
|
||||
@@ -10133,7 +10133,7 @@ with message:
|
||||
result.errorMessage() := ""
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {} } } )
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {}, {} } } )
|
||||
with expansion:
|
||||
{ {?} } == { {?} }
|
||||
with message:
|
||||
@@ -10174,7 +10174,7 @@ with message:
|
||||
result.errorMessage() := ""
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {} } } )
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {}, {} } } )
|
||||
with expansion:
|
||||
{ {?} } == { {?} }
|
||||
with message:
|
||||
@@ -10196,7 +10196,7 @@ with message:
|
||||
result.errorMessage() := ""
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {} } } )
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {}, {} } } )
|
||||
with expansion:
|
||||
{ {?} } == { {?} }
|
||||
with message:
|
||||
@@ -10217,7 +10217,7 @@ with expansion:
|
||||
{?}
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "junit", "output-junit.xml"s, {}, {} } } )
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "junit", "output-junit.xml"s, {}, {}, {} } } )
|
||||
with expansion:
|
||||
{ {?}, {?} } == { {?}, {?} }
|
||||
|
||||
@@ -10236,7 +10236,7 @@ with expansion:
|
||||
{?}
|
||||
|
||||
CmdLine.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "console", {}, {}, {} } } )
|
||||
REQUIRE( config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "console", {}, {}, {}, {} } } )
|
||||
with expansion:
|
||||
{ {?}, {?} } == { {?}, {?} }
|
||||
|
||||
@@ -11231,7 +11231,7 @@ Reporters.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE_THAT( listingString, ContainsSubstring("fakeTag"s) )
|
||||
with expansion:
|
||||
"{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -11271,7 +11271,7 @@ Reporters.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE_THAT( listingString, ContainsSubstring("fake reporter"s) )
|
||||
with expansion:
|
||||
"{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -11309,7 +11309,7 @@ Reporters.tests.cpp:<line number>: PASSED:
|
||||
REQUIRE_THAT( listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) )
|
||||
with expansion:
|
||||
"{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -11319,14 +11319,9 @@ with expansion:
|
||||
"tests": [
|
||||
{
|
||||
"name": "fake test name",
|
||||
"class-name": "",
|
||||
"tags": [
|
||||
"fakeTestTag"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "fake-file.cpp",
|
||||
"line": 123456789
|
||||
}
|
||||
]
|
||||
}
|
||||
]" ( contains: "fake test name" and contains: "fakeTestTag" )
|
||||
with message:
|
||||
|
||||
@@ -2515,11 +2515,11 @@ ok {test-number} - !(cfg.hasTestFilters()) for: !false
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - cfg.getReporterSpecs().size() == 1 for: 1 == 1
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {} } for: {?} == {?}
|
||||
ok {test-number} - cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {}, {} } for: {?} == {?}
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - cfg.getProcessedReporterSpecs().size() == 1 for: 1 == 1
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, {} } for: {?} == {?}
|
||||
ok {test-number} - cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, Catch::Verbosity::Normal, {} } for: {?} == {?}
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - result for: {?}
|
||||
# Process can be configured on command line
|
||||
@@ -2547,15 +2547,15 @@ ok {test-number} - cfg.testSpec().matches(*fakeTestCase("alwaysIncluded")) for:
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - !result for: true
|
||||
# Process can be configured on command line
|
||||
@@ -2563,19 +2563,19 @@ ok {test-number} - result.errorMessage(), ContainsSubstring("Unrecognized report
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - cli.parse({ "test", "-r", "xml::out=output.xml", "-r", "junit::out=output-junit.xml" }) for: {?}
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "junit", "output-junit.xml"s, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "junit", "output-junit.xml"s, {}, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - cli.parse({ "test", "-r", "xml::out=output.xml", "-r", "console" }) for: {?}
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "console", {}, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "console", {}, {}, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - !result for: true
|
||||
# Process can be configured on command line
|
||||
@@ -2767,15 +2767,15 @@ ok {test-number} - listingString, ContainsSubstring( "fake test name"s ) && Cont
|
||||
# Reporter's write listings to provided stream
|
||||
ok {test-number} - !(factories.empty()) for: !false
|
||||
# Reporter's write listings to provided stream
|
||||
ok {test-number} - listingString, ContainsSubstring("fakeTag"s) for: "{ "version": 1, "metadata": { "name": "", "rng-seed": 1234, "catch2-version": "<version>" }, "listings": { "tags": [ { "aliases": [ "fakeTag" ], "count": 1 } ]" contains: "fakeTag" with 1 message: 'Tested reporter: JSON'
|
||||
ok {test-number} - listingString, ContainsSubstring("fakeTag"s) for: "{ "version": 2, "metadata": { "name": "", "rng-seed": 1234, "catch2-version": "<version>" }, "listings": { "tags": [ { "aliases": [ "fakeTag" ], "count": 1 } ]" contains: "fakeTag" with 1 message: 'Tested reporter: JSON'
|
||||
# Reporter's write listings to provided stream
|
||||
ok {test-number} - !(factories.empty()) for: !false
|
||||
# Reporter's write listings to provided stream
|
||||
ok {test-number} - listingString, ContainsSubstring("fake reporter"s) for: "{ "version": 1, "metadata": { "name": "", "rng-seed": 1234, "catch2-version": "<version>" }, "listings": { "reporters": [ { "name": "fake reporter", "description": "fake description" } ]" contains: "fake reporter" with 1 message: 'Tested reporter: JSON'
|
||||
ok {test-number} - listingString, ContainsSubstring("fake reporter"s) for: "{ "version": 2, "metadata": { "name": "", "rng-seed": 1234, "catch2-version": "<version>" }, "listings": { "reporters": [ { "name": "fake reporter", "description": "fake description" } ]" contains: "fake reporter" with 1 message: 'Tested reporter: JSON'
|
||||
# Reporter's write listings to provided stream
|
||||
ok {test-number} - !(factories.empty()) for: !false
|
||||
# Reporter's write listings to provided stream
|
||||
ok {test-number} - listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) for: "{ "version": 1, "metadata": { "name": "", "rng-seed": 1234, "catch2-version": "<version>" }, "listings": { "tests": [ { "name": "fake test name", "class-name": "", "tags": [ "fakeTestTag" ], "source-location": { "filename": "fake-file.cpp", "line": 123456789 } } ]" ( contains: "fake test name" and contains: "fakeTestTag" ) with 1 message: 'Tested reporter: JSON'
|
||||
ok {test-number} - listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) for: "{ "version": 2, "metadata": { "name": "", "rng-seed": 1234, "catch2-version": "<version>" }, "listings": { "tests": [ { "name": "fake test name", "tags": [ "fakeTestTag" ] } ]" ( contains: "fake test name" and contains: "fakeTestTag" ) with 1 message: 'Tested reporter: JSON'
|
||||
# Reporter's write listings to provided stream
|
||||
ok {test-number} - !(factories.empty()) for: !false
|
||||
# Reporter's write listings to provided stream
|
||||
|
||||
@@ -2513,11 +2513,11 @@ ok {test-number} - !(cfg.hasTestFilters()) for: !false
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - cfg.getReporterSpecs().size() == 1 for: 1 == 1
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {} } for: {?} == {?}
|
||||
ok {test-number} - cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {}, {} } for: {?} == {?}
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - cfg.getProcessedReporterSpecs().size() == 1 for: 1 == 1
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, {} } for: {?} == {?}
|
||||
ok {test-number} - cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, Catch::Verbosity::Normal, {} } for: {?} == {?}
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - result for: {?}
|
||||
# Process can be configured on command line
|
||||
@@ -2545,15 +2545,15 @@ ok {test-number} - cfg.testSpec().matches(*fakeTestCase("alwaysIncluded")) for:
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - !result for: true
|
||||
# Process can be configured on command line
|
||||
@@ -2561,19 +2561,19 @@ ok {test-number} - result.errorMessage(), ContainsSubstring("Unrecognized report
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - result for: {?} with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {}, {} } } for: { {?} } == { {?} } with 1 message: 'result.errorMessage() := ""'
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - cli.parse({ "test", "-r", "xml::out=output.xml", "-r", "junit::out=output-junit.xml" }) for: {?}
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "junit", "output-junit.xml"s, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "junit", "output-junit.xml"s, {}, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - cli.parse({ "test", "-r", "xml::out=output.xml", "-r", "console" }) for: {?}
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "console", {}, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
ok {test-number} - config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "console", {}, {}, {}, {} } } for: { {?}, {?} } == { {?}, {?} }
|
||||
# Process can be configured on command line
|
||||
ok {test-number} - !result for: true
|
||||
# Process can be configured on command line
|
||||
@@ -2765,15 +2765,15 @@ ok {test-number} - listingString, ContainsSubstring( "fake test name"s ) && Cont
|
||||
# Reporter's write listings to provided stream
|
||||
ok {test-number} - !(factories.empty()) for: !false
|
||||
# Reporter's write listings to provided stream
|
||||
ok {test-number} - listingString, ContainsSubstring("fakeTag"s) for: "{ "version": 1, "metadata": { "name": "", "rng-seed": 1234, "catch2-version": "<version>" }, "listings": { "tags": [ { "aliases": [ "fakeTag" ], "count": 1 } ]" contains: "fakeTag" with 1 message: 'Tested reporter: JSON'
|
||||
ok {test-number} - listingString, ContainsSubstring("fakeTag"s) for: "{ "version": 2, "metadata": { "name": "", "rng-seed": 1234, "catch2-version": "<version>" }, "listings": { "tags": [ { "aliases": [ "fakeTag" ], "count": 1 } ]" contains: "fakeTag" with 1 message: 'Tested reporter: JSON'
|
||||
# Reporter's write listings to provided stream
|
||||
ok {test-number} - !(factories.empty()) for: !false
|
||||
# Reporter's write listings to provided stream
|
||||
ok {test-number} - listingString, ContainsSubstring("fake reporter"s) for: "{ "version": 1, "metadata": { "name": "", "rng-seed": 1234, "catch2-version": "<version>" }, "listings": { "reporters": [ { "name": "fake reporter", "description": "fake description" } ]" contains: "fake reporter" with 1 message: 'Tested reporter: JSON'
|
||||
ok {test-number} - listingString, ContainsSubstring("fake reporter"s) for: "{ "version": 2, "metadata": { "name": "", "rng-seed": 1234, "catch2-version": "<version>" }, "listings": { "reporters": [ { "name": "fake reporter", "description": "fake description" } ]" contains: "fake reporter" with 1 message: 'Tested reporter: JSON'
|
||||
# Reporter's write listings to provided stream
|
||||
ok {test-number} - !(factories.empty()) for: !false
|
||||
# Reporter's write listings to provided stream
|
||||
ok {test-number} - listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) for: "{ "version": 1, "metadata": { "name": "", "rng-seed": 1234, "catch2-version": "<version>" }, "listings": { "tests": [ { "name": "fake test name", "class-name": "", "tags": [ "fakeTestTag" ], "source-location": { "filename": "fake-file.cpp", "line": 123456789 } } ]" ( contains: "fake test name" and contains: "fakeTestTag" ) with 1 message: 'Tested reporter: JSON'
|
||||
ok {test-number} - listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) for: "{ "version": 2, "metadata": { "name": "", "rng-seed": 1234, "catch2-version": "<version>" }, "listings": { "tests": [ { "name": "fake test name", "tags": [ "fakeTestTag" ] } ]" ( contains: "fake test name" and contains: "fakeTestTag" ) with 1 message: 'Tested reporter: JSON'
|
||||
# Reporter's write listings to provided stream
|
||||
ok {test-number} - !(factories.empty()) for: !false
|
||||
# Reporter's write listings to provided stream
|
||||
|
||||
@@ -11976,7 +11976,7 @@ Approx( 1.21999999999999997 )
|
||||
</Expression>
|
||||
<Expression success="true" type="CHECK" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {} }
|
||||
cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {}, {} }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{?} == {?}
|
||||
@@ -11992,7 +11992,7 @@ Approx( 1.21999999999999997 )
|
||||
</Expression>
|
||||
<Expression success="true" type="CHECK" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, {} }
|
||||
cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, Catch::Verbosity::Normal, {} }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{?} == {?}
|
||||
@@ -12132,7 +12132,7 @@ Approx( 1.21999999999999997 )
|
||||
</Info>
|
||||
<Expression success="true" type="REQUIRE" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {} } }
|
||||
config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {}, {} } }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{ {?} } == { {?} }
|
||||
@@ -12160,7 +12160,7 @@ Approx( 1.21999999999999997 )
|
||||
</Info>
|
||||
<Expression success="true" type="REQUIRE" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {} } }
|
||||
config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {}, {} } }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{ {?} } == { {?} }
|
||||
@@ -12188,7 +12188,7 @@ Approx( 1.21999999999999997 )
|
||||
</Info>
|
||||
<Expression success="true" type="REQUIRE" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {} } }
|
||||
config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {}, {} } }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{ {?} } == { {?} }
|
||||
@@ -12238,7 +12238,7 @@ Approx( 1.21999999999999997 )
|
||||
</Info>
|
||||
<Expression success="true" type="REQUIRE" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {} } }
|
||||
config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {}, {} } }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{ {?} } == { {?} }
|
||||
@@ -12266,7 +12266,7 @@ Approx( 1.21999999999999997 )
|
||||
</Info>
|
||||
<Expression success="true" type="REQUIRE" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {} } }
|
||||
config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {}, {} } }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{ {?} } == { {?} }
|
||||
@@ -12289,7 +12289,7 @@ Approx( 1.21999999999999997 )
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "junit", "output-junit.xml"s, {}, {} } }
|
||||
config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "junit", "output-junit.xml"s, {}, {}, {} } }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{ {?}, {?} } == { {?}, {?} }
|
||||
@@ -12314,7 +12314,7 @@ Approx( 1.21999999999999997 )
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "console", {}, {}, {} } }
|
||||
config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "console", {}, {}, {}, {} } }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{ {?}, {?} } == { {?}, {?} }
|
||||
@@ -13419,7 +13419,7 @@ Approx( 0.98999999999999999 )
|
||||
</Original>
|
||||
<Expanded>
|
||||
"{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -13456,7 +13456,7 @@ Approx( 0.98999999999999999 )
|
||||
</Original>
|
||||
<Expanded>
|
||||
"{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -13491,7 +13491,7 @@ Approx( 0.98999999999999999 )
|
||||
</Original>
|
||||
<Expanded>
|
||||
"{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -13501,14 +13501,9 @@ Approx( 0.98999999999999999 )
|
||||
"tests": [
|
||||
{
|
||||
"name": "fake test name",
|
||||
"class-name": "",
|
||||
"tags": [
|
||||
"fakeTestTag"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "fake-file.cpp",
|
||||
"line": 123456789
|
||||
}
|
||||
]
|
||||
}
|
||||
]" ( contains: "fake test name" and contains: "fakeTestTag" )
|
||||
</Expanded>
|
||||
|
||||
@@ -11976,7 +11976,7 @@ Approx( 1.21999999999999997 )
|
||||
</Expression>
|
||||
<Expression success="true" type="CHECK" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {} }
|
||||
cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {}, {} }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{?} == {?}
|
||||
@@ -11992,7 +11992,7 @@ Approx( 1.21999999999999997 )
|
||||
</Expression>
|
||||
<Expression success="true" type="CHECK" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, {} }
|
||||
cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, Catch::Verbosity::Normal, {} }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{?} == {?}
|
||||
@@ -12132,7 +12132,7 @@ Approx( 1.21999999999999997 )
|
||||
</Info>
|
||||
<Expression success="true" type="REQUIRE" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {} } }
|
||||
config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {}, {} } }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{ {?} } == { {?} }
|
||||
@@ -12160,7 +12160,7 @@ Approx( 1.21999999999999997 )
|
||||
</Info>
|
||||
<Expression success="true" type="REQUIRE" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {} } }
|
||||
config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {}, {} } }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{ {?} } == { {?} }
|
||||
@@ -12188,7 +12188,7 @@ Approx( 1.21999999999999997 )
|
||||
</Info>
|
||||
<Expression success="true" type="REQUIRE" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {} } }
|
||||
config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {}, {} } }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{ {?} } == { {?} }
|
||||
@@ -12238,7 +12238,7 @@ Approx( 1.21999999999999997 )
|
||||
</Info>
|
||||
<Expression success="true" type="REQUIRE" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {} } }
|
||||
config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {}, {} } }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{ {?} } == { {?} }
|
||||
@@ -12266,7 +12266,7 @@ Approx( 1.21999999999999997 )
|
||||
</Info>
|
||||
<Expression success="true" type="REQUIRE" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {} } }
|
||||
config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {}, {} } }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{ {?} } == { {?} }
|
||||
@@ -12289,7 +12289,7 @@ Approx( 1.21999999999999997 )
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "junit", "output-junit.xml"s, {}, {} } }
|
||||
config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "junit", "output-junit.xml"s, {}, {}, {} } }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{ {?}, {?} } == { {?}, {?} }
|
||||
@@ -12314,7 +12314,7 @@ Approx( 1.21999999999999997 )
|
||||
</Expression>
|
||||
<Expression success="true" type="REQUIRE" filename="tests/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
|
||||
<Original>
|
||||
config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "console", {}, {}, {} } }
|
||||
config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {}, {} }, { "console", {}, {}, {}, {} } }
|
||||
</Original>
|
||||
<Expanded>
|
||||
{ {?}, {?} } == { {?}, {?} }
|
||||
@@ -13419,7 +13419,7 @@ Approx( 0.98999999999999999 )
|
||||
</Original>
|
||||
<Expanded>
|
||||
"{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -13456,7 +13456,7 @@ Approx( 0.98999999999999999 )
|
||||
</Original>
|
||||
<Expanded>
|
||||
"{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -13491,7 +13491,7 @@ Approx( 0.98999999999999999 )
|
||||
</Original>
|
||||
<Expanded>
|
||||
"{
|
||||
"version": 1,
|
||||
"version": 2,
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"rng-seed": 1234,
|
||||
@@ -13501,14 +13501,9 @@ Approx( 0.98999999999999999 )
|
||||
"tests": [
|
||||
{
|
||||
"name": "fake test name",
|
||||
"class-name": "",
|
||||
"tags": [
|
||||
"fakeTestTag"
|
||||
],
|
||||
"source-location": {
|
||||
"filename": "fake-file.cpp",
|
||||
"line": 123456789
|
||||
}
|
||||
]
|
||||
}
|
||||
]" ( contains: "fake test name" and contains: "fakeTestTag" )
|
||||
</Expanded>
|
||||
|
||||
@@ -58,12 +58,13 @@ TEST_CASE( "Process can be configured on command line", "[config][command-line]"
|
||||
|
||||
CHECK( cfg.getReporterSpecs().size() == 1 );
|
||||
CHECK( cfg.getReporterSpecs()[0] ==
|
||||
Catch::ReporterSpec{ expectedReporter, {}, {}, {} } );
|
||||
Catch::ReporterSpec{ expectedReporter, {}, {}, {}, {} } );
|
||||
CHECK( cfg.getProcessedReporterSpecs().size() == 1 );
|
||||
CHECK( cfg.getProcessedReporterSpecs()[0] ==
|
||||
Catch::ProcessedReporterSpec{ expectedReporter,
|
||||
std::string{},
|
||||
Catch::ColourMode::PlatformDefault,
|
||||
Catch::Verbosity::Normal,
|
||||
{} } );
|
||||
}
|
||||
|
||||
@@ -108,7 +109,7 @@ TEST_CASE( "Process can be configured on command line", "[config][command-line]"
|
||||
CHECK(result);
|
||||
|
||||
REQUIRE( config.reporterSpecifications ==
|
||||
vec_Specs{ { "console", {}, {}, {} } } );
|
||||
vec_Specs{ { "console", {}, {}, {}, {} } } );
|
||||
}
|
||||
SECTION("-r/xml") {
|
||||
auto result = cli.parse({"test", "-r", "xml"});
|
||||
@@ -116,7 +117,7 @@ TEST_CASE( "Process can be configured on command line", "[config][command-line]"
|
||||
CHECK(result);
|
||||
|
||||
REQUIRE( config.reporterSpecifications ==
|
||||
vec_Specs{ { "xml", {}, {}, {} } } );
|
||||
vec_Specs{ { "xml", {}, {}, {}, {} } } );
|
||||
}
|
||||
SECTION("--reporter/junit") {
|
||||
auto result = cli.parse({"test", "--reporter", "junit"});
|
||||
@@ -124,7 +125,7 @@ TEST_CASE( "Process can be configured on command line", "[config][command-line]"
|
||||
CHECK(result);
|
||||
|
||||
REQUIRE( config.reporterSpecifications ==
|
||||
vec_Specs{ { "junit", {}, {}, {} } } );
|
||||
vec_Specs{ { "junit", {}, {}, {}, {} } } );
|
||||
}
|
||||
SECTION("must match one of the available ones") {
|
||||
auto result = cli.parse({"test", "--reporter", "unsupported"});
|
||||
@@ -137,27 +138,27 @@ TEST_CASE( "Process can be configured on command line", "[config][command-line]"
|
||||
CAPTURE(result.errorMessage());
|
||||
CHECK(result);
|
||||
REQUIRE( config.reporterSpecifications ==
|
||||
vec_Specs{ { "console", "out.txt"s, {}, {} } } );
|
||||
vec_Specs{ { "console", "out.txt"s, {}, {}, {} } } );
|
||||
}
|
||||
SECTION("With Windows-like absolute path as output file") {
|
||||
auto result = cli.parse({ "test", "-r", "console::out=C:\\Temp\\out.txt" });
|
||||
CAPTURE(result.errorMessage());
|
||||
CHECK(result);
|
||||
REQUIRE( config.reporterSpecifications ==
|
||||
vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {} } } );
|
||||
vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {}, {} } } );
|
||||
}
|
||||
SECTION("Multiple reporters") {
|
||||
SECTION("All with output files") {
|
||||
CHECK(cli.parse({ "test", "-r", "xml::out=output.xml", "-r", "junit::out=output-junit.xml" }));
|
||||
REQUIRE( config.reporterSpecifications ==
|
||||
vec_Specs{ { "xml", "output.xml"s, {}, {} },
|
||||
{ "junit", "output-junit.xml"s, {}, {} } } );
|
||||
vec_Specs{ { "xml", "output.xml"s, {}, {}, {} },
|
||||
{ "junit", "output-junit.xml"s, {}, {}, {} } } );
|
||||
}
|
||||
SECTION("Mixed output files and default output") {
|
||||
CHECK(cli.parse({ "test", "-r", "xml::out=output.xml", "-r", "console" }));
|
||||
REQUIRE( config.reporterSpecifications ==
|
||||
vec_Specs{ { "xml", "output.xml"s, {}, {} },
|
||||
{ "console", {}, {}, {} } } );
|
||||
vec_Specs{ { "xml", "output.xml"s, {}, {}, {} },
|
||||
{ "console", {}, {}, {}, {} } } );
|
||||
}
|
||||
SECTION("cannot have multiple reporters with default output") {
|
||||
auto result = cli.parse({ "test", "-r", "console", "-r", "xml::out=output.xml", "-r", "junit" });
|
||||
|
||||
@@ -63,6 +63,20 @@ TEST_CASE( "Parsing colour mode", "[cli][colour][approvals]" ) {
|
||||
}
|
||||
}
|
||||
|
||||
TEST_CASE( "Parsing verbosity", "[cli][colour][approvals]" ) {
|
||||
using Catch::Detail::stringToVerbosity;
|
||||
using Catch::Verbosity;
|
||||
SECTION( "Valid strings" ) {
|
||||
REQUIRE( stringToVerbosity( "quiet" ) == Verbosity::Quiet );
|
||||
REQUIRE( stringToVerbosity( "normal" ) == Verbosity::Normal );
|
||||
REQUIRE( stringToVerbosity( "high" ) == Verbosity::High );
|
||||
}
|
||||
SECTION( "Wrong strings" ) {
|
||||
REQUIRE_FALSE( stringToVerbosity( "QUIET" ) );
|
||||
REQUIRE_FALSE( stringToVerbosity( "medium" ) );
|
||||
REQUIRE_FALSE( stringToVerbosity( "vvv" ) );
|
||||
}
|
||||
}
|
||||
|
||||
TEST_CASE("Parsing reporter specs", "[cli][reporter-spec][approvals]") {
|
||||
using Catch::parseReporterSpec;
|
||||
@@ -71,12 +85,13 @@ TEST_CASE("Parsing reporter specs", "[cli][reporter-spec][approvals]") {
|
||||
|
||||
SECTION( "Correct specs" ) {
|
||||
REQUIRE( parseReporterSpec( "someReporter" ) ==
|
||||
ReporterSpec( "someReporter"s, {}, {}, {} ) );
|
||||
ReporterSpec( "someReporter"s, {}, {}, {}, {} ) );
|
||||
REQUIRE( parseReporterSpec( "otherReporter::Xk=v::out=c:\\blah" ) ==
|
||||
ReporterSpec(
|
||||
"otherReporter"s, "c:\\blah"s, {}, { { "Xk"s, "v"s } } ) );
|
||||
"otherReporter"s, "c:\\blah"s, {}, {}, { { "Xk"s, "v"s } } ) );
|
||||
REQUIRE( parseReporterSpec( "diffReporter::Xk1=v1::Xk2==v2" ) ==
|
||||
ReporterSpec( "diffReporter",
|
||||
{},
|
||||
{},
|
||||
{},
|
||||
{ { "Xk1"s, "v1"s }, { "Xk2"s, "=v2"s } } ) );
|
||||
@@ -85,7 +100,15 @@ TEST_CASE("Parsing reporter specs", "[cli][reporter-spec][approvals]") {
|
||||
ReporterSpec( "Foo:bar:reporter",
|
||||
{},
|
||||
Catch::ColourMode::ANSI,
|
||||
{},
|
||||
{ { "Xk 1"s, "v 1"s }, { "Xk2"s, "v:3"s } } ) );
|
||||
REQUIRE(
|
||||
parseReporterSpec( "my:reporter::X1=V1::verbosity=high::X2=V2" ) ==
|
||||
ReporterSpec( "my:reporter",
|
||||
{},
|
||||
{},
|
||||
Catch::Verbosity::High,
|
||||
{ { "X1"s, "V1"s }, { "X2"s, "V2"s } } ) );
|
||||
}
|
||||
|
||||
SECTION( "Bad specs" ) {
|
||||
@@ -107,5 +130,9 @@ TEST_CASE("Parsing reporter specs", "[cli][reporter-spec][approvals]") {
|
||||
REQUIRE_FALSE( parseReporterSpec( "reporter::Xa=" ) );
|
||||
// non-key value later field
|
||||
REQUIRE_FALSE( parseReporterSpec( "reporter::Xab" ) );
|
||||
// Invalid verbosity value
|
||||
REQUIRE_FALSE( parseReporterSpec( "reporter::verbosity=medium" ) );
|
||||
// Duplicated verbosity
|
||||
REQUIRE_FALSE( parseReporterSpec( "reporter::verbosity=high::X1=X2::verbosity=high" ) );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -42,6 +42,7 @@ namespace {
|
||||
&config,
|
||||
Catch::Detail::make_unique<StringIStream>(),
|
||||
Catch::ColourMode::None,
|
||||
Catch::Verbosity::Normal,
|
||||
{} };
|
||||
}
|
||||
}
|
||||
@@ -114,7 +115,7 @@ TEST_CASE( "Reporter's write listings to provided stream", "[reporters]" ) {
|
||||
cfg_data.rngSeed = 1234;
|
||||
Catch::Config config( cfg_data );
|
||||
auto reporter = factory.second->create( Catch::ReporterConfig{
|
||||
&config, CATCH_MOVE( sstream ), Catch::ColourMode::None, {} } );
|
||||
&config, CATCH_MOVE( sstream ), Catch::ColourMode::None, Catch::Verbosity::Normal, {} } );
|
||||
|
||||
DYNAMIC_SECTION( factory.first << " reporter lists tags" ) {
|
||||
std::vector<Catch::TagInfo> tags(1);
|
||||
|
||||
@@ -87,7 +87,7 @@ def get_test_names(build_path: str) -> List[TestInfo]:
|
||||
with open(fname, mode='r', encoding='utf-8') as file:
|
||||
test_listing = json.load(file)
|
||||
|
||||
assert test_listing['version'] == 1
|
||||
assert test_listing['version'] == 2
|
||||
|
||||
tests = []
|
||||
for test in test_listing['listings']['tests']:
|
||||
|
||||
Reference in New Issue
Block a user