mirror of
https://github.com/catchorg/Catch2.git
synced 2025-08-01 12:55:40 +02:00
Added cutoff option to command line
Aborts testing after a certain number of assertion failures
This commit is contained in:
@@ -98,29 +98,21 @@ TEST_CASE( "Sections/nested3", "nested SECTION tests" )
|
||||
CHECK( runner.getLog() ==
|
||||
"\\[tc] ./Sections/nested/a/b\n"
|
||||
|
||||
" \\[g] test case run\n"
|
||||
" \\ [s] c\n"
|
||||
" \\ [s] d (leaf)\n"
|
||||
" / [s] d (leaf)\n"
|
||||
" / [s] c\n"
|
||||
" /[g] test case run\n"
|
||||
" \\ [s] c\n"
|
||||
" \\ [s] d (leaf)\n"
|
||||
" / [s] d (leaf)\n"
|
||||
" / [s] c\n"
|
||||
|
||||
" \\[g] test case run\n"
|
||||
" \\ [s] c\n"
|
||||
" \\ [s] e (leaf)\n"
|
||||
" / [s] e (leaf)\n"
|
||||
" / [s] c\n"
|
||||
" /[g] test case run\n"
|
||||
" \\ [s] c\n"
|
||||
" \\ [s] e (leaf)\n"
|
||||
" / [s] e (leaf)\n"
|
||||
" / [s] c\n"
|
||||
|
||||
" \\[g] test case run\n"
|
||||
" \\ [s] c\n"
|
||||
" / [s] c\n"
|
||||
" /[g] test case run\n"
|
||||
" \\ [s] c\n"
|
||||
" / [s] c\n"
|
||||
|
||||
" \\[g] test case run\n"
|
||||
" \\ [s] f (leaf)\n"
|
||||
" / [s] f (leaf)\n"
|
||||
" /[g] test case run\n"
|
||||
" \\ [s] f (leaf)\n"
|
||||
" / [s] f (leaf)\n"
|
||||
|
||||
"/[tc] ./Sections/nested/a/b\n" );
|
||||
|
||||
|
@@ -74,6 +74,7 @@ TEST_CASE( "selftest/parser", "" ) {
|
||||
CHECK( config.getTestSpecs().empty() );
|
||||
CHECK( config.shouldDebugBreak() == false );
|
||||
CHECK( config.showHelp() == false );
|
||||
CHECK( config.getCutoff() == -1 );
|
||||
CHECK( dynamic_cast<Catch::BasicReporter*>( config.getReporter().get() ) );
|
||||
}
|
||||
|
||||
@@ -200,4 +201,39 @@ TEST_CASE( "selftest/parser", "" ) {
|
||||
REQUIRE_THAT( config.getMessage(), Contains( "not accept" ) );
|
||||
}
|
||||
}
|
||||
|
||||
SECTION( "cutoff", "" ) {
|
||||
SECTION( "-c", "" ) {
|
||||
const char* argv[] = { "test", "-c" };
|
||||
Catch::Config config;
|
||||
CHECK( parseIntoConfig( argv, config ) );
|
||||
|
||||
REQUIRE( config.getCutoff() == 1 );
|
||||
}
|
||||
SECTION( "-c/2", "" ) {
|
||||
const char* argv[] = { "test", "-c", "2" };
|
||||
Catch::Config config;
|
||||
CHECK( parseIntoConfig( argv, config ) );
|
||||
|
||||
REQUIRE( config.getCutoff() == 2 );
|
||||
}
|
||||
SECTION( "-c/error", "cutoff only takes one argument" ) {
|
||||
const char* argv[] = { "test", "-c", "1", "2" };
|
||||
Catch::Config config;
|
||||
CHECK( parseIntoConfig( argv, config ) == false );
|
||||
|
||||
REQUIRE_THAT( config.getMessage(), Contains( "accepts" ) );
|
||||
}
|
||||
}
|
||||
SECTION( "combinations", "" ) {
|
||||
SECTION( "-c -b", "" ) {
|
||||
const char* argv[] = { "test", "-c", "-b" };
|
||||
Catch::Config config;
|
||||
CHECK( parseIntoConfig( argv, config ) );
|
||||
|
||||
REQUIRE( config.getCutoff() == 1 );
|
||||
REQUIRE( config.shouldDebugBreak() );
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -77,6 +77,8 @@ namespace Catch {
|
||||
openLabel( recordTestCases, testInfo.getName() );
|
||||
}
|
||||
|
||||
virtual void Aborted(){}
|
||||
|
||||
virtual void EndTestCase( const TestCaseInfo& testInfo,
|
||||
const Totals&,
|
||||
const std::string&,
|
||||
|
Reference in New Issue
Block a user