mirror of https://github.com/procxx/kepka.git
				
				
				
			
		
			
				
	
	
		
			7993 lines
		
	
	
		
			221 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			7993 lines
		
	
	
		
			221 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| 
 | |
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | |
| <exe-name> is a <version> host application.
 | |
| Run with -? for options
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| # A test name that starts with a #
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| with message:
 | |
|   yay
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| #1005: Comparing pointer to int and long (NULL can be either on various
 | |
|        systems)
 | |
| -------------------------------------------------------------------------------
 | |
| Decomposition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Decomposition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( fptr == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| Decomposition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( fptr == 0l )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| #1027
 | |
| -------------------------------------------------------------------------------
 | |
| Compilation.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Compilation.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( y.v == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| Compilation.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 0 == y.v )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| #748 - captures with unexpected exceptions
 | |
|   outside assertions
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
| due to unexpected exception with messages:
 | |
|   answer := 42
 | |
|   expected exception
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| #748 - captures with unexpected exceptions
 | |
|   inside REQUIRE_NOTHROW
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE_NOTHROW( thisThrows() )
 | |
| due to unexpected exception with messages:
 | |
|   answer := 42
 | |
|   expected exception
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| #748 - captures with unexpected exceptions
 | |
|   inside REQUIRE_THROWS
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS( thisThrows() )
 | |
| with message:
 | |
|   answer := 42
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| #809
 | |
| -------------------------------------------------------------------------------
 | |
| Compilation.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Compilation.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 42 == f )
 | |
| with expansion:
 | |
|   42 == {?}
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| #833
 | |
| -------------------------------------------------------------------------------
 | |
| Compilation.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Compilation.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( a == t )
 | |
| with expansion:
 | |
|   3 == 3
 | |
| 
 | |
| Compilation.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( a == t )
 | |
| with expansion:
 | |
|   3 == 3
 | |
| 
 | |
| Compilation.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS( throws_int(true) )
 | |
| 
 | |
| Compilation.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THROWS_AS( throws_int(true), int )
 | |
| 
 | |
| Compilation.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_NOTHROW( throws_int(false) )
 | |
| 
 | |
| Compilation.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( "aaa", Catch::EndsWith("aaa") )
 | |
| with expansion:
 | |
|   "aaa" ends with: "aaa"
 | |
| 
 | |
| Compilation.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( templated_tests<int>(3) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| #835 -- errno should not be touched by Catch
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( f() == 0 )
 | |
| with expansion:
 | |
|   1 == 0
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( errno == 1 )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| #872
 | |
| -------------------------------------------------------------------------------
 | |
| Compilation.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Compilation.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( x == 4 )
 | |
| with expansion:
 | |
|   {?} == 4
 | |
| with message:
 | |
|   dummy := 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| #961 -- Dynamically created sections should all be reported
 | |
|   Looped section 0
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| with message:
 | |
|   Everything is OK
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| #961 -- Dynamically created sections should all be reported
 | |
|   Looped section 1
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| with message:
 | |
|   Everything is OK
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| #961 -- Dynamically created sections should all be reported
 | |
|   Looped section 2
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| with message:
 | |
|   Everything is OK
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| #961 -- Dynamically created sections should all be reported
 | |
|   Looped section 3
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| with message:
 | |
|   Everything is OK
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| #961 -- Dynamically created sections should all be reported
 | |
|   Looped section 4
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| with message:
 | |
|   Everything is OK
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| 'Not' checks that should fail
 | |
| -------------------------------------------------------------------------------
 | |
| Condition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( false != false )
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( true != true )
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( !true )
 | |
| with expansion:
 | |
|   false
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_FALSE( true )
 | |
| with expansion:
 | |
|   !true
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( !trueValue )
 | |
| with expansion:
 | |
|   false
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_FALSE( trueValue )
 | |
| with expansion:
 | |
|   !true
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( !(1 == 1) )
 | |
| with expansion:
 | |
|   false
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_FALSE( 1 == 1 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| 'Not' checks that should succeed
 | |
| -------------------------------------------------------------------------------
 | |
| Condition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( false == false )
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( true == true )
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( !false )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_FALSE( false )
 | |
| with expansion:
 | |
|   !false
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( !falseValue )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_FALSE( falseValue )
 | |
| with expansion:
 | |
|   !false
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( !(1 == 2) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_FALSE( 1 == 2 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| (unimplemented) static bools can be evaluated
 | |
|   compare to true
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( is_true<true>::value == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( true == is_true<true>::value )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| (unimplemented) static bools can be evaluated
 | |
|   compare to false
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( is_true<false>::value == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( false == is_true<false>::value )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| (unimplemented) static bools can be evaluated
 | |
|   negation
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( !is_true<false>::value )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| (unimplemented) static bools can be evaluated
 | |
|   double negation
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( !!is_true<true>::value )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| (unimplemented) static bools can be evaluated
 | |
|   direct
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( is_true<true>::value )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_FALSE( is_true<false>::value )
 | |
| with expansion:
 | |
|   !false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| A METHOD_AS_TEST_CASE based test run that fails
 | |
| -------------------------------------------------------------------------------
 | |
| Class.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Class.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE( s == "world" )
 | |
| with expansion:
 | |
|   "hello" == "world"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| A METHOD_AS_TEST_CASE based test run that succeeds
 | |
| -------------------------------------------------------------------------------
 | |
| Class.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Class.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s == "hello" )
 | |
| with expansion:
 | |
|   "hello" == "hello"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| A TEST_CASE_METHOD based test run that fails
 | |
| -------------------------------------------------------------------------------
 | |
| Class.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Class.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE( m_a == 2 )
 | |
| with expansion:
 | |
|   1 == 2
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| A TEST_CASE_METHOD based test run that succeeds
 | |
| -------------------------------------------------------------------------------
 | |
| Class.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Class.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( m_a == 1 )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| A couple of nested sections followed by a failure
 | |
|   Outer
 | |
|   Inner
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| with message:
 | |
|   that's not flying - that's failing in style
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| A couple of nested sections followed by a failure
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
| explicitly with message:
 | |
|   to infinity and beyond
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| A failing expression with a non streamable type is still captured
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( &o1 == &o2 )
 | |
| with expansion:
 | |
|   0x<hex digits> == 0x<hex digits>
 | |
| 
 | |
| Tricky.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( o1 == o2 )
 | |
| with expansion:
 | |
|   {?} == {?}
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Absolute margin
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 104.0 != Approx(100.0) )
 | |
| with expansion:
 | |
|   104.0 != Approx( 100.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 104.0 == Approx(100.0).margin(5) )
 | |
| with expansion:
 | |
|   104.0 == Approx( 100.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 104.0 == Approx(100.0).margin(4) )
 | |
| with expansion:
 | |
|   104.0 == Approx( 100.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 104.0 != Approx(100.0).margin(3) )
 | |
| with expansion:
 | |
|   104.0 != Approx( 100.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 100.3 != Approx(100.0) )
 | |
| with expansion:
 | |
|   100.3 != Approx( 100.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 100.3 == Approx(100.0).margin(0.5) )
 | |
| with expansion:
 | |
|   100.3 == Approx( 100.0 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| An expression with side-effects should only be evaluated once
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( i++ == 7 )
 | |
| with expansion:
 | |
|   7 == 7
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( i++ == 8 )
 | |
| with expansion:
 | |
|   8 == 8
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| An unchecked exception reports the line of the last assertion
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( 1 == 1 )
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
|   {Unknown expression after the reported line}
 | |
| due to unexpected exception with message:
 | |
|   unexpected exception
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Anonymous test case 1
 | |
| -------------------------------------------------------------------------------
 | |
| VariadicMacros.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| VariadicMacros.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| with message:
 | |
|   anonymous test case
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Approx setters validate their arguments
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_NOTHROW( Approx(0).margin(0) )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_NOTHROW( Approx(0).margin(1234656) )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS_AS( Approx(0).margin(-2), std::domain_error )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_NOTHROW( Approx(0).epsilon(0) )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_NOTHROW( Approx(0).epsilon(1) )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS_AS( Approx(0).epsilon(-0.001), std::domain_error )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS_AS( Approx(0).epsilon(1.0001), std::domain_error )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Approx with exactly-representable margin
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( 0.25f == Approx(0.0f).margin(0.25f) )
 | |
| with expansion:
 | |
|   0.25f == Approx( 0.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( 0.0f == Approx(0.25f).margin(0.25f) )
 | |
| with expansion:
 | |
|   0.0f == Approx( 0.25 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( 0.5f == Approx(0.25f).margin(0.25f) )
 | |
| with expansion:
 | |
|   0.5f == Approx( 0.25 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( 245.0f == Approx(245.25f).margin(0.25f) )
 | |
| with expansion:
 | |
|   245.0f == Approx( 245.25 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( 245.5f == Approx(245.25f).margin(0.25f) )
 | |
| with expansion:
 | |
|   245.5f == Approx( 245.25 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Approximate PI
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( divide( 22, 7 ) == Approx( 3.141 ).epsilon( 0.001 ) )
 | |
| with expansion:
 | |
|   3.1428571429 == Approx( 3.141 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( divide( 22, 7 ) != Approx( 3.141 ).epsilon( 0.0001 ) )
 | |
| with expansion:
 | |
|   3.1428571429 != Approx( 3.141 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Approximate comparisons with different epsilons
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( d != Approx( 1.231 ) )
 | |
| with expansion:
 | |
|   1.23 != Approx( 1.231 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( d == Approx( 1.231 ).epsilon( 0.1 ) )
 | |
| with expansion:
 | |
|   1.23 == Approx( 1.231 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Approximate comparisons with floats
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 1.23f == Approx( 1.23f ) )
 | |
| with expansion:
 | |
|   1.23f == Approx( 1.2300000191 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 0.0f == Approx( 0.0f ) )
 | |
| with expansion:
 | |
|   0.0f == Approx( 0.0 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Approximate comparisons with ints
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 1 == Approx( 1 ) )
 | |
| with expansion:
 | |
|   1 == Approx( 1.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 0 == Approx( 0 ) )
 | |
| with expansion:
 | |
|   0 == Approx( 0.0 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Approximate comparisons with mixed numeric types
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 1.0f == Approx( 1 ) )
 | |
| with expansion:
 | |
|   1.0f == Approx( 1.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 0 == Approx( dZero) )
 | |
| with expansion:
 | |
|   0 == Approx( 0.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 0 == Approx( dSmall ).margin( 0.001 ) )
 | |
| with expansion:
 | |
|   0 == Approx( 0.00001 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 1.234f == Approx( dMedium ) )
 | |
| with expansion:
 | |
|   1.234f == Approx( 1.234 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( dMedium == Approx( 1.234f ) )
 | |
| with expansion:
 | |
|   1.234 == Approx( 1.2339999676 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Assertions then sections
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Catch::alwaysTrue() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Assertions then sections
 | |
|   A section
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Catch::alwaysTrue() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Assertions then sections
 | |
|   A section
 | |
|   Another section
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Catch::alwaysTrue() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Assertions then sections
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Catch::alwaysTrue() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Assertions then sections
 | |
|   A section
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Catch::alwaysTrue() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Assertions then sections
 | |
|   A section
 | |
|   Another other section
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Catch::alwaysTrue() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Assorted miscellaneous tests
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( INFINITY == Approx(INFINITY) )
 | |
| with expansion:
 | |
|   inff == Approx( inf )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( NAN != Approx(NAN) )
 | |
| with expansion:
 | |
|   nanf != Approx( nan )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_FALSE( NAN == Approx(NAN) )
 | |
| with expansion:
 | |
|   !(nanf == Approx( nan ))
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Bitfields can be captured (#1027)
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( y.v == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 0 == y.v )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Capture and info messages
 | |
|   Capture should stringify like assertions
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringGeneral.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( true )
 | |
| with message:
 | |
|   i := 2
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Capture and info messages
 | |
|   Info should NOT stringify the way assertions do
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringGeneral.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( true )
 | |
| with message:
 | |
|   3
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Character pretty printing
 | |
|   Specifically escaped
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringGeneral.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( tab == '\t' )
 | |
| with expansion:
 | |
|   '\t' == '\t'
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( newline == '\n' )
 | |
| with expansion:
 | |
|   '\n' == '\n'
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( carr_return == '\r' )
 | |
| with expansion:
 | |
|   '\r' == '\r'
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( form_feed == '\f' )
 | |
| with expansion:
 | |
|   '\f' == '\f'
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Character pretty printing
 | |
|   General chars
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringGeneral.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( space == ' ' )
 | |
| with expansion:
 | |
|   ' ' == ' '
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( c == chars[i] )
 | |
| with expansion:
 | |
|   'a' == 'a'
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( c == chars[i] )
 | |
| with expansion:
 | |
|   'z' == 'z'
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( c == chars[i] )
 | |
| with expansion:
 | |
|   'A' == 'A'
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( c == chars[i] )
 | |
| with expansion:
 | |
|   'Z' == 'Z'
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Character pretty printing
 | |
|   Low ASCII
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringGeneral.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( null_terminator == '\0' )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( c == i )
 | |
| with expansion:
 | |
|   2 == 2
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( c == i )
 | |
| with expansion:
 | |
|   3 == 3
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( c == i )
 | |
| with expansion:
 | |
|   4 == 4
 | |
| 
 | |
| ToStringGeneral.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( c == i )
 | |
| with expansion:
 | |
|   5 == 5
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Commas in various macros are allowed
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS( std::vector<constructor_throws>{constructor_throws{}, constructor_throws{}} )
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THROWS( std::vector<constructor_throws>{constructor_throws{}, constructor_throws{}} )
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_NOTHROW( std::vector<int>{1, 2, 3} == std::vector<int>{1, 2, 3} )
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_NOTHROW( std::vector<int>{1, 2, 3} == std::vector<int>{1, 2, 3} )
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( std::vector<int>{1, 2} == std::vector<int>{1, 2} )
 | |
| with expansion:
 | |
|   { 1, 2 } == { 1, 2 }
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( std::vector<int>{1, 2} == std::vector<int>{1, 2} )
 | |
| with expansion:
 | |
|   { 1, 2 } == { 1, 2 }
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_FALSE( std::vector<int>{1, 2} == std::vector<int>{1, 2, 3} )
 | |
| with expansion:
 | |
|   !({ 1, 2 } == { 1, 2, 3 })
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_FALSE( std::vector<int>{1, 2} == std::vector<int>{1, 2, 3} )
 | |
| with expansion:
 | |
|   !({ 1, 2 } == { 1, 2, 3 })
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_NOFAIL( std::vector<int>{1, 2} == std::vector<int>{1, 2} )
 | |
| with expansion:
 | |
|   { 1, 2 } == { 1, 2 }
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECKED_IF( std::vector<int>{1, 2} == std::vector<int>{1, 2} )
 | |
| with expansion:
 | |
|   { 1, 2 } == { 1, 2 }
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( true )
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECKED_ELSE( std::vector<int>{1, 2} == std::vector<int>{1, 2} )
 | |
| with expansion:
 | |
|   { 1, 2 } == { 1, 2 }
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Comparing function pointers
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( a )
 | |
| with expansion:
 | |
|   0x<hex digits>
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( a == &foo )
 | |
| with expansion:
 | |
|   0x<hex digits> == 0x<hex digits>
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Comparison with explicitly convertible types
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( td == Approx(10.0) )
 | |
| with expansion:
 | |
|   StrongDoubleTypedef(10) == Approx( 10.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Approx(10.0) == td )
 | |
| with expansion:
 | |
|   Approx( 10.0 ) == StrongDoubleTypedef(10)
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( td != Approx(11.0) )
 | |
| with expansion:
 | |
|   StrongDoubleTypedef(10) != Approx( 11.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Approx(11.0) != td )
 | |
| with expansion:
 | |
|   Approx( 11.0 ) != StrongDoubleTypedef(10)
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( td <= Approx(10.0) )
 | |
| with expansion:
 | |
|   StrongDoubleTypedef(10) <= Approx( 10.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( td <= Approx(11.0) )
 | |
| with expansion:
 | |
|   StrongDoubleTypedef(10) <= Approx( 11.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Approx(10.0) <= td )
 | |
| with expansion:
 | |
|   Approx( 10.0 ) <= StrongDoubleTypedef(10)
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Approx(9.0) <= td )
 | |
| with expansion:
 | |
|   Approx( 9.0 ) <= StrongDoubleTypedef(10)
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( td >= Approx(9.0) )
 | |
| with expansion:
 | |
|   StrongDoubleTypedef(10) >= Approx( 9.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( td >= Approx(10.0) )
 | |
| with expansion:
 | |
|   StrongDoubleTypedef(10) >= Approx( 10.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Approx(10.0) >= td )
 | |
| with expansion:
 | |
|   Approx( 10.0 ) >= StrongDoubleTypedef(10)
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Approx(11.0) >= td )
 | |
| with expansion:
 | |
|   Approx( 11.0 ) >= StrongDoubleTypedef(10)
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Comparisons between ints where one side is computed
 | |
| -------------------------------------------------------------------------------
 | |
| Condition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( 54 == 6*9 )
 | |
| with expansion:
 | |
|   54 == 54
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Comparisons between unsigned ints and negative signed ints match c++ standard
 | |
| behaviour
 | |
| -------------------------------------------------------------------------------
 | |
| Condition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( ( -1 > 2u ) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( -1 > 2u )
 | |
| with expansion:
 | |
|   -1 > 2
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( ( 2u < -1 ) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( 2u < -1 )
 | |
| with expansion:
 | |
|   2 < -1
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( ( minInt > 2u ) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( minInt > 2u )
 | |
| with expansion:
 | |
|   -2147483648 > 2
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Comparisons with int literals don't warn when mixing signed/ unsigned
 | |
| -------------------------------------------------------------------------------
 | |
| Condition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( i == 1 )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ui == 2 )
 | |
| with expansion:
 | |
|   2 == 2
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( l == 3 )
 | |
| with expansion:
 | |
|   3 == 3
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ul == 4 )
 | |
| with expansion:
 | |
|   4 == 4
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( c == 5 )
 | |
| with expansion:
 | |
|   5 == 5
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( uc == 6 )
 | |
| with expansion:
 | |
|   6 == 6
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 1 == i )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 2 == ui )
 | |
| with expansion:
 | |
|   2 == 2
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 3 == l )
 | |
| with expansion:
 | |
|   3 == 3
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 4 == ul )
 | |
| with expansion:
 | |
|   4 == 4
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 5 == c )
 | |
| with expansion:
 | |
|   5 == 5
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 6 == uc )
 | |
| with expansion:
 | |
|   6 == 6
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( (std::numeric_limits<uint32_t>::max)() > ul )
 | |
| with expansion:
 | |
|   4294967295 (0x<hex digits>) > 4
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Contains string matcher
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( testStringForMatching(), Contains("not there", Catch::CaseSensitive::No) )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" contains: "not there" (case
 | |
|   insensitive)
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( testStringForMatching(), Contains("STRING") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" contains: "STRING"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Custom exceptions can be translated when testing for nothrow
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.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
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE_THROWS_AS( throwCustom(), std::exception )
 | |
| due to unexpected exception with message:
 | |
|   custom exception - not std
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Custom std-exceptions can be custom translated
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
| due to unexpected exception with message:
 | |
|   custom std exception
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Default scale is invisible to comparison
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 101.000001 != Approx(100).epsilon(0.01) )
 | |
| with expansion:
 | |
|   101.000001 != Approx( 100.0 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( std::pow(10, -5) != Approx(std::pow(10, -7)) )
 | |
| with expansion:
 | |
|   0.00001 != Approx( 0.0000001 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| EndsWith string matcher
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( testStringForMatching(), EndsWith("Substring") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" ends with: "Substring"
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( testStringForMatching(), EndsWith("this", Catch::CaseSensitive::No) )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" ends with: "this" (case
 | |
|   insensitive)
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Epsilon only applies to Approx's value
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 101.01 != Approx(100).epsilon(0.01) )
 | |
| with expansion:
 | |
|   101.01 != Approx( 100.0 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Equality checks that should fail
 | |
| -------------------------------------------------------------------------------
 | |
| Condition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.int_seven == 6 )
 | |
| with expansion:
 | |
|   7 == 6
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.int_seven == 8 )
 | |
| with expansion:
 | |
|   7 == 8
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.int_seven == 0 )
 | |
| with expansion:
 | |
|   7 == 0
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.float_nine_point_one == Approx( 9.11f ) )
 | |
| with expansion:
 | |
|   9.1f == Approx( 9.1099996567 )
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.float_nine_point_one == Approx( 9.0f ) )
 | |
| with expansion:
 | |
|   9.1f == Approx( 9.0 )
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.float_nine_point_one == Approx( 1 ) )
 | |
| with expansion:
 | |
|   9.1f == Approx( 1.0 )
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.float_nine_point_one == Approx( 0 ) )
 | |
| with expansion:
 | |
|   9.1f == Approx( 0.0 )
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.double_pi == Approx( 3.1415 ) )
 | |
| with expansion:
 | |
|   3.1415926535 == Approx( 3.1415 )
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.str_hello == "goodbye" )
 | |
| with expansion:
 | |
|   "hello" == "goodbye"
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.str_hello == "hell" )
 | |
| with expansion:
 | |
|   "hello" == "hell"
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.str_hello == "hello1" )
 | |
| with expansion:
 | |
|   "hello" == "hello1"
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.str_hello.size() == 6 )
 | |
