mirror of
				https://github.com/catchorg/Catch2.git
				synced 2025-11-04 05:59:32 +01:00 
			
		
		
		
	Sort test ordering during Approval testing
This commit is contained in:
		@@ -3,6 +3,46 @@
 | 
			
		||||
CatchSelfTest is a <version> host application.
 | 
			
		||||
Run with -? for options
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
'Not' checks that should fail
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ConditionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( false != false )
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( true != true )
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( !true )
 | 
			
		||||
with expansion:
 | 
			
		||||
  false
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_FALSE( true )
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( !trueValue )
 | 
			
		||||
with expansion:
 | 
			
		||||
  false
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_FALSE( trueValue )
 | 
			
		||||
with expansion:
 | 
			
		||||
  !true
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( !(1 == 1) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  false
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_FALSE( 1 == 1 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  !(1 == 1)
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
A METHOD_AS_TEST_CASE based test run that fails
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
@@ -25,6 +65,97 @@ ClassTests.cpp:<line number>: FAILED:
 | 
			
		||||
with expansion:
 | 
			
		||||
  1 == 2
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
A couple of nested sections followed by a failure
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
explicitly with message:
 | 
			
		||||
  to infinity and beyond
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
A failing expression with a non streamable type is still captured
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
TrickyTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
TrickyTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( &o1 == &o2 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  0x<hex digits> == 0x<hex digits>
 | 
			
		||||
 | 
			
		||||
TrickyTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( o1 == o2 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  {?} == {?}
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
An unchecked exception reports the line of the last assertion
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  {Unknown expression after the reported line}
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  unexpected exception
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Contains string matcher
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THAT( testStringForMatching(), Contains( "not there" ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "this string contains 'abc' as a substring" contains: "not there"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Custom exceptions can be translated when testing for nothrow
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE_NOTHROW( throwCustom() )
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  custom exception - not std
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Custom exceptions can be translated when testing for throwing as something else
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE_THROWS_AS( throwCustom() )
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  custom exception - not std
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Custom std-exceptions can be custom translated
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  custom std exception
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
EndsWith string matcher
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THAT( testStringForMatching(), EndsWith( "this" ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "this string contains 'abc' as a substring" ends with: "this"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Equality checks that should fail
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
@@ -96,6 +227,100 @@ ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
with expansion:
 | 
			
		||||
  1.3 == Approx( 1.301 )
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Equals string matcher
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THAT( testStringForMatching(), Equals( "something else" ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "this string contains 'abc' as a substring" equals: "something else"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Expected exceptions that don't throw or unexpected exceptions fail the test
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THROWS_AS( thisThrows() )
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  expected exception
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THROWS_AS( thisDoesntThrow() )
 | 
			
		||||
because no exception was thrown where one was expected:
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_NOTHROW( thisThrows() )
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  expected exception
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
FAIL aborts the test
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
explicitly with message:
 | 
			
		||||
  This is a failure
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
FAIL does not require an argument
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
INFO and WARN do not abort tests
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>:
 | 
			
		||||
warning:
 | 
			
		||||
  this is a warning
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
INFO gets logged on failure
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE( a == 1 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  2 == 1
 | 
			
		||||
with messages:
 | 
			
		||||
  this message should be logged
 | 
			
		||||
  so should this
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
INFO gets logged on failure, even if captured before successful assertions
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( a == 1 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  2 == 1
 | 
			
		||||
with messages:
 | 
			
		||||
  this message may be logged later
 | 
			
		||||
  this message should be logged
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( a == 0 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  2 == 0
 | 
			
		||||
with message:
 | 
			
		||||
  and this, but later
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Inequality checks that should fail
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
@@ -127,6 +352,60 @@ ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
with expansion:
 | 
			
		||||
  5 != 5
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Matchers can be composed with both && and || - failing
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THAT( testStringForMatching(), ( Contains( "string" ) || Contains( "different" ) ) && Contains( "random" ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "this string contains 'abc' as a substring" ( ( contains: "string" or
 | 
			
		||||
  contains: "different" ) and contains: "random" )
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Matchers can be negated (Not) with the ! operator - failing
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THAT( testStringForMatching(), !Contains( "substring" ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "this string contains 'abc' as a substring" not contains: "substring"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Mismatching exception messages failing the test
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE_THROWS_WITH( thisThrows(), "should fail" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  expected exception
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Nice descriptive name
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>:
 | 
			
		||||
warning:
 | 
			
		||||
  This one ran
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Non-std exceptions can be translated
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  custom exception
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Ordering comparison checks that should fail
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
@@ -229,64 +508,99 @@ with expansion:
 | 
			
		||||
  "hello" <= "a"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
'Not' checks that should fail
 | 
			
		||||
Output from all sections is reported
 | 
			
		||||
  one
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ConditionTests.cpp:<line number>
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( false != false )
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( true != true )
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( !true )
 | 
			
		||||
with expansion:
 | 
			
		||||
  false
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_FALSE( true )
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( !trueValue )
 | 
			
		||||
with expansion:
 | 
			
		||||
  false
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_FALSE( trueValue )
 | 
			
		||||
with expansion:
 | 
			
		||||
  !true
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( !(1 == 1) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  false
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_FALSE( 1 == 1 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  !(1 == 1)
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
explicitly with message:
 | 
			
		||||
  Message from section one
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Expected exceptions that don't throw or unexpected exceptions fail the test
 | 
			
		||||
Output from all sections is reported
 | 
			
		||||
  two
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
explicitly with message:
 | 
			
		||||
  Message from section two
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Pointers can be converted to strings
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>:
 | 
			
		||||
warning:
 | 
			
		||||
  actual address of p: 0x<hex digits>
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>:
 | 
			
		||||
warning:
 | 
			
		||||
  toString(p): 0x<hex digits>
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
SCOPED_INFO is reset for each loop
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE( i < 10 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  10 < 10
 | 
			
		||||
with messages:
 | 
			
		||||
  current counter 10
 | 
			
		||||
  i := 10
 | 
			
		||||
 | 
			
		||||
A string sent directly to stdout
 | 
			
		||||
A string sent directly to stderr
 | 
			
		||||
Message from section one
 | 
			
		||||
Message from section two
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
StartsWith string matcher
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THAT( testStringForMatching(), StartsWith( "string" ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "this string contains 'abc' as a substring" starts with: "string"
 | 
			
		||||
 | 
			
		||||
hello
 | 
			
		||||
hello
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Tabs and newlines show in output
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( s1 == s2 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "if ($b == 10) {
 | 
			
		||||
  		$a= 20;
 | 
			
		||||
  }"
 | 
			
		||||
  ==
 | 
			
		||||
  "if ($b == 10) {
 | 
			
		||||
  $a = 20;
 | 
			
		||||
  }
 | 
			
		||||
  "
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Unexpected exceptions can be translated
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THROWS_AS( thisThrows() )
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  expected exception
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THROWS_AS( thisDoesntThrow() )
 | 
			
		||||
because no exception was thrown where one was expected:
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_NOTHROW( thisThrows() )
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  expected exception
 | 
			
		||||
  3.14
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
When unchecked exceptions are thrown directly they are always failures
 | 
			
		||||
@@ -299,29 +613,8 @@ due to unexpected exception with message:
 | 
			
		||||
  unexpected exception
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
An unchecked exception reports the line of the last assertion
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  {Unknown expression after the reported line}
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  unexpected exception
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
When unchecked exceptions are thrown from sections they are always failures
 | 
			
		||||
  section name
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  unexpected exception
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
When unchecked exceptions are thrown from functions they are always failures
 | 
			
		||||
When unchecked exceptions are thrown during a CHECK the test should abort and
 | 
			
		||||
fail
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
@@ -344,8 +637,7 @@ due to unexpected exception with message:
 | 
			
		||||
  expected exception
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
When unchecked exceptions are thrown during a CHECK the test should abort and
 | 
			
		||||
fail
 | 
			
		||||
When unchecked exceptions are thrown from functions they are always failures
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
@@ -356,168 +648,69 @@ due to unexpected exception with message:
 | 
			
		||||
  expected exception
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Non-std exceptions can be translated
 | 
			
		||||
When unchecked exceptions are thrown from sections they are always failures
 | 
			
		||||
  section name
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  custom exception
 | 
			
		||||
  unexpected exception
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Custom std-exceptions can be custom translated
 | 
			
		||||
Where the LHS is not a simple value
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
TrickyTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  custom std exception
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Custom exceptions can be translated when testing for nothrow
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE_NOTHROW( throwCustom() )
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  custom exception - not std
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Custom exceptions can be translated when testing for throwing as something else
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE_THROWS_AS( throwCustom() )
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  custom exception - not std
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Unexpected exceptions can be translated
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
due to unexpected exception with message:
 | 
			
		||||
  3.14
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Mismatching exception messages failing the test
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ExceptionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ExceptionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE_THROWS_WITH( thisThrows(), "should fail" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  expected exception
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
INFO and WARN do not abort tests
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>:
 | 
			
		||||
TrickyTests.cpp:<line number>:
 | 
			
		||||
warning:
 | 
			
		||||
  this is a warning
 | 
			
		||||
  Uncomment the code in this test to check that it gives a sensible compiler
 | 
			
		||||
  error
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
INFO gets logged on failure
 | 
			
		||||
Where there is more to the expression after the RHS
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
TrickyTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE( a == 1 )
 | 
			
		||||
TrickyTests.cpp:<line number>:
 | 
			
		||||
warning:
 | 
			
		||||
  Uncomment the code in this test to check that it gives a sensible compiler
 | 
			
		||||
  error
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
checkedElse, failing
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECKED_ELSE( flag )
 | 
			
		||||
with expansion:
 | 
			
		||||
  2 == 1
 | 
			
		||||
with messages:
 | 
			
		||||
  this message should be logged
 | 
			
		||||
  so should this
 | 
			
		||||
  false
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
INFO gets logged on failure, even if captured before successful assertions
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( a == 1 )
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE( testCheckedElse( false ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  2 == 1
 | 
			
		||||
with messages:
 | 
			
		||||
  this message may be logged later
 | 
			
		||||
  this message should be logged
 | 
			
		||||
  false
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( a == 0 )
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
checkedIf, failing
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECKED_IF( flag )
 | 
			
		||||
with expansion:
 | 
			
		||||
  2 == 0
 | 
			
		||||
with message:
 | 
			
		||||
  and this, but later
 | 
			
		||||
  false
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
FAIL aborts the test
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
explicitly with message:
 | 
			
		||||
  This is a failure
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
FAIL does not require an argument
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Output from all sections is reported
 | 
			
		||||
  one
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
explicitly with message:
 | 
			
		||||
  Message from section one
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Output from all sections is reported
 | 
			
		||||
  two
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
explicitly with message:
 | 
			
		||||
  Message from section two
 | 
			
		||||
 | 
			
		||||
Message from section one
 | 
			
		||||
Message from section two
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
SCOPED_INFO is reset for each loop
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE( i < 10 )
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE( testCheckedIf( false ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  10 < 10
 | 
			
		||||
with messages:
 | 
			
		||||
  current counter 10
 | 
			
		||||
  i := 10
 | 
			
		||||
  false
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
just failure
 | 
			
		||||
@@ -529,45 +722,6 @@ MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
explicitly with message:
 | 
			
		||||
  Previous info should not be seen
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
sends information to INFO
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE( false )
 | 
			
		||||
with messages:
 | 
			
		||||
  hi
 | 
			
		||||
  i := 7
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Pointers can be converted to strings
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>:
 | 
			
		||||
warning:
 | 
			
		||||
  actual address of p: 0x<hex digits>
 | 
			
		||||
 | 
			
		||||
MessageTests.cpp:<line number>:
 | 
			
		||||
warning:
 | 
			
		||||
  toString(p): 0x<hex digits>
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
more nested SECTION tests
 | 
			
		||||
  s1
 | 
			
		||||
  s2
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE( a == b )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1 == 2
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
looped SECTION tests
 | 
			
		||||
  s1
 | 
			
		||||
@@ -628,39 +782,18 @@ with expansion:
 | 
			
		||||
with message:
 | 
			
		||||
  Testing if fib[7] (21) is even
 | 
			
		||||
 | 
			
		||||
A string sent directly to stdout
 | 
			
		||||
A string sent directly to stderr
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
checkedIf, failing
 | 
			
		||||
more nested SECTION tests
 | 
			
		||||
  s1
 | 
			
		||||
  s2
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECKED_IF( flag )
 | 
			
		||||
  REQUIRE( a == b )
 | 
			
		||||
with expansion:
 | 
			
		||||
  false
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE( testCheckedIf( false ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  false
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
checkedElse, failing
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECKED_ELSE( flag )
 | 
			
		||||
with expansion:
 | 
			
		||||
  false
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE( testCheckedElse( false ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  false
 | 
			
		||||
  1 == 2
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
send a single char to INFO
 | 
			
		||||
@@ -674,149 +807,16 @@ with message:
 | 
			
		||||
  3
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Contains string matcher
 | 
			
		||||
sends information to INFO
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
MessageTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THAT( testStringForMatching(), Contains( "not there" ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "this string contains 'abc' as a substring" contains: "not there"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
StartsWith string matcher
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THAT( testStringForMatching(), StartsWith( "string" ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "this string contains 'abc' as a substring" starts with: "string"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
EndsWith string matcher
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THAT( testStringForMatching(), EndsWith( "this" ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "this string contains 'abc' as a substring" ends with: "this"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Equals string matcher
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THAT( testStringForMatching(), Equals( "something else" ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "this string contains 'abc' as a substring" equals: "something else"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Matchers can be composed with both && and || - failing
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THAT( testStringForMatching(), ( Contains( "string" ) || Contains( "different" ) ) && Contains( "random" ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "this string contains 'abc' as a substring" ( ( contains: "string" or
 | 
			
		||||
  contains: "different" ) and contains: "random" )
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Matchers can be negated (Not) with the ! operator - failing
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK_THAT( testStringForMatching(), !Contains( "substring" ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "this string contains 'abc' as a substring" not contains: "substring"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Nice descriptive name
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>:
 | 
			
		||||
warning:
 | 
			
		||||
  This one ran
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
A couple of nested sections followed by a failure
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
explicitly with message:
 | 
			
		||||
  to infinity and beyond
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Tabs and newlines show in output
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
MiscTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( s1 == s2 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "if ($b == 10) {
 | 
			
		||||
  		$a= 20;
 | 
			
		||||
  }"
 | 
			
		||||
  ==
 | 
			
		||||
  "if ($b == 10) {
 | 
			
		||||
  $a = 20;
 | 
			
		||||
  }
 | 
			
		||||
  "
 | 
			
		||||
 | 
			
		||||
hello
 | 
			
		||||
hello
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Where there is more to the expression after the RHS
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
TrickyTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
TrickyTests.cpp:<line number>:
 | 
			
		||||
warning:
 | 
			
		||||
  Uncomment the code in this test to check that it gives a sensible compiler
 | 
			
		||||
  error
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Where the LHS is not a simple value
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
TrickyTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
TrickyTests.cpp:<line number>:
 | 
			
		||||
warning:
 | 
			
		||||
  Uncomment the code in this test to check that it gives a sensible compiler
 | 
			
		||||
  error
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
A failing expression with a non streamable type is still captured
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
TrickyTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
TrickyTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( &o1 == &o2 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  0x<hex digits> == 0x<hex digits>
 | 
			
		||||
 | 
			
		||||
TrickyTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( o1 == o2 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  {?} == {?}
 | 
			
		||||
MessageTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE( false )
 | 
			
		||||
with messages:
 | 
			
		||||
  hi
 | 
			
		||||
  i := 7
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
string literals of different sizes can be compared
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -4,612 +4,37 @@ CatchSelfTest is a <version> host application.
 | 
			
		||||
Run with -? for options
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
toString(enum)
 | 
			
		||||
# A test name that starts with a #
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
EnumToString.cpp:<line number>
 | 
			
		||||
MiscTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
EnumToString.cpp:<line number>:
 | 
			
		||||
MiscTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  CHECK( Catch::toString(e0) == "0" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "0" == "0"
 | 
			
		||||
 | 
			
		||||
EnumToString.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  CHECK( Catch::toString(e1) == "1" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "1" == "1"
 | 
			
		||||
with message:
 | 
			
		||||
  yay
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
toString(enum w/operator<<)
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
EnumToString.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
EnumToString.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  CHECK( Catch::toString(e0) == "E2{0}" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "E2{0}" == "E2{0}"
 | 
			
		||||
 | 
			
		||||
EnumToString.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  CHECK( Catch::toString(e1) == "E2{1}" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "E2{1}" == "E2{1}"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
toString(enum class)
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
EnumToString.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
EnumToString.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  CHECK( Catch::toString(e0) == "0" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "0" == "0"
 | 
			
		||||
 | 
			
		||||
EnumToString.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  CHECK( Catch::toString(e1) == "1" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "1" == "1"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
toString(enum class w/operator<<)
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
EnumToString.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
EnumToString.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  CHECK( Catch::toString(e0) == "E2/V0" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "E2/V0" == "E2/V0"
 | 
			
		||||
 | 
			
		||||
EnumToString.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  CHECK( Catch::toString(e1) == "E2/V1" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "E2/V1" == "E2/V1"
 | 
			
		||||
 | 
			
		||||
EnumToString.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  CHECK( Catch::toString(e3) == "Unknown enum value 10" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "Unknown enum value 10"
 | 
			
		||||
  ==
 | 
			
		||||
  "Unknown enum value 10"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Some simple comparisons between doubles
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ApproxTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( d == Approx( 1.23 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1.23 == Approx( 1.23 )
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( d != Approx( 1.22 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1.23 != Approx( 1.22 )
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( d != Approx( 1.24 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1.23 != Approx( 1.24 )
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( Approx( d ) == 1.23 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  Approx( 1.23 ) == 1.23
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( Approx( d ) != 1.22 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  Approx( 1.23 ) != 1.22
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( Approx( d ) != 1.24 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  Approx( 1.23 ) != 1.24
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Approximate comparisons with different epsilons
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ApproxTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( d != Approx( 1.231 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1.23 != Approx( 1.231 )
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( d == Approx( 1.231 ).epsilon( 0.1 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1.23 == Approx( 1.231 )
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Approximate comparisons with floats
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ApproxTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( 1.23f == Approx( 1.23f ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1.23f == Approx( 1.2300000191 )
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( 0.0f == Approx( 0.0f ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  0.0f == Approx( 0.0 )
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Approximate comparisons with ints
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ApproxTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( 1 == Approx( 1 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1 == Approx( 1.0 )
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( 0 == Approx( 0 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  0 == Approx( 0.0 )
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Approximate comparisons with mixed numeric types
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ApproxTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( 1.0f == Approx( 1 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1.0f == Approx( 1.0 )
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( 0 == Approx( dZero) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  0 == Approx( 0.0 )
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( 0 == Approx( dSmall ).epsilon( 0.001 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  0 == Approx( 0.00001 )
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( 1.234f == Approx( dMedium ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1.234f == Approx( 1.234 )
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( dMedium == Approx( 1.234f ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1.234 == Approx( 1.2339999676 )
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Use a custom approx
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ApproxTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( d == approx( 1.23 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1.23 == Approx( 1.23 )
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( d == approx( 1.22 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1.23 == Approx( 1.22 )
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( d == approx( 1.24 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1.23 == Approx( 1.24 )
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( d != approx( 1.25 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1.23 != Approx( 1.25 )
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( approx( d ) == 1.23 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  Approx( 1.23 ) == 1.23
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( approx( d ) == 1.22 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  Approx( 1.23 ) == 1.22
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( approx( d ) == 1.24 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  Approx( 1.23 ) == 1.24
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( approx( d ) != 1.25 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  Approx( 1.23 ) != 1.25
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Approximate PI
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ApproxTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( divide( 22, 7 ) == Approx( 3.141 ).epsilon( 0.001 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  3.1428571429 == Approx( 3.141 )
 | 
			
		||||
 | 
			
		||||
ApproxTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( divide( 22, 7 ) != Approx( 3.141 ).epsilon( 0.0001 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  3.1428571429 != Approx( 3.141 )
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
A METHOD_AS_TEST_CASE based test run that succeeds
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ClassTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ClassTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( s == "hello" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "hello" == "hello"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
A METHOD_AS_TEST_CASE based test run that fails
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ClassTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ClassTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE( s == "world" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "hello" == "world"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
A TEST_CASE_METHOD based test run that succeeds
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ClassTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ClassTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( m_a == 1 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1 == 1
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
A TEST_CASE_METHOD based test run that fails
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ClassTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ClassTests.cpp:<line number>: FAILED:
 | 
			
		||||
  REQUIRE( m_a == 2 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1 == 2
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Equality checks that should succeed
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ConditionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.int_seven == 7 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 == 7
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.float_nine_point_one == Approx( 9.1f ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  9.1f == Approx( 9.1000003815 )
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.double_pi == Approx( 3.1415926535 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  3.1415926535 == Approx( 3.1415926535 )
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.str_hello == "hello" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "hello" == "hello"
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( "hello" == data.str_hello )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "hello" == "hello"
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.str_hello.size() == 5 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  5 == 5
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( x == Approx( 1.3 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  1.3 == Approx( 1.3 )
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Equality checks that should fail
 | 
			
		||||
'Not' checks that should fail
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ConditionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( data.int_seven == 6 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 == 6
 | 
			
		||||
  CHECK( false != false )
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( data.int_seven == 8 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 == 8
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Inequality checks that should succeed
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ConditionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.int_seven != 6 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 != 6
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.int_seven != 8 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 != 8
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.float_nine_point_one != Approx( 9.11f ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  9.1f != Approx( 9.1099996567 )
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.float_nine_point_one != Approx( 9.0f ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  9.1f != Approx( 9.0 )
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.float_nine_point_one != Approx( 1 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  9.1f != Approx( 1.0 )
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.float_nine_point_one != Approx( 0 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  9.1f != Approx( 0.0 )
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.double_pi != Approx( 3.1415 ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  3.1415926535 != Approx( 3.1415 )
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.str_hello != "goodbye" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "hello" != "goodbye"
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.str_hello != "hell" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "hello" != "hell"
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.str_hello != "hello1" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "hello" != "hello1"
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.str_hello.size() != 6 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  5 != 6
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Inequality checks that should fail
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ConditionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
  CHECK( true != true )
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( data.int_seven != 7 )
 | 
			
		||||
  CHECK( !true )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 != 7
 | 
			
		||||
  false
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( data.float_nine_point_one != Approx( 9.1f ) )
 | 
			
		||||
with expansion:
 | 
			
		||||
  9.1f != Approx( 9.1000003815 )
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Ordering comparison checks that should succeed
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ConditionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.int_seven < 8 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 < 8
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.int_seven > 6 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 > 6
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.int_seven > 0 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 > 0
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.int_seven > -1 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 > -1
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.int_seven >= 7 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 >= 7
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.int_seven >= 6 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 >= 6
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.int_seven <= 7 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 <= 7
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.int_seven <= 8 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 <= 8
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.float_nine_point_one > 9 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  9.1f > 9
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.float_nine_point_one < 10 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  9.1f < 10
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.float_nine_point_one < 9.2 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  9.1f < 9.2
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.str_hello <= "hello" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "hello" <= "hello"
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.str_hello >= "hello" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "hello" >= "hello"
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.str_hello < "hellp" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "hello" < "hellp"
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.str_hello < "zebra" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "hello" < "zebra"
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.str_hello > "hellm" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "hello" > "hellm"
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>:
 | 
			
		||||
PASSED:
 | 
			
		||||
  REQUIRE( data.str_hello > "a" )
 | 
			
		||||
with expansion:
 | 
			
		||||
  "hello" > "a"
 | 
			
		||||
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
Ordering comparison checks that should fail
 | 
			
		||||
-------------------------------------------------------------------------------
 | 
			
		||||
ConditionTests.cpp:<line number>
 | 
			
		||||
...............................................................................
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( data.int_seven > 7 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 > 7
 | 
			
		||||
 | 
			
		||||
ConditionTests.cpp:<line number>: FAILED:
 | 
			
		||||
  CHECK( data.int_seven < 7 )
 | 
			
		||||
with expansion:
 | 
			
		||||
  7 < 7
 | 
			
		||||
  CHECK_FALSE( true )
 | 
			
		||||
 | 
			
		||||
===============================================================================
 | 
			
		||||
test cases: 21 | 16 passed | 3 failed | 2 failed as expected
 | 
			
		||||
assertions: 81 | 73 passed | 4 failed | 4 failed as expected
 | 
			
		||||
test cases: 2 | 1 passed | 1 failed
 | 
			
		||||
assertions: 5 | 1 passed | 4 failed
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -22,6 +22,7 @@ if len(sys.argv) == 2:
 | 
			
		||||
	cmdPath = sys.argv[1]
 | 
			
		||||
else:
 | 
			
		||||
	cmdPath = os.path.join( catchPath, 'projects/XCode/CatchSelfTest/DerivedData/CatchSelfTest/Build/Products/Debug/CatchSelfTest' )
 | 
			
		||||
#	cmdPath = os.path.join( catchPath, 'projects/CMake/cmake-build-debug/SelfTest' )
 | 
			
		||||
 | 
			
		||||
overallResult = 0
 | 
			
		||||
 | 
			
		||||
@@ -100,15 +101,15 @@ def approve( baseName, args ):
 | 
			
		||||
			overallResult = 1
 | 
			
		||||
 | 
			
		||||
# Standard console reporter
 | 
			
		||||
approve( "console.std", ["~_"] )
 | 
			
		||||
approve( "console.std", ["~_", "--order", "lex"] )
 | 
			
		||||
# console reporter, include passes, warn about No Assertions
 | 
			
		||||
approve( "console.sw", ["~_", "-s", "-w", "NoAssertions"] )
 | 
			
		||||
approve( "console.sw", ["~_", "-s", "-w", "NoAssertions", "--order", "lex"] )
 | 
			
		||||
# console reporter, include passes, warn about No Assertions, limit failures to first 4
 | 
			
		||||
approve( "console.swa4", ["~_", "-s", "-w", "NoAssertions", "-x", "4"] )
 | 
			
		||||
approve( "console.swa4", ["~_", "-s", "-w", "NoAssertions", "-x", "4", "--order", "lex"] )
 | 
			
		||||
# junit reporter, include passes, warn about No Assertions
 | 
			
		||||
approve( "junit.sw", ["~_", "-s", "-w", "NoAssertions", "-r", "junit"] )
 | 
			
		||||
approve( "junit.sw", ["~_", "-s", "-w", "NoAssertions", "-r", "junit", "--order", "lex"] )
 | 
			
		||||
# xml reporter, include passes, warn about No Assertions
 | 
			
		||||
approve( "xml.sw", ["~_", "-s", "-w", "NoAssertions", "-r", "xml"] )
 | 
			
		||||
approve( "xml.sw", ["~_", "-s", "-w", "NoAssertions", "-r", "xml", "--order", "lex"] )
 | 
			
		||||
 | 
			
		||||
if overallResult != 0:
 | 
			
		||||
	print( "run approve.py to approve new baselines" )
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user