| with expansion:
 | |
|   5 == 6
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( x == Approx( 1.301 ) )
 | |
| with expansion:
 | |
|   1.3 == Approx( 1.301 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Equality checks that should succeed
 | |
| -------------------------------------------------------------------------------
 | |
| Condition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.int_seven == 7 )
 | |
| with expansion:
 | |
|   7 == 7
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.float_nine_point_one == Approx( 9.1f ) )
 | |
| with expansion:
 | |
|   9.1f == Approx( 9.1000003815 )
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.double_pi == Approx( 3.1415926535 ) )
 | |
| with expansion:
 | |
|   3.1415926535 == Approx( 3.1415926535 )
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.str_hello == "hello" )
 | |
| with expansion:
 | |
|   "hello" == "hello"
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( "hello" == data.str_hello )
 | |
| with expansion:
 | |
|   "hello" == "hello"
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.str_hello.size() == 5 )
 | |
| with expansion:
 | |
|   5 == 5
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( x == Approx( 1.3 ) )
 | |
| with expansion:
 | |
|   1.3 == Approx( 1.3 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Equals
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( testStringForMatching(), Equals("this string contains 'abc' as a substring") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" equals: "this string contains
 | |
|   'abc' as a substring"
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( testStringForMatching(), Equals("this string contains 'ABC' as a substring", Catch::CaseSensitive::No) )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" equals: "this string contains
 | |
|   'abc' as a substring" (case insensitive)
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Equals string matcher
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( testStringForMatching(), Equals("this string contains 'ABC' as a substring") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" equals: "this string contains
 | |
|   'ABC' as a substring"
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( testStringForMatching(), Equals("something else", Catch::CaseSensitive::No) )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" equals: "something else" (case
 | |
|   insensitive)
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Exception matchers that fail
 | |
|   No exception
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THROWS_MATCHES( doesNotThrow(), SpecialException, ExceptionMatcher{1} )
 | |
| because no exception was thrown where one was expected:
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE_THROWS_MATCHES( doesNotThrow(), SpecialException, ExceptionMatcher{1} )
 | |
| because no exception was thrown where one was expected:
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Exception matchers that fail
 | |
|   Type mismatch
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THROWS_MATCHES( throwsAsInt(1), SpecialException, ExceptionMatcher{1} )
 | |
| due to unexpected exception with message:
 | |
|   Unknown exception
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE_THROWS_MATCHES( throwsAsInt(1), SpecialException, ExceptionMatcher{1} )
 | |
| due to unexpected exception with message:
 | |
|   Unknown exception
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Exception matchers that fail
 | |
|   Contents are wrong
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THROWS_MATCHES( throws(3), SpecialException, ExceptionMatcher{1} )
 | |
| with expansion:
 | |
|   {?} special exception has value of 1
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE_THROWS_MATCHES( throws(4), SpecialException, ExceptionMatcher{1} )
 | |
| with expansion:
 | |
|   {?} special exception has value of 1
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Exception matchers that succeed
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THROWS_MATCHES( throws(1), SpecialException, ExceptionMatcher{1} )
 | |
| with expansion:
 | |
|   {?} special exception has value of 1
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS_MATCHES( throws(2), SpecialException, ExceptionMatcher{2} )
 | |
| with expansion:
 | |
|   {?} special exception has value of 2
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Exception messages can be tested for
 | |
|   exact match
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS_WITH( thisThrows(), "expected exception" )
 | |
| with expansion:
 | |
|   "expected exception" equals: "expected exception"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Exception messages can be tested for
 | |
|   different case
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS_WITH( thisThrows(), Equals( "expecteD Exception", Catch::CaseSensitive::No ) )
 | |
| with expansion:
 | |
|   "expected exception" equals: "expected exception" (case insensitive)
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Exception messages can be tested for
 | |
|   wildcarded
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS_WITH( thisThrows(), StartsWith( "expected" ) )
 | |
| with expansion:
 | |
|   "expected exception" starts with: "expected"
 | |
| 
 | |
| Exception.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS_WITH( thisThrows(), EndsWith( "exception" ) )
 | |
| with expansion:
 | |
|   "expected exception" ends with: "exception"
 | |
| 
 | |
| Exception.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS_WITH( thisThrows(), Contains( "except" ) )
 | |
| with expansion:
 | |
|   "expected exception" contains: "except"
 | |
| 
 | |
| Exception.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS_WITH( thisThrows(), Contains( "exCept", Catch::CaseSensitive::No ) )
 | |
| with expansion:
 | |
|   "expected exception" contains: "except" (case insensitive)
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Expected exceptions that don't throw or unexpected exceptions fail the test
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THROWS_AS( thisThrows(), std::string )
 | |
| due to unexpected exception with message:
 | |
|   expected exception
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THROWS_AS( thisDoesntThrow(), std::domain_error )
 | |
| because no exception was thrown where one was expected:
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_NOTHROW( thisThrows() )
 | |
| due to unexpected exception with message:
 | |
|   expected exception
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| FAIL aborts the test
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Message.tests.cpp:<line number>: FAILED:
 | |
| explicitly with message:
 | |
|   This is a failure
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| FAIL does not require an argument
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Message.tests.cpp:<line number>: FAILED:
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| FAIL_CHECK does not abort the test
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Message.tests.cpp:<line number>: FAILED:
 | |
| explicitly with message:
 | |
|   This is a failure
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| warning:
 | |
|   This message appears in the output
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Factorials are computed
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Factorial(0) == 1 )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Factorial(1) == 1 )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Factorial(2) == 2 )
 | |
| with expansion:
 | |
|   2 == 2
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Factorial(3) == 6 )
 | |
| with expansion:
 | |
|   6 == 6
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Factorial(10) == 3628800 )
 | |
| with expansion:
 | |
|   3628800 (0x<hex digits>) == 3628800 (0x<hex digits>)
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Floating point matchers: double
 | |
|   Margin
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 1., WithinAbs(1., 0) )
 | |
| with expansion:
 | |
|   1.0 is within 0.0 of 1.0
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 0., WithinAbs(1., 1) )
 | |
| with expansion:
 | |
|   0.0 is within 1.0 of 1.0
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 0., !WithinAbs(1., 0.99) )
 | |
| with expansion:
 | |
|   0.0 not is within 0.99 of 1.0
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 0., !WithinAbs(1., 0.99) )
 | |
| with expansion:
 | |
|   0.0 not is within 0.99 of 1.0
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( NAN, !WithinAbs(NAN, 0) )
 | |
| with expansion:
 | |
|   nanf not is within 0.0 of nan
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Floating point matchers: double
 | |
|   ULPs
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 1., WithinULP(1., 0) )
 | |
| with expansion:
 | |
|   1.0 is within 0 ULPs of 1.0
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( std::nextafter(1., 2.), WithinULP(1., 1) )
 | |
| with expansion:
 | |
|   1.0 is within 1 ULPs of 1.0
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( std::nextafter(1., 0.), WithinULP(1., 1) )
 | |
| with expansion:
 | |
|   1.0 is within 1 ULPs of 1.0
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( std::nextafter(1., 2.), !WithinULP(1., 0) )
 | |
| with expansion:
 | |
|   1.0 not is within 0 ULPs of 1.0
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 1., WithinULP(1., 0) )
 | |
| with expansion:
 | |
|   1.0 is within 0 ULPs of 1.0
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( -0., WithinULP(0., 0) )
 | |
| with expansion:
 | |
|   -0.0 is within 0 ULPs of 0.0
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( NAN, !WithinULP(NAN, 123) )
 | |
| with expansion:
 | |
|   nanf not is within 123 ULPs of nanf
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Floating point matchers: double
 | |
|   Composed
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 1., WithinAbs(1., 0.5) || WithinULP(2., 1) )
 | |
| with expansion:
 | |
|   1.0 ( is within 0.5 of 1.0 or is within 1 ULPs of 2.0 )
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 1., WithinAbs(2., 0.5) || WithinULP(1., 0) )
 | |
| with expansion:
 | |
|   1.0 ( is within 0.5 of 2.0 or is within 0 ULPs of 1.0 )
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( NAN, !(WithinAbs(NAN, 100) || WithinULP(NAN, 123)) )
 | |
| with expansion:
 | |
|   nanf not ( is within 100.0 of nan or is within 123 ULPs of nanf )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Floating point matchers: float
 | |
|   Margin
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 1.f, WithinAbs(1.f, 0) )
 | |
| with expansion:
 | |
|   1.0f is within 0.0 of 1.0
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 0.f, WithinAbs(1.f, 1) )
 | |
| with expansion:
 | |
|   0.0f is within 1.0 of 1.0
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 0.f, !WithinAbs(1.f, 0.99f) )
 | |
| with expansion:
 | |
|   0.0f not is within 0.9900000095 of 1.0
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 0.f, !WithinAbs(1.f, 0.99f) )
 | |
| with expansion:
 | |
|   0.0f not is within 0.9900000095 of 1.0
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 0.f, WithinAbs(-0.f, 0) )
 | |
| with expansion:
 | |
|   0.0f is within 0.0 of -0.0
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( NAN, !WithinAbs(NAN, 0) )
 | |
| with expansion:
 | |
|   nanf not is within 0.0 of nan
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Floating point matchers: float
 | |
|   ULPs
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 1.f, WithinULP(1.f, 0) )
 | |
| with expansion:
 | |
|   1.0f is within 0 ULPs of 1.0f
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( std::nextafter(1.f, 2.f), WithinULP(1.f, 1) )
 | |
| with expansion:
 | |
|   1.0f is within 1 ULPs of 1.0f
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( std::nextafter(1.f, 0.f), WithinULP(1.f, 1) )
 | |
| with expansion:
 | |
|   1.0f is within 1 ULPs of 1.0f
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( std::nextafter(1.f, 2.f), !WithinULP(1.f, 0) )
 | |
| with expansion:
 | |
|   1.0f not is within 0 ULPs of 1.0f
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 1.f, WithinULP(1.f, 0) )
 | |
| with expansion:
 | |
|   1.0f is within 0 ULPs of 1.0f
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( -0.f, WithinULP(0.f, 0) )
 | |
| with expansion:
 | |
|   -0.0f is within 0 ULPs of 0.0f
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( NAN, !WithinULP(NAN, 123) )
 | |
| with expansion:
 | |
|   nanf not is within 123 ULPs of nanf
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Floating point matchers: float
 | |
|   Composed
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 1.f, WithinAbs(1.f, 0.5) || WithinULP(1.f, 1) )
 | |
| with expansion:
 | |
|   1.0f ( is within 0.5 of 1.0 or is within 1 ULPs of 1.0f )
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( 1.f, WithinAbs(2.f, 0.5) || WithinULP(1.f, 0) )
 | |
| with expansion:
 | |
|   1.0f ( is within 0.5 of 2.0 or is within 0 ULPs of 1.0f )
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( NAN, !(WithinAbs(NAN, 100) || WithinULP(NAN, 123)) )
 | |
| with expansion:
 | |
|   nanf not ( is within 100.0 of nan or is within 123 ULPs of nanf )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Greater-than inequalities with different epsilons
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( d >= Approx( 1.22 ) )
 | |
| with expansion:
 | |
|   1.23 >= Approx( 1.22 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( d >= Approx( 1.23 ) )
 | |
| with expansion:
 | |
|   1.23 >= Approx( 1.23 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_FALSE( d >= Approx( 1.24 ) )
 | |
| with expansion:
 | |
|   !(1.23 >= Approx( 1.24 ))
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( d >= Approx( 1.24 ).epsilon(0.1) )
 | |
| with expansion:
 | |
|   1.23 >= Approx( 1.24 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| INFO and WARN do not abort tests
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| warning:
 | |
|   this is a message
 | |
|   this is a warning
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| INFO gets logged on failure
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Message.tests.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
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( a == 2 )
 | |
| with expansion:
 | |
|   2 == 2
 | |
| with message:
 | |
|   this message may be logged later
 | |
| 
 | |
| Message.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( a == 1 )
 | |
| with expansion:
 | |
|   2 == 1
 | |
| with messages:
 | |
|   this message may be logged later
 | |
|   this message should be logged
 | |
| 
 | |
| Message.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( a == 0 )
 | |
| with expansion:
 | |
|   2 == 0
 | |
| with messages:
 | |
|   this message may be logged later
 | |
|   this message should be logged
 | |
|   and this, but later
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( a == 2 )
 | |
| with expansion:
 | |
|   2 == 2
 | |
| with messages:
 | |
|   this message may be logged later
 | |
|   this message should be logged
 | |
|   and this, but later
 | |
|   but not this
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| INFO is reset for each loop
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( i < 10 )
 | |
| with expansion:
 | |
|   0 < 10
 | |
| with messages:
 | |
|   current counter 0
 | |
|   i := 0
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( i < 10 )
 | |
| with expansion:
 | |
|   1 < 10
 | |
| with messages:
 | |
|   current counter 1
 | |
|   i := 1
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( i < 10 )
 | |
| with expansion:
 | |
|   2 < 10
 | |
| with messages:
 | |
|   current counter 2
 | |
|   i := 2
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( i < 10 )
 | |
| with expansion:
 | |
|   3 < 10
 | |
| with messages:
 | |
|   current counter 3
 | |
|   i := 3
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( i < 10 )
 | |
| with expansion:
 | |
|   4 < 10
 | |
| with messages:
 | |
|   current counter 4
 | |
|   i := 4
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( i < 10 )
 | |
| with expansion:
 | |
|   5 < 10
 | |
| with messages:
 | |
|   current counter 5
 | |
|   i := 5
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( i < 10 )
 | |
| with expansion:
 | |
|   6 < 10
 | |
| with messages:
 | |
|   current counter 6
 | |
|   i := 6
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( i < 10 )
 | |
| with expansion:
 | |
|   7 < 10
 | |
| with messages:
 | |
|   current counter 7
 | |
|   i := 7
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( i < 10 )
 | |
| with expansion:
 | |
|   8 < 10
 | |
| with messages:
 | |
|   current counter 8
 | |
|   i := 8
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( i < 10 )
 | |
| with expansion:
 | |
|   9 < 10
 | |
| with messages:
 | |
|   current counter 9
 | |
|   i := 9
 | |
| 
 | |
| Message.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE( i < 10 )
 | |
| with expansion:
 | |
|   10 < 10
 | |
| with messages:
 | |
|   current counter 10
 | |
|   i := 10
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Inequality checks that should fail
 | |
| -------------------------------------------------------------------------------
 | |
| Condition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.int_seven != 7 )
 | |
| with expansion:
 | |
|   7 != 7
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.float_nine_point_one != Approx( 9.1f ) )
 | |
| with expansion:
 | |
|   9.1f != Approx( 9.1000003815 )
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.double_pi != Approx( 3.1415926535 ) )
 | |
| with expansion:
 | |
|   3.1415926535 != Approx( 3.1415926535 )
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.str_hello != "hello" )
 | |
| with expansion:
 | |
|   "hello" != "hello"
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.str_hello.size() != 5 )
 | |
| with expansion:
 | |
|   5 != 5
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Inequality checks that should succeed
 | |
| -------------------------------------------------------------------------------
 | |
| Condition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.int_seven != 6 )
 | |
| with expansion:
 | |
|   7 != 6
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.int_seven != 8 )
 | |
| with expansion:
 | |
|   7 != 8
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.float_nine_point_one != Approx( 9.11f ) )
 | |
| with expansion:
 | |
|   9.1f != Approx( 9.1099996567 )
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.float_nine_point_one != Approx( 9.0f ) )
 | |
| with expansion:
 | |
|   9.1f != Approx( 9.0 )
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.float_nine_point_one != Approx( 1 ) )
 | |
| with expansion:
 | |
|   9.1f != Approx( 1.0 )
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.float_nine_point_one != Approx( 0 ) )
 | |
| with expansion:
 | |
|   9.1f != Approx( 0.0 )
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.double_pi != Approx( 3.1415 ) )
 | |
| with expansion:
 | |
|   3.1415926535 != Approx( 3.1415 )
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.str_hello != "goodbye" )
 | |
| with expansion:
 | |
|   "hello" != "goodbye"
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.str_hello != "hell" )
 | |
| with expansion:
 | |
|   "hello" != "hell"
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.str_hello != "hello1" )
 | |
| with expansion:
 | |
|   "hello" != "hello1"
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.str_hello.size() != 6 )
 | |
| with expansion:
 | |
|   5 != 6
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Less-than inequalities with different epsilons
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( d <= Approx( 1.24 ) )
 | |
| with expansion:
 | |
|   1.23 <= Approx( 1.24 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( d <= Approx( 1.23 ) )
 | |
| with expansion:
 | |
|   1.23 <= Approx( 1.23 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_FALSE( d <= Approx( 1.22 ) )
 | |
| with expansion:
 | |
|   !(1.23 <= Approx( 1.22 ))
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( d <= Approx( 1.22 ).epsilon(0.1) )
 | |
| with expansion:
 | |
|   1.23 <= Approx( 1.22 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| ManuallyRegistered
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| with message:
 | |
|   was called
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers can be (AllOf) composed with the && operator
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( testStringForMatching(), Contains("string") && Contains("abc") && Contains("substring") && Contains("contains") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" ( contains: "string" and
 | |
|   contains: "abc" and contains: "substring" and contains: "contains" )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers can be (AnyOf) composed with the || operator
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( testStringForMatching(), Contains("string") || Contains("different") || Contains("random") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" ( contains: "string" or contains:
 | |
|   "different" or contains: "random" )
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( testStringForMatching2(), Contains("string") || Contains("different") || Contains("random") )
 | |
| with expansion:
 | |
|   "some completely different text that contains one common word" ( contains:
 | |
|   "string" or contains: "different" or contains: "random" )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers can be composed with both && and ||
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( testStringForMatching(), (Contains("string") || Contains("different")) && Contains("substring") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" ( ( contains: "string" or
 | |
|   contains: "different" ) and contains: "substring" )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers can be composed with both && and || - failing
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.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
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( testStringForMatching(), !Contains("different") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" not contains: "different"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers can be negated (Not) with the ! operator - failing
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.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
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS_WITH( thisThrows(), "expected exception" )
 | |
| with expansion:
 | |
|   "expected exception" equals: "expected exception"
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE_THROWS_WITH( thisThrows(), "should fail" )
 | |
| with expansion:
 | |
|   "expected exception" equals: "should fail"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Nice descriptive name
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| warning:
 | |
|   This one ran
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Non-std exceptions can be translated
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
| due to unexpected exception with message:
 | |
|   custom exception
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Objects that evaluated in boolean contexts can be checked
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( True )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( !False )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_FALSE( False )
 | |
| with expansion:
 | |
|   !{?}
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Ordering comparison checks that should fail
 | |
| -------------------------------------------------------------------------------
 | |
| Condition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.int_seven > 7 )
 | |
| with expansion:
 | |
|   7 > 7
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.int_seven < 7 )
 | |
| with expansion:
 | |
|   7 < 7
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.int_seven > 8 )
 | |
| with expansion:
 | |
|   7 > 8
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.int_seven < 6 )
 | |
| with expansion:
 | |
|   7 < 6
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.int_seven < 0 )
 | |
| with expansion:
 | |
|   7 < 0
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.int_seven < -1 )
 | |
| with expansion:
 | |
|   7 < -1
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.int_seven >= 8 )
 | |
| with expansion:
 | |
|   7 >= 8
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.int_seven <= 6 )
 | |
| with expansion:
 | |
|   7 <= 6
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.float_nine_point_one < 9 )
 | |
| with expansion:
 | |
|   9.1f < 9
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.float_nine_point_one > 10 )
 | |
| with expansion:
 | |
|   9.1f > 10
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.float_nine_point_one > 9.2 )
 | |
| with expansion:
 | |
|   9.1f > 9.2
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.str_hello > "hello" )
 | |
| with expansion:
 | |
|   "hello" > "hello"
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.str_hello < "hello" )
 | |
| with expansion:
 | |
|   "hello" < "hello"
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.str_hello > "hellp" )
 | |
| with expansion:
 | |
|   "hello" > "hellp"
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.str_hello > "z" )
 | |
| with expansion:
 | |
|   "hello" > "z"
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.str_hello < "hellm" )
 | |
| with expansion:
 | |
|   "hello" < "hellm"
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.str_hello < "a" )
 | |
| with expansion:
 | |
|   "hello" < "a"
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.str_hello >= "z" )
 | |
| with expansion:
 | |
|   "hello" >= "z"
 | |
| 
 | |
| Condition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( data.str_hello <= "a" )
 | |
| with expansion:
 | |
|   "hello" <= "a"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Ordering comparison checks that should succeed
 | |
| -------------------------------------------------------------------------------
 | |
| Condition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.int_seven < 8 )
 | |
| with expansion:
 | |
|   7 < 8
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.int_seven > 6 )
 | |
| with expansion:
 | |
|   7 > 6
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.int_seven > 0 )
 | |
| with expansion:
 | |
|   7 > 0
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.int_seven > -1 )
 | |
| with expansion:
 | |
|   7 > -1
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.int_seven >= 7 )
 | |
| with expansion:
 | |
|   7 >= 7
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.int_seven >= 6 )
 | |
| with expansion:
 | |
|   7 >= 6
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.int_seven <= 7 )
 | |
| with expansion:
 | |
|   7 <= 7
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.int_seven <= 8 )
 | |
| with expansion:
 | |
|   7 <= 8
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.float_nine_point_one > 9 )
 | |
| with expansion:
 | |
|   9.1f > 9
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.float_nine_point_one < 10 )
 | |
| with expansion:
 | |
|   9.1f < 10
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.float_nine_point_one < 9.2 )
 | |
| with expansion:
 | |
|   9.1f < 9.2
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.str_hello <= "hello" )
 | |
| with expansion:
 | |
|   "hello" <= "hello"
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.str_hello >= "hello" )
 | |
| with expansion:
 | |
|   "hello" >= "hello"
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.str_hello < "hellp" )
 | |
| with expansion:
 | |
|   "hello" < "hellp"
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.str_hello < "zebra" )
 | |
| with expansion:
 | |
|   "hello" < "zebra"
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.str_hello > "hellm" )
 | |
| with expansion:
 | |
|   "hello" > "hellm"
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data.str_hello > "a" )
 | |
| with expansion:
 | |
|   "hello" > "a"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Output from all sections is reported
 | |
|   one
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Message.tests.cpp:<line number>: FAILED:
 | |
| explicitly with message:
 | |
|   Message from section one
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Output from all sections is reported
 | |
|   two
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Message.tests.cpp:<line number>: FAILED:
 | |
| explicitly with message:
 | |
|   Message from section two
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Empty test spec should have no filters
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Test spec from empty string should have no filters
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches(tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Test spec from just a comma should have no filters
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Test spec from name should have one filter
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Test spec from quoted name should have one filter
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Test spec from name should have one filter
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Wildcard at the start
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( parseTestSpec( "*a" ).matches( tcA ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Wildcard at the end
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( parseTestSpec( "a*" ).matches( tcA ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Wildcard at both ends
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( parseTestSpec( "*a*" ).matches( tcA ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Redundant wildcard at the start
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Redundant wildcard at the end
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Redundant wildcard at both ends
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Wildcard at both ends, redundant at start
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Just wildcard
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Single tag
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Single tag, two matches
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Two tags
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Two tags, spare separated
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Wildcarded name and tag
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   Single tag exclusion
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   One tag exclusion and one tag inclusion
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   One tag exclusion and one wldcarded name inclusion
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   One tag exclusion, using exclude:, and one wldcarded name inclusion
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   name exclusion
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   wildcarded name exclusion
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   wildcarded name exclusion with tag inclusion
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   wildcarded name exclusion, using exclude:, with tag inclusion
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   two wildcarded names
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   empty tag
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   empty quoted name
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parse test names and tags
 | |
|   quoted string followed by tag exclusion
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.hasFilters() == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcA ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcB ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcC ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( spec.matches( tcD ) == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Parsing a std::pair
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( (std::pair<int, int>( 1, 2 )) == aNicePair )
 | |
| with expansion:
 | |
|   {?} == {?}
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Pointers can be compared to null
 | |
| -------------------------------------------------------------------------------
 | |
| Condition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( p == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( p == pNULL )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( p != 0 )
 | |
| with expansion:
 | |
|   0x<hex digits> != 0
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( cp != 0 )
 | |
| with expansion:
 | |
|   0x<hex digits> != 0
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( cpc != 0 )
 | |
| with expansion:
 | |
|   0x<hex digits> != 0
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( returnsNull() == 0 )
 | |
| with expansion:
 | |
|   {null string} == 0
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( returnsConstNull() == 0 )
 | |
| with expansion:
 | |
|   {null string} == 0
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 0 != p )
 | |
| with expansion:
 | |
|   0 != 0x<hex digits>
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   empty args don't cause a crash
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( result )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( config.processName == "" )
 | |
| with expansion:
 | |
|   "" == ""
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   default - no arguments
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( result )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( config.processName == "test" )
 | |
| with expansion:
 | |
|   "test" == "test"
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( config.shouldDebugBreak == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( config.abortAfter == -1 )
 | |
| with expansion:
 | |
|   -1 == -1
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( config.noThrow == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( config.reporterNames.empty() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   test lists
 | |
|   1 test
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( result )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( cfg.testSpec().matches(fakeTestCase("notIncluded")) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( cfg.testSpec().matches(fakeTestCase("test1")) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   test lists
 | |
|   Specify one test case exclusion using exclude:
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( result )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( cfg.testSpec().matches(fakeTestCase("test1")) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( cfg.testSpec().matches(fakeTestCase("alwaysIncluded")) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   test lists
 | |
|   Specify one test case exclusion using ~
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( result )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( cfg.testSpec().matches(fakeTestCase("test1")) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( cfg.testSpec().matches(fakeTestCase("alwaysIncluded")) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   reporter
 | |
|   -r/console
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "-r", "console"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.reporterNames[0] == "console" )
 | |
| with expansion:
 | |
|   "console" == "console"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   reporter
 | |
|   -r/xml
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "-r", "xml"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.reporterNames[0] == "xml" )
 | |
| with expansion:
 | |
|   "xml" == "xml"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   reporter
 | |
|   -r xml and junit
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "-r", "xml", "-r", "junit"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.reporterNames.size() == 2 )
 | |
| with expansion:
 | |
|   2 == 2
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.reporterNames[0] == "xml" )
 | |
| with expansion:
 | |
|   "xml" == "xml"
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.reporterNames[1] == "junit" )
 | |
| with expansion:
 | |
|   "junit" == "junit"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   reporter
 | |
|   --reporter/junit
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "--reporter", "junit"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.reporterNames[0] == "junit" )
 | |
| with expansion:
 | |
|   "junit" == "junit"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   debugger
 | |
|   -b
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "-b"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.shouldDebugBreak == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   debugger
 | |
|   --break
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "--break"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.shouldDebugBreak )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   abort
 | |
|   -a aborts after first failure
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "-a"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.abortAfter == 1 )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   abort
 | |
|   -x 2 aborts after two failures
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "-x", "2"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.abortAfter == 2 )
 | |
| with expansion:
 | |
|   2 == 2
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   abort
 | |
|   -x must be numeric
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( !result )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( result.errorMessage(), Contains("convert") && Contains("oops") )
 | |
| with expansion:
 | |
|   "Unable to convert 'oops' to destination type" ( contains: "convert" and
 | |
|   contains: "oops" )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   nothrow
 | |
|   -e
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "-e"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.noThrow )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   nothrow
 | |
|   --nothrow
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "--nothrow"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.noThrow )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   output filename
 | |
|   -o filename
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "-o", "filename.ext"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.outputFilename == "filename.ext" )
 | |
| with expansion:
 | |
|   "filename.ext" == "filename.ext"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   output filename
 | |
|   --out
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "--out", "filename.ext"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.outputFilename == "filename.ext" )
 | |
| with expansion:
 | |
|   "filename.ext" == "filename.ext"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   combinations
 | |
|   Single character flags can be combined
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "-abe"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( config.abortAfter == 1 )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( config.shouldDebugBreak )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( config.noThrow == true )
 | |
| with expansion:
 | |
|   true == true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   use-colour
 | |
|   without option
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.useColour == UseColour::Auto )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   use-colour
 | |
|   auto
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "--use-colour", "auto"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.useColour == UseColour::Auto )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   use-colour
 | |
|   yes
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "--use-colour", "yes"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.useColour == UseColour::Yes )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   use-colour
 | |
|   no
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( cli.parse({"test", "--use-colour", "no"}) )
 | |
| with expansion:
 | |
|   {?}
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( config.useColour == UseColour::No )
 | |
| with expansion:
 | |
|   2 == 2
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Process can be configured on command line
 | |
|   use-colour
 | |
|   error
 | |
| -------------------------------------------------------------------------------
 | |
| CmdLine.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( !result )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| CmdLine.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( result.errorMessage(), Contains( "colour mode must be one of" ) )
 | |
| with expansion:
 | |
|   "colour mode must be one of: auto, yes or no. 'wrong' not recognised"
 | |
|   contains: "colour mode must be one of"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Reconstruction should be based on stringification: #914
 | |
| -------------------------------------------------------------------------------
 | |
| Decomposition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Decomposition.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( truthy(false) )
 | |
| with expansion:
 | |
|   Hey, its truthy!
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Regex string matcher
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( testStringForMatching(), Matches("this STRING contains 'abc' as a substring") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" matches "this STRING contains
 | |
|   'abc' as a substring" case sensitively
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( testStringForMatching(), Matches("contains 'abc' as a substring") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" matches "contains 'abc' as a
 | |
|   substring" case sensitively
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( testStringForMatching(), Matches("this string contains 'abc' as a") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" matches "this string contains
 | |
|   'abc' as a" case sensitively
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| SUCCEED counts as a test pass
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| with message:
 | |
|   this is a success
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| SUCCESS does not require an argument
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Scenario: BDD tests requiring Fixtures to provide commonly-accessed data or
 | |
|           methods
 | |
|      Given: No operations precede me
 | |
| -------------------------------------------------------------------------------
 | |
| BDD.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| BDD.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( before == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Scenario: BDD tests requiring Fixtures to provide commonly-accessed data or
 | |
|           methods
 | |
|      Given: No operations precede me
 | |
|       When: We get the count
 | |
|       Then: Subsequently values are higher
 | |
| -------------------------------------------------------------------------------
 | |
| BDD.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| BDD.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( after > before )
 | |
| with expansion:
 | |
|   1 > 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Scenario: Do that thing with the thing
 | |
|      Given: This stuff exists
 | |
|       When: I do this
 | |
|       Then: it should do this
 | |
| -------------------------------------------------------------------------------
 | |
| BDD.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| BDD.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( itDoesThis() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Scenario: Do that thing with the thing
 | |
|      Given: This stuff exists
 | |
|       When: I do this
 | |
|       Then: it should do this
 | |
|        And: do that
 | |
| -------------------------------------------------------------------------------
 | |
| BDD.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| BDD.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( itDoesThat() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Scenario: This is a really long scenario name to see how the list command deals
 | |
|           with wrapping
 | |
|      Given: A section name that is so long that it cannot fit in a single
 | |
|             console width
 | |
|       When: The test headers are printed as part of the normal running of the
 | |
|             scenario
 | |
|       Then: The, deliberately very long and overly verbose (you see what I did
 | |
|             there?) section names must wrap, along with an indent
 | |
| -------------------------------------------------------------------------------
 | |
| BDD.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| BDD.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| with message:
 | |
|   boo!
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Scenario: Vector resizing affects size and capacity
 | |
|      Given: an empty vector
 | |
| -------------------------------------------------------------------------------
 | |
| BDD.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| BDD.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.size() == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Scenario: Vector resizing affects size and capacity
 | |
|      Given: an empty vector
 | |
|       When: it is made larger
 | |
|       Then: the size and capacity go up
 | |
| -------------------------------------------------------------------------------
 | |
| BDD.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| BDD.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.size() == 10 )
 | |
| with expansion:
 | |
|   10 == 10
 | |
| 
 | |
| BDD.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.capacity() >= 10 )
 | |
| with expansion:
 | |
|   10 >= 10
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Scenario: Vector resizing affects size and capacity
 | |
|      Given: an empty vector
 | |
|       When: it is made larger
 | |
|       Then: the size and capacity go up
 | |
|   And when: it is made smaller again
 | |
|       Then: the size goes down but the capacity stays the same
 | |
| -------------------------------------------------------------------------------
 | |
| BDD.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| BDD.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.size() == 5 )
 | |
| with expansion:
 | |
|   5 == 5
 | |
| 
 | |
| BDD.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.capacity() >= 10 )
 | |
| with expansion:
 | |
|   10 >= 10
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Scenario: Vector resizing affects size and capacity
 | |
|      Given: an empty vector
 | |
| -------------------------------------------------------------------------------
 | |
| BDD.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| BDD.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.size() == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Scenario: Vector resizing affects size and capacity
 | |
|      Given: an empty vector
 | |
|       When: we reserve more space
 | |
|       Then: The capacity is increased but the size remains the same
 | |
| -------------------------------------------------------------------------------
 | |
| BDD.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| BDD.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.capacity() >= 10 )
 | |
| with expansion:
 | |
|   10 >= 10
 | |
| 
 | |
| BDD.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.size() == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| A string sent directly to stdout
 | |
| A string sent directly to stderr
 | |
| -------------------------------------------------------------------------------
 | |
| Some simple comparisons between doubles
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( d == Approx( 1.23 ) )
 | |
| with expansion:
 | |
|   1.23 == Approx( 1.23 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( d != Approx( 1.22 ) )
 | |
| with expansion:
 | |
|   1.23 != Approx( 1.22 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( d != Approx( 1.24 ) )
 | |
| with expansion:
 | |
|   1.23 != Approx( 1.24 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Approx( d ) == 1.23 )
 | |
| with expansion:
 | |
|   Approx( 1.23 ) == 1.23
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Approx( d ) != 1.22 )
 | |
| with expansion:
 | |
|   Approx( 1.23 ) != 1.22
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( Approx( d ) != 1.24 )
 | |
| with expansion:
 | |
|   Approx( 1.23 ) != 1.24
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( INFINITY == Approx(INFINITY) )
 | |
| with expansion:
 | |
|   inff == Approx( inf )
 | |
| 
 | |
| Message from section one
 | |
| -------------------------------------------------------------------------------
 | |
| Standard output from all sections is reported
 | |
|   one
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| 
 | |
| No assertions in section 'one'
 | |
| 
 | |
| Message from section two
 | |
| -------------------------------------------------------------------------------
 | |
| Standard output from all sections is reported
 | |
|   two
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| 
 | |
| No assertions in section 'two'
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StartsWith string matcher
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( testStringForMatching(), StartsWith("This String") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" starts with: "This String"
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( testStringForMatching(), StartsWith("string", Catch::CaseSensitive::No) )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" starts with: "string" (case
 | |
|   insensitive)
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| String matchers
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( testStringForMatching(), Contains("string") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" contains: "string"
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THAT( testStringForMatching(), Contains("string", Catch::CaseSensitive::No) )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" contains: "string" (case
 | |
|   insensitive)
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( testStringForMatching(), Contains("abc") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" contains: "abc"
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( testStringForMatching(), Contains("aBC", Catch::CaseSensitive::No) )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" contains: "abc" (case insensitive)
 | |
|   insensitive)
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( testStringForMatching(), StartsWith("this") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" starts with: "this"
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( testStringForMatching(), StartsWith("THIS", Catch::CaseSensitive::No) )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" starts with: "this" (case
 | |
|   insensitive)
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( testStringForMatching(), EndsWith("substring") )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" ends with: "substring"
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( testStringForMatching(), EndsWith(" SuBsTrInG", Catch::CaseSensitive::No) )
 | |
| with expansion:
 | |
|   "this string contains 'abc' as a substring" ends with: " substring" (case
 | |
|   insensitive)
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   Empty string
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( empty.empty() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( empty.size() == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( std::strcmp( empty.c_str(), "" ) == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   From string literal
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s.empty() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s.size() == 5 )
 | |
| with expansion:
 | |
|   5 == 5
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( isSubstring( s ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( std::strcmp( rawChars, "hello" ) == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   From string literal
 | |
|   c_str() does not cause copy
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( isOwned( s ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s.c_str() == rawChars )
 | |
| with expansion:
 | |
|   "hello" == "hello"
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( isOwned( s ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   From sub-string
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( original == "original" )
 | |
| 
 | |
| String.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE( isSubstring( original ) )
 | |
| with expansion:
 | |
|   false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   Substrings
 | |
|   zero-based substring
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ss.empty() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ss.size() == 5 )
 | |
| with expansion:
 | |
|   5 == 5
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( std::strcmp( ss.c_str(), "hello" ) == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ss == "hello" )
 | |
| with expansion:
 | |
|   hello == "hello"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   Substrings
 | |
|   c_str() causes copy
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( isSubstring( ss ) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( isOwned( ss ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( rawChars == data( s ) )
 | |
| with expansion:
 | |
|   "hello world!" == "hello world!"
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ss.c_str() != rawChars )
 | |
| with expansion:
 | |
|   "hello" != "hello world!"
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( isSubstring( ss ) == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( isOwned( ss ) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( data( ss ) != data( s ) )
 | |
| with expansion:
 | |
|   "hello" != "hello world!"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   Substrings
 | |
|   non-zero-based substring
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ss.size() == 6 )
 | |
| with expansion:
 | |
|   6 == 6
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( std::strcmp( ss.c_str(), "world!" ) == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   Substrings
 | |
|   Pointer values of full refs should match
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s.c_str() == s2.c_str() )
 | |
| with expansion:
 | |
|   "hello world!" == "hello world!"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   Substrings
 | |
|   Pointer values of substring refs should not match
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s.c_str() != ss.c_str() )
 | |
| with expansion:
 | |
|   "hello world!" != "hello"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   Comparisons
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( StringRef("hello") == StringRef("hello") )
 | |
| with expansion:
 | |
|   hello == hello
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( StringRef("hello") != StringRef("cello") )
 | |
| with expansion:
 | |
|   hello != cello
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   from std::string
 | |
|   implicitly constructed
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( sr == "a standard string" )
 | |
| with expansion:
 | |
|   a standard string == "a standard string"
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( sr.size() == stdStr.size() )
 | |
| with expansion:
 | |
|   17 == 17
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   from std::string
 | |
|   explicitly constructed
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( sr == "a standard string" )
 | |
| with expansion:
 | |
|   a standard string == "a standard string"
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( sr.size() == stdStr.size() )
 | |
| with expansion:
 | |
|   17 == 17
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   from std::string
 | |
|   assigned
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( sr == "a standard string" )
 | |
| with expansion:
 | |
|   a standard string == "a standard string"
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( sr.size() == stdStr.size() )
 | |
| with expansion:
 | |
|   17 == 17
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   to std::string
 | |
|   implicitly constructed
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( stdStr == "a stringref" )
 | |
| with expansion:
 | |
|   "a stringref" == "a stringref"
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( stdStr.size() == sr.size() )
 | |
| with expansion:
 | |
|   11 == 11
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   to std::string
 | |
|   explicitly constructed
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( stdStr == "a stringref" )
 | |
| with expansion:
 | |
|   "a stringref" == "a stringref"
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( stdStr.size() == sr.size() )
 | |
| with expansion:
 | |
|   11 == 11
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| StringRef
 | |
|   to std::string
 | |
|   assigned
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( stdStr == "a stringref" )
 | |
| with expansion:
 | |
|   "a stringref" == "a stringref"
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( stdStr.size() == sr.size() )
 | |
| with expansion:
 | |
|   11 == 11
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Stringifying std::chrono::duration helpers
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringChrono.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringChrono.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( minute == seconds )
 | |
| with expansion:
 | |
|   1 m == 60 s
 | |
| 
 | |
| ToStringChrono.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( hour != seconds )
 | |
| with expansion:
 | |
|   1 h != 60 s
 | |
| 
 | |
| ToStringChrono.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( micro != milli )
 | |
| with expansion:
 | |
|   1 us != 1 ms
 | |
| 
 | |
| ToStringChrono.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( nano != micro )
 | |
| with expansion:
 | |
|   1 ns != 1 us
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Stringifying std::chrono::duration with weird ratios
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringChrono.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringChrono.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( half_minute != femto_second )
 | |
| with expansion:
 | |
|   1 [30/1]s != 1 fs
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Stringifying std::chrono::time_point<system_clock>
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringChrono.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringChrono.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( now != later )
 | |
| with expansion:
 | |
|   {iso8601-timestamp}
 | |
|   !=
 | |
|   {iso8601-timestamp}
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tabs and newlines show in output
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( s1 == s2 )
 | |
| with expansion:
 | |
|   "if ($b == 10) {
 | |
|   		$a	= 20;
 | |
|   }"
 | |
|   ==
 | |
|   "if ($b == 10) {
 | |
|   	$a = 20;
 | |
|   }
 | |
|   "
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tag alias can be registered against tag patterns
 | |
|   The same tag alias can only be registered once
 | |
| -------------------------------------------------------------------------------
 | |
| TagAlias.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| TagAlias.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( what, Contains( "[@zzz]" ) )
 | |
| with expansion:
 | |
|   "error: tag alias, '[@zzz]' already registered.
 | |
|   	First seen at: file:2
 | |
|   	Redefined at: file:10" contains: "[@zzz]"
 | |
| 
 | |
| TagAlias.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( what, Contains( "file" ) )
 | |
| with expansion:
 | |
|   "error: tag alias, '[@zzz]' already registered.
 | |
|   	First seen at: file:2
 | |
|   	Redefined at: file:10" contains: "file"
 | |
| 
 | |
| TagAlias.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( what, Contains( "2" ) )
 | |
| with expansion:
 | |
|   "error: tag alias, '[@zzz]' already registered.
 | |
|   	First seen at: file:2
 | |
|   	Redefined at: file:10" contains: "2"
 | |
| 
 | |
| TagAlias.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( what, Contains( "10" ) )
 | |
| with expansion:
 | |
|   "error: tag alias, '[@zzz]' already registered.
 | |
|   	First seen at: file:2
 | |
|   	Redefined at: file:10" contains: "10"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tag alias can be registered against tag patterns
 | |
|   Tag aliases must be of the form [@name]
 | |
| -------------------------------------------------------------------------------
 | |
| TagAlias.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| TagAlias.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THROWS( registry.add( "[no ampersat]", "", Catch::SourceLineInfo( "file", 3 ) ) )
 | |
| 
 | |
| TagAlias.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THROWS( registry.add( "[the @ is not at the start]", "", Catch::SourceLineInfo( "file", 3 ) ) )
 | |
| 
 | |
| TagAlias.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THROWS( registry.add( "@no square bracket at start]", "", Catch::SourceLineInfo( "file", 3 ) ) )
 | |
| 
 | |
| TagAlias.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THROWS( registry.add( "[@no square bracket at end", "", Catch::SourceLineInfo( "file", 3 ) ) )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Test case with one argument
 | |
| -------------------------------------------------------------------------------
 | |
| VariadicMacros.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| VariadicMacros.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| with message:
 | |
|   no assertions
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Test enum bit values
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( 0x<hex digits> == bit30and31 )
 | |
| with expansion:
 | |
|   3221225472 (0x<hex digits>) == 3221225472
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| The NO_FAIL macro reports a failure but does not fail the test
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Message.tests.cpp:<line number>:
 | |
| FAILED - but was ok:
 | |
|   CHECK_NOFAIL( 1 == 2 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| This test 'should' fail but doesn't
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| with message:
 | |
|   oops!
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   successfully close one section
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isSuccessfullyCompleted() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ctx.completedCycle() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isSuccessfullyCompleted() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   fail one section
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isSuccessfullyCompleted() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ctx.completedCycle() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isSuccessfullyCompleted() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   fail one section
 | |
|   re-enter after failed section
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase2.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1b.isOpen() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ctx.completedCycle() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isSuccessfullyCompleted() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   fail one section
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isSuccessfullyCompleted() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ctx.completedCycle() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isSuccessfullyCompleted() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   fail one section
 | |
|   re-enter after failed section and find next section
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase2.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1b.isOpen() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ctx.completedCycle() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isSuccessfullyCompleted() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   successfully close one section, then find another
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2.isOpen() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   successfully close one section, then find another
 | |
|   Re-enter - skips S1 and enters S2
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase2.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1b.isOpen() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2b.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ctx.completedCycle() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   successfully close one section, then find another
 | |
|   Re-enter - skips S1 and enters S2
 | |
|   Successfully close S2
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ctx.completedCycle() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2b.isSuccessfullyCompleted() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase2.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase2.isSuccessfullyCompleted() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   successfully close one section, then find another
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2.isOpen() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   successfully close one section, then find another
 | |
|   Re-enter - skips S1 and enters S2
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase2.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1b.isOpen() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2b.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ctx.completedCycle() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   successfully close one section, then find another
 | |
|   Re-enter - skips S1 and enters S2
 | |
|   fail S2
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ctx.completedCycle() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2b.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2b.isSuccessfullyCompleted() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase2.isSuccessfullyCompleted() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase3.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1c.isOpen() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2c.isOpen() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase3.isSuccessfullyCompleted() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   open a nested section
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   start a generator
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1.index() == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   start a generator
 | |
|   close outer section
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isSuccessfullyCompleted() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   start a generator
 | |
|   close outer section
 | |
|   Re-enter for second generation
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase2.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1b.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1b.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1b.index() == 1 )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1b.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1b.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase2.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   start a generator
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1.index() == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   start a generator
 | |
|   Start a new inner section
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   start a generator
 | |
|   Start a new inner section
 | |
|   Re-enter for second generation
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase2.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1b.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1b.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1b.index() == 1 )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2b.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2b.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1b.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1b.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase2.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   start a generator
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1.index() == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   start a generator
 | |
|   Fail an inner section
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2.isSuccessfullyCompleted() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Tracker
 | |
|   start a generator
 | |
|   Fail an inner section
 | |
|   Re-enter for second generation
 | |
| -------------------------------------------------------------------------------
 | |
| PartTracker.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase2.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1b.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1b.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1b.index() == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2b.isOpen() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1b.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1b.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase2.isComplete() == false )
 | |
| with expansion:
 | |
|   false == false
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase3.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1c.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1c.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1c.index() == 1 )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2c.isOpen() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s2c.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( g1c.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s1c.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| PartTracker.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCase3.isComplete() )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Unexpected exceptions can be translated
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
| due to unexpected exception with message:
 | |
|   3.14
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Use a custom approx
 | |
| -------------------------------------------------------------------------------
 | |
| Approx.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( d == approx( 1.23 ) )
 | |
| with expansion:
 | |
|   1.23 == Approx( 1.23 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( d == approx( 1.22 ) )
 | |
| with expansion:
 | |
|   1.23 == Approx( 1.22 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( d == approx( 1.24 ) )
 | |
| with expansion:
 | |
|   1.23 == Approx( 1.24 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( d != approx( 1.25 ) )
 | |
| with expansion:
 | |
|   1.23 != Approx( 1.25 )
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( approx( d ) == 1.23 )
 | |
| with expansion:
 | |
|   Approx( 1.23 ) == 1.23
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( approx( d ) == 1.22 )
 | |
| with expansion:
 | |
|   Approx( 1.23 ) == 1.22
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( approx( d ) == 1.24 )
 | |
| with expansion:
 | |
|   Approx( 1.23 ) == 1.24
 | |
| 
 | |
| Approx.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( approx( d ) != 1.25 )
 | |
| with expansion:
 | |
|   Approx( 1.23 ) != 1.25
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Variadic macros
 | |
|   Section with one argument
 | |
| -------------------------------------------------------------------------------
 | |
| VariadicMacros.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| VariadicMacros.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| with message:
 | |
|   no assertions
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Vector matchers
 | |
|   Contains (element)
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( v, VectorContains(1) )
 | |
| with expansion:
 | |
|   { 1, 2, 3 } Contains: 1
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( v, VectorContains(2) )
 | |
| with expansion:
 | |
|   { 1, 2, 3 } Contains: 2
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Vector matchers
 | |
|   Contains (vector)
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( v, Contains(v2) )
 | |
| with expansion:
 | |
|   { 1, 2, 3 } Contains: { 1, 2 }
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( v, Contains(v2) )
 | |
| with expansion:
 | |
|   { 1, 2, 3 } Contains: { 1, 2, 3 }
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( v, Contains(empty) )
 | |
| with expansion:
 | |
|   { 1, 2, 3 } Contains: {  }
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( empty, Contains(empty) )
 | |
| with expansion:
 | |
|   {  } Contains: {  }
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Vector matchers
 | |
|   Contains (element), composed
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( v, VectorContains(1) && VectorContains(2) )
 | |
| with expansion:
 | |
|   { 1, 2, 3 } ( Contains: 1 and Contains: 2 )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Vector matchers
 | |
|   Equals
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( v, Equals(v) )
 | |
| with expansion:
 | |
|   { 1, 2, 3 } Equals: { 1, 2, 3 }
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( empty, Equals(empty) )
 | |
| with expansion:
 | |
|   {  } Equals: {  }
 | |
| 
 | |
| Matchers.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_THAT( v, Equals(v2) )
 | |
| with expansion:
 | |
|   { 1, 2, 3 } Equals: { 1, 2, 3 }
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Vector matchers that fail
 | |
|   Contains (element)
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( v, VectorContains(-1) )
 | |
| with expansion:
 | |
|   { 1, 2, 3 } Contains: -1
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( empty, VectorContains(1) )
 | |
| with expansion:
 | |
|   {  } Contains: 1
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Vector matchers that fail
 | |
|   Contains (vector)
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( empty, Contains(v) )
 | |
| with expansion:
 | |
|   {  } Contains: { 1, 2, 3 }
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( v, Contains(v2) )
 | |
| with expansion:
 | |
|   { 1, 2, 3 } Contains: { 1, 2, 4 }
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Vector matchers that fail
 | |
|   Equals
 | |
| -------------------------------------------------------------------------------
 | |
| Matchers.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( v, Equals(v2) )
 | |
| with expansion:
 | |
|   { 1, 2, 3 } Equals: { 1, 2 }
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( v2, Equals(v) )
 | |
| with expansion:
 | |
|   { 1, 2 } Equals: { 1, 2, 3 }
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( empty, Equals(v) )
 | |
| with expansion:
 | |
|   {  } Equals: { 1, 2, 3 }
 | |
| 
 | |
| Matchers.tests.cpp:<line number>: FAILED:
 | |
|   CHECK_THAT( v, Equals(empty) )
 | |
| with expansion:
 | |
|   { 1, 2, 3 } Equals: {  }
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| When checked exceptions are thrown they can be expected or unexpected
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS_AS( thisThrows(), std::domain_error )
 | |
| 
 | |
| Exception.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_NOTHROW( thisDoesntThrow() )
 | |
| 
 | |
| Exception.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE_THROWS( thisThrows() )
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| When unchecked exceptions are thrown directly they are always failures
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
| due to unexpected exception with message:
 | |
|   unexpected exception
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| When unchecked exceptions are thrown during a CHECK the test should continue
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( thisThrows() == 0 )
 | |
| due to unexpected exception with message:
 | |
|   expected exception
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| When unchecked exceptions are thrown during a REQUIRE the test should abort
 | |
| fail
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE( thisThrows() == 0 )
 | |
| due to unexpected exception with message:
 | |
|   expected exception
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| When unchecked exceptions are thrown from functions they are always failures
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( thisThrows() == 0 )
 | |
| due to unexpected exception with message:
 | |
|   expected exception
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| When unchecked exceptions are thrown from sections they are always failures
 | |
|   section name
 | |
| -------------------------------------------------------------------------------
 | |
| Exception.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Exception.tests.cpp:<line number>: FAILED:
 | |
| due to unexpected exception with message:
 | |
|   unexpected exception
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Where the LHS is not a simple value
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| warning:
 | |
|   Uncomment the code in this test to check that it gives a sensible compiler
 | |
|   error
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| Where there is more to the expression after the RHS
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| warning:
 | |
|   Uncomment the code in this test to check that it gives a sensible compiler
 | |
|   error
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| X/level/0/a
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| X/level/0/b
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| X/level/1/a
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| X/level/1/b
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| XmlEncode
 | |
|   normal string
 | |
| -------------------------------------------------------------------------------
 | |
| Xml.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Xml.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( encode( "normal string" ) == "normal string" )
 | |
| with expansion:
 | |
|   "normal string" == "normal string"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| XmlEncode
 | |
|   empty string
 | |
| -------------------------------------------------------------------------------
 | |
| Xml.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Xml.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( encode( "" ) == "" )
 | |
| with expansion:
 | |
|   "" == ""
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| XmlEncode
 | |
|   string with ampersand
 | |
| -------------------------------------------------------------------------------
 | |
| Xml.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Xml.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( encode( "smith & jones" ) == "smith & jones" )
 | |
| with expansion:
 | |
|   "smith & jones" == "smith & jones"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| XmlEncode
 | |
|   string with less-than
 | |
| -------------------------------------------------------------------------------
 | |
| Xml.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Xml.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( encode( "smith < jones" ) == "smith < jones" )
 | |
| with expansion:
 | |
|   "smith < jones" == "smith < jones"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| XmlEncode
 | |
|   string with greater-than
 | |
| -------------------------------------------------------------------------------
 | |
| Xml.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Xml.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( encode( "smith > jones" ) == "smith > jones" )
 | |
| with expansion:
 | |
|   "smith > jones" == "smith > jones"
 | |
| 
 | |
| Xml.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( encode( "smith ]]> jones" ) == "smith ]]> jones" )
 | |
| with expansion:
 | |
|   "smith ]]> jones"
 | |
|   ==
 | |
|   "smith ]]> jones"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| XmlEncode
 | |
|   string with quotes
 | |
| -------------------------------------------------------------------------------
 | |
| Xml.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Xml.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( encode( stringWithQuotes ) == stringWithQuotes )
 | |
| with expansion:
 | |
|   "don't "quote" me on that"
 | |
|   ==
 | |
|   "don't "quote" me on that"
 | |
| 
 | |
| Xml.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( encode( stringWithQuotes, Catch::XmlEncode::ForAttributes ) == "don't "quote" me on that" )
 | |
| with expansion:
 | |
|   "don't "quote" me on that"
 | |
|   ==
 | |
|   "don't "quote" me on that"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| XmlEncode
 | |
|   string with control char (1)
 | |
| -------------------------------------------------------------------------------
 | |
| Xml.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Xml.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( encode( "[\x01]" ) == "[\\x01]" )
 | |
| with expansion:
 | |
|   "[\x01]" == "[\x01]"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| XmlEncode
 | |
|   string with control char (x7F)
 | |
| -------------------------------------------------------------------------------
 | |
| Xml.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Xml.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( encode( "[\x7F]" ) == "[\\x7F]" )
 | |
| with expansion:
 | |
|   "[\x7F]" == "[\x7F]"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| atomic if
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( x == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| boolean member
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( obj.prop != 0 )
 | |
| with expansion:
 | |
|   0x<hex digits> != 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| checkedElse
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECKED_ELSE( flag )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCheckedElse( true ) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| checkedElse, failing
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
|   CHECKED_ELSE( flag )
 | |
| with expansion:
 | |
|   false
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE( testCheckedElse( false ) )
 | |
| with expansion:
 | |
|   false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| checkedIf
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECKED_IF( flag )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( testCheckedIf( true ) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| checkedIf, failing
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
|   CHECKED_IF( flag )
 | |
| with expansion:
 | |
|   false
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE( testCheckedIf( false ) )
 | |
| with expansion:
 | |
|   false
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| comparisons between const int variables
 | |
| -------------------------------------------------------------------------------
 | |
| Condition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( unsigned_char_var == 1 )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( unsigned_short_var == 1 )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( unsigned_int_var == 1 )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( unsigned_long_var == 1 )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| comparisons between int variables
 | |
| -------------------------------------------------------------------------------
 | |
| Condition.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( long_var == unsigned_char_var )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( long_var == unsigned_short_var )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( long_var == unsigned_int_var )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| Condition.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( long_var == unsigned_long_var )
 | |
| with expansion:
 | |
|   1 == 1
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| even more nested SECTION tests
 | |
|   c
 | |
|   d (leaf)
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| even more nested SECTION tests
 | |
|   c
 | |
|   e (leaf)
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| even more nested SECTION tests
 | |
|   f (leaf)
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| 
 | |
| loose text artifact
 | |
| -------------------------------------------------------------------------------
 | |
| just failure
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Message.tests.cpp:<line number>: FAILED:
 | |
| explicitly with message:
 | |
|   Previous info should not be seen
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| long long
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( l == std::numeric_limits<long long>::max() )
 | |
| with expansion:
 | |
|   9223372036854775807 (0x<hex digits>)
 | |
|   ==
 | |
|   9223372036854775807 (0x<hex digits>)
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| looped SECTION tests
 | |
|   s1
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( b > a )
 | |
| with expansion:
 | |
|   0 > 1
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| looped tests
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( ( fib[i] % 2 ) == 0 )
 | |
| with expansion:
 | |
|   1 == 0
 | |
| with message:
 | |
|   Testing if fib[0] (1) is even
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( ( fib[i] % 2 ) == 0 )
 | |
| with expansion:
 | |
|   1 == 0
 | |
| with message:
 | |
|   Testing if fib[1] (1) is even
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( ( fib[i] % 2 ) == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| with message:
 | |
|   Testing if fib[2] (2) is even
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( ( fib[i] % 2 ) == 0 )
 | |
| with expansion:
 | |
|   1 == 0
 | |
| with message:
 | |
|   Testing if fib[3] (3) is even
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( ( fib[i] % 2 ) == 0 )
 | |
| with expansion:
 | |
|   1 == 0
 | |
| with message:
 | |
|   Testing if fib[4] (5) is even
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( ( fib[i] % 2 ) == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| with message:
 | |
|   Testing if fib[5] (8) is even
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( ( fib[i] % 2 ) == 0 )
 | |
| with expansion:
 | |
|   1 == 0
 | |
| with message:
 | |
|   Testing if fib[6] (13) is even
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( ( fib[i] % 2 ) == 0 )
 | |
| with expansion:
 | |
|   1 == 0
 | |
| with message:
 | |
|   Testing if fib[7] (21) is even
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| more nested SECTION tests
 | |
|   s1
 | |
|   s2
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE( a == b )
 | |
| with expansion:
 | |
|   1 == 2
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| more nested SECTION tests
 | |
|   s1
 | |
|   s3
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( a != b )
 | |
| with expansion:
 | |
|   1 != 2
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| more nested SECTION tests
 | |
|   s1
 | |
|   s4
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( a < b )
 | |
| with expansion:
 | |
|   1 < 2
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| nested SECTION tests
 | |
|   s1
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( a != b )
 | |
| with expansion:
 | |
|   1 != 2
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( b != a )
 | |
| with expansion:
 | |
|   2 != 1
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| nested SECTION tests
 | |
|   s1
 | |
|   s2
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( a != b )
 | |
| with expansion:
 | |
|   1 != 2
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| non streamable - with conv. op
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( s == "7" )
 | |
| with expansion:
 | |
|   "7" == "7"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| non-copyable objects
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( ti == typeid(int) )
 | |
| with expansion:
 | |
|   {?} == {?}
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| not allowed
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| null strings
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( makeString( false ) != static_cast<char*>(0) )
 | |
| with expansion:
 | |
|   "valid string" != {null string}
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( makeString( true ) == static_cast<char*>(0) )
 | |
| with expansion:
 | |
|   {null string} == {null string}
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| null_ptr
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ptr.get() == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| pair<pair<int,const char *,pair<std::string,int> > -> toString
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringPair.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringPair.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify( pair ) == "{ { 42, \"Arthur\" }, { \"Ford\", 24 } }" )
 | |
| with expansion:
 | |
|   "{ { 42, "Arthur" }, { "Ford", 24 } }"
 | |
|   ==
 | |
|   "{ { 42, "Arthur" }, { "Ford", 24 } }"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| pointer to class
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( p == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| random SECTION tests
 | |
|   s1
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( a != b )
 | |
| with expansion:
 | |
|   1 != 2
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( b != a )
 | |
| with expansion:
 | |
|   2 != 1
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| random SECTION tests
 | |
|   s2
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( a != b )
 | |
| with expansion:
 | |
|   1 != 2
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| replaceInPlace
 | |
|   replace single char
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( Catch::replaceInPlace( letters, "b", "z" ) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( letters == "azcdefcg" )
 | |
| with expansion:
 | |
|   "azcdefcg" == "azcdefcg"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| replaceInPlace
 | |
|   replace two chars
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( Catch::replaceInPlace( letters, "c", "z" ) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( letters == "abzdefzg" )
 | |
| with expansion:
 | |
|   "abzdefzg" == "abzdefzg"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| replaceInPlace
 | |
|   replace first char
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( Catch::replaceInPlace( letters, "a", "z" ) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( letters == "zbcdefcg" )
 | |
| with expansion:
 | |
|   "zbcdefcg" == "zbcdefcg"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| replaceInPlace
 | |
|   replace last char
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( Catch::replaceInPlace( letters, "g", "z" ) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( letters == "abcdefcz" )
 | |
| with expansion:
 | |
|   "abcdefcz" == "abcdefcz"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| replaceInPlace
 | |
|   replace all chars
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( Catch::replaceInPlace( letters, letters, "replaced" ) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( letters == "replaced" )
 | |
| with expansion:
 | |
|   "replaced" == "replaced"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| replaceInPlace
 | |
|   replace no chars
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK_FALSE( Catch::replaceInPlace( letters, "x", "z" ) )
 | |
| with expansion:
 | |
|   !false
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( letters == letters )
 | |
| with expansion:
 | |
|   "abcdefcg" == "abcdefcg"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| replaceInPlace
 | |
|   escape '
 | |
| -------------------------------------------------------------------------------
 | |
| String.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( Catch::replaceInPlace( s, "'", "|'" ) )
 | |
| with expansion:
 | |
|   true
 | |
| 
 | |
| String.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( s == "didn|'t" )
 | |
| with expansion:
 | |
|   "didn|'t" == "didn|'t"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| send a single char to INFO
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE( false )
 | |
| with message:
 | |
|   3
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| sends information to INFO
 | |
| -------------------------------------------------------------------------------
 | |
| Message.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Message.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE( false )
 | |
| with messages:
 | |
|   hi
 | |
|   i := 7
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| std::pair<int,const std::string> -> toString
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringPair.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringPair.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify(value) == "{ 34, \"xyzzy\" }" )
 | |
| with expansion:
 | |
|   "{ 34, "xyzzy" }" == "{ 34, "xyzzy" }"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| std::pair<int,std::string> -> toString
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringPair.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringPair.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify( value ) == "{ 34, \"xyzzy\" }" )
 | |
| with expansion:
 | |
|   "{ 34, "xyzzy" }" == "{ 34, "xyzzy" }"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| std::vector<std::pair<std::string,int> > -> toString
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringPair.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringPair.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify( pr ) == "{ { \"green\", 55 } }" )
 | |
| with expansion:
 | |
|   "{ { "green", 55 } }"
 | |
|   ==
 | |
|   "{ { "green", 55 } }"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| string literals of different sizes can be compared
 | |
| -------------------------------------------------------------------------------
 | |
| Tricky.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Tricky.tests.cpp:<line number>: FAILED:
 | |
|   REQUIRE( std::string( "first" ) == "second" )
 | |
| with expansion:
 | |
|   "first" == "second"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| stringify( has_maker )
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringWhich.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringWhich.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify( item ) == "StringMaker<has_maker>" )
 | |
| with expansion:
 | |
|   "StringMaker<has_maker>"
 | |
|   ==
 | |
|   "StringMaker<has_maker>"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| stringify( has_maker_and_toString )
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringWhich.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringWhich.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify( item ) == "StringMaker<has_maker_and_operator>" )
 | |
| with expansion:
 | |
|   "StringMaker<has_maker_and_operator>"
 | |
|   ==
 | |
|   "StringMaker<has_maker_and_operator>"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| stringify( has_operator )
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringWhich.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringWhich.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify( item ) == "operator<<( has_operator )" )
 | |
| with expansion:
 | |
|   "operator<<( has_operator )"
 | |
|   ==
 | |
|   "operator<<( has_operator )"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| toString on const wchar_t const pointer returns the string contents
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( result == "\"wide load\"" )
 | |
| with expansion:
 | |
|   ""wide load"" == ""wide load""
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| toString on const wchar_t pointer returns the string contents
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( result == "\"wide load\"" )
 | |
| with expansion:
 | |
|   ""wide load"" == ""wide load""
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| toString on wchar_t const pointer returns the string contents
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( result == "\"wide load\"" )
 | |
| with expansion:
 | |
|   ""wide load"" == ""wide load""
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| toString on wchar_t returns the string contents
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( result == "\"wide load\"" )
 | |
| with expansion:
 | |
|   ""wide load"" == ""wide load""
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| toString( vectors<has_maker )
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringWhich.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringWhich.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify( v ) == "{ StringMaker<has_maker> }" )
 | |
| with expansion:
 | |
|   "{ StringMaker<has_maker> }"
 | |
|   ==
 | |
|   "{ StringMaker<has_maker> }"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| toString(enum class w/operator<<)
 | |
| -------------------------------------------------------------------------------
 | |
| EnumToString.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| EnumToString.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( ::Catch::Detail::stringify(e0) == "E2/V0" )
 | |
| with expansion:
 | |
|   "E2/V0" == "E2/V0"
 | |
| 
 | |
| EnumToString.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( ::Catch::Detail::stringify(e1) == "E2/V1" )
 | |
| with expansion:
 | |
|   "E2/V1" == "E2/V1"
 | |
| 
 | |
| EnumToString.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( ::Catch::Detail::stringify(e3) == "Unknown enum value 10" )
 | |
| with expansion:
 | |
|   "Unknown enum value 10"
 | |
|   ==
 | |
|   "Unknown enum value 10"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| toString(enum class)
 | |
| -------------------------------------------------------------------------------
 | |
| EnumToString.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| EnumToString.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( ::Catch::Detail::stringify(e0) == "0" )
 | |
| with expansion:
 | |
|   "{?}" == "0"
 | |
| 
 | |
| EnumToString.tests.cpp:<line number>: FAILED:
 | |
|   CHECK( ::Catch::Detail::stringify(e1) == "1" )
 | |
| with expansion:
 | |
|   "{?}" == "1"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| toString(enum w/operator<<)
 | |
| -------------------------------------------------------------------------------
 | |
| EnumToString.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| EnumToString.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( ::Catch::Detail::stringify(e0) == "E2{0}" )
 | |
| with expansion:
 | |
|   "E2{0}" == "E2{0}"
 | |
| 
 | |
| EnumToString.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( ::Catch::Detail::stringify(e1) == "E2{1}" )
 | |
| with expansion:
 | |
|   "E2{1}" == "E2{1}"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| toString(enum)
 | |
| -------------------------------------------------------------------------------
 | |
| EnumToString.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| EnumToString.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( ::Catch::Detail::stringify(e0) == "0" )
 | |
| with expansion:
 | |
|   "0" == "0"
 | |
| 
 | |
| EnumToString.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( ::Catch::Detail::stringify(e1) == "1" )
 | |
| with expansion:
 | |
|   "1" == "1"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| tuple<>
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringTuple.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringTuple.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( "{ }" == ::Catch::Detail::stringify(type{}) )
 | |
| with expansion:
 | |
|   "{ }" == "{ }"
 | |
| 
 | |
| ToStringTuple.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( "{ }" == ::Catch::Detail::stringify(value) )
 | |
| with expansion:
 | |
|   "{ }" == "{ }"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| tuple<float,int>
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringTuple.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringTuple.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( "1.2f" == ::Catch::Detail::stringify(float(1.2)) )
 | |
| with expansion:
 | |
|   "1.2f" == "1.2f"
 | |
| 
 | |
| ToStringTuple.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( "{ 1.2f, 0 }" == ::Catch::Detail::stringify(type{1.2f,0}) )
 | |
| with expansion:
 | |
|   "{ 1.2f, 0 }" == "{ 1.2f, 0 }"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| tuple<int>
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringTuple.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringTuple.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( "{ 0 }" == ::Catch::Detail::stringify(type{0}) )
 | |
| with expansion:
 | |
|   "{ 0 }" == "{ 0 }"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| tuple<0,int,const char *>
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringTuple.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringTuple.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( "{ 0, 42, \"Catch me\" }" == ::Catch::Detail::stringify(value) )
 | |
| with expansion:
 | |
|   "{ 0, 42, "Catch me" }"
 | |
|   ==
 | |
|   "{ 0, 42, "Catch me" }"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| tuple<string,string>
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringTuple.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringTuple.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( "{ \"hello\", \"world\" }" == ::Catch::Detail::stringify(type{"hello","world"}) )
 | |
| with expansion:
 | |
|   "{ "hello", "world" }"
 | |
|   ==
 | |
|   "{ "hello", "world" }"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| tuple<tuple<int>,tuple<>,float>
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringTuple.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringTuple.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   CHECK( "{ { 42 }, { }, 1.2f }" == ::Catch::Detail::stringify(value) )
 | |
| with expansion:
 | |
|   "{ { 42 }, { }, 1.2f }"
 | |
|   ==
 | |
|   "{ { 42 }, { }, 1.2f }"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| vec<vec<string,alloc>> -> toString
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringVector.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringVector.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify(v) == "{  }" )
 | |
| with expansion:
 | |
|   "{  }" == "{  }"
 | |
| 
 | |
| ToStringVector.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify(v) == "{ { \"hello\" }, { \"world\" } }" )
 | |
| with expansion:
 | |
|   "{ { "hello" }, { "world" } }"
 | |
|   ==
 | |
|   "{ { "hello" }, { "world" } }"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| vector<int,allocator> -> toString
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringVector.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringVector.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify(vv) == "{  }" )
 | |
| with expansion:
 | |
|   "{  }" == "{  }"
 | |
| 
 | |
| ToStringVector.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify(vv) == "{ 42 }" )
 | |
| with expansion:
 | |
|   "{ 42 }" == "{ 42 }"
 | |
| 
 | |
| ToStringVector.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify(vv) == "{ 42, 250 }" )
 | |
| with expansion:
 | |
|   "{ 42, 250 }" == "{ 42, 250 }"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| vector<int> -> toString
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringVector.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringVector.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify(vv) == "{  }" )
 | |
| with expansion:
 | |
|   "{  }" == "{  }"
 | |
| 
 | |
| ToStringVector.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify(vv) == "{ 42 }" )
 | |
| with expansion:
 | |
|   "{ 42 }" == "{ 42 }"
 | |
| 
 | |
| ToStringVector.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify(vv) == "{ 42, 250 }" )
 | |
| with expansion:
 | |
|   "{ 42, 250 }" == "{ 42, 250 }"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| vector<string> -> toString
 | |
| -------------------------------------------------------------------------------
 | |
| ToStringVector.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| ToStringVector.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify(vv) == "{  }" )
 | |
| with expansion:
 | |
|   "{  }" == "{  }"
 | |
| 
 | |
| ToStringVector.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify(vv) == "{ \"hello\" }" )
 | |
| with expansion:
 | |
|   "{ "hello" }" == "{ "hello" }"
 | |
| 
 | |
| ToStringVector.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( ::Catch::Detail::stringify(vv) == "{ \"hello\", \"world\" }" )
 | |
| with expansion:
 | |
|   "{ "hello", "world" }"
 | |
|   ==
 | |
|   "{ "hello", "world" }"
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| vectors can be sized and resized
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.size() == 5 )
 | |
| with expansion:
 | |
|   5 == 5
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.capacity() >= 5 )
 | |
| with expansion:
 | |
|   5 >= 5
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| vectors can be sized and resized
 | |
|   resizing bigger changes size and capacity
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.size() == 10 )
 | |
| with expansion:
 | |
|   10 == 10
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.capacity() >= 10 )
 | |
| with expansion:
 | |
|   10 >= 10
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| vectors can be sized and resized
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.size() == 5 )
 | |
| with expansion:
 | |
|   5 == 5
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.capacity() >= 5 )
 | |
| with expansion:
 | |
|   5 >= 5
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| vectors can be sized and resized
 | |
|   resizing smaller changes size but not capacity
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.size() == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.capacity() >= 5 )
 | |
| with expansion:
 | |
|   5 >= 5
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| vectors can be sized and resized
 | |
|   resizing smaller changes size but not capacity
 | |
|   We can use the 'swap trick' to reset the capacity
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.capacity() == 0 )
 | |
| with expansion:
 | |
|   0 == 0
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| vectors can be sized and resized
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.size() == 5 )
 | |
| with expansion:
 | |
|   5 == 5
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.capacity() >= 5 )
 | |
| with expansion:
 | |
|   5 >= 5
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| vectors can be sized and resized
 | |
|   reserving bigger changes capacity but not size
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.size() == 5 )
 | |
| with expansion:
 | |
|   5 == 5
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.capacity() >= 10 )
 | |
| with expansion:
 | |
|   10 >= 10
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| vectors can be sized and resized
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.size() == 5 )
 | |
| with expansion:
 | |
|   5 == 5
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.capacity() >= 5 )
 | |
| with expansion:
 | |
|   5 >= 5
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| vectors can be sized and resized
 | |
|   reserving smaller does not change size or capacity
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.size() == 5 )
 | |
| with expansion:
 | |
|   5 == 5
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
|   REQUIRE( v.capacity() >= 5 )
 | |
| with expansion:
 | |
|   5 >= 5
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| xmlentitycheck
 | |
|   embedded xml
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| 
 | |
| -------------------------------------------------------------------------------
 | |
| xmlentitycheck
 | |
|   encoded chars
 | |
| -------------------------------------------------------------------------------
 | |
| Misc.tests.cpp:<line number>
 | |
| ...............................................................................
 | |
| 
 | |
| Misc.tests.cpp:<line number>:
 | |
| PASSED:
 | |
| 
 | |
| ===============================================================================
 | |
| test cases: 189 | 135 passed |  50 failed |  4 failed as expected
 | |
| assertions: 951 | 824 passed | 106 failed | 21 failed as expected
 | |
| 
 |