mirror of
https://github.com/catchorg/Catch2.git
synced 2024-12-24 12:03:29 +01:00
a020865990
When the section tracking code was rewritten a while back to simplify and iron out some bugs the order of evaluation was changed so that each new section was skipped on the first run through. This had unwelcome consequences for some people. This commit restores the original semantics (while maintaining the simpler, less buggy, new code).
6655 lines
195 KiB
Plaintext
6655 lines
195 KiB
Plaintext
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
CatchSelfTest is a <version> host application.
|
|
Run with -? for options
|
|
|
|
-------------------------------------------------------------------------------
|
|
Some simple comparisons between doubles
|
|
-------------------------------------------------------------------------------
|
|
ApproxTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( d == Approx( 1.23 ) )
|
|
with expansion:
|
|
1.23 == Approx( 1.23 )
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( d != Approx( 1.22 ) )
|
|
with expansion:
|
|
1.23 != Approx( 1.22 )
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( d != Approx( 1.24 ) )
|
|
with expansion:
|
|
1.23 != Approx( 1.24 )
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( Approx( d ) == 1.23 )
|
|
with expansion:
|
|
Approx( 1.23 ) == 1.23
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( Approx( d ) != 1.22 )
|
|
with expansion:
|
|
Approx( 1.23 ) != 1.22
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( Approx( d ) != 1.24 )
|
|
with expansion:
|
|
Approx( 1.23 ) != 1.24
|
|
|
|
-------------------------------------------------------------------------------
|
|
Approximate comparisons with different epsilons
|
|
-------------------------------------------------------------------------------
|
|
ApproxTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( d != Approx( 1.231 ) )
|
|
with expansion:
|
|
1.23 != Approx( 1.231 )
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( d == Approx( 1.231 ).epsilon( 0.1 ) )
|
|
with expansion:
|
|
1.23 == Approx( 1.231 )
|
|
|
|
-------------------------------------------------------------------------------
|
|
Approximate comparisons with floats
|
|
-------------------------------------------------------------------------------
|
|
ApproxTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 1.23f == Approx( 1.23f ) )
|
|
with expansion:
|
|
1.23 == Approx( 1.2300000191 )
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 0.0f == Approx( 0.0f ) )
|
|
with expansion:
|
|
0 == Approx( 0.0 )
|
|
|
|
-------------------------------------------------------------------------------
|
|
Approximate comparisons with ints
|
|
-------------------------------------------------------------------------------
|
|
ApproxTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 1 == Approx( 1 ) )
|
|
with expansion:
|
|
1 == Approx( 1.0 )
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 0 == Approx( 0 ) )
|
|
with expansion:
|
|
0 == Approx( 0.0 )
|
|
|
|
-------------------------------------------------------------------------------
|
|
Approximate comparisons with mixed numeric types
|
|
-------------------------------------------------------------------------------
|
|
ApproxTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 1.0f == Approx( 1 ) )
|
|
with expansion:
|
|
1 == Approx( 1.0 )
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 0 == Approx( dZero) )
|
|
with expansion:
|
|
0 == Approx( 0.0 )
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 0 == Approx( dSmall ).epsilon( 0.001 ) )
|
|
with expansion:
|
|
0 == Approx( 0.00001 )
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 1.234f == Approx( dMedium ) )
|
|
with expansion:
|
|
1.234 == Approx( 1.234 )
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( dMedium == Approx( 1.234f ) )
|
|
with expansion:
|
|
1.234 == Approx( 1.2339999676 )
|
|
|
|
-------------------------------------------------------------------------------
|
|
Use a custom approx
|
|
-------------------------------------------------------------------------------
|
|
ApproxTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( d == approx( 1.23 ) )
|
|
with expansion:
|
|
1.23 == Approx( 1.23 )
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( d == approx( 1.22 ) )
|
|
with expansion:
|
|
1.23 == Approx( 1.22 )
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( d == approx( 1.24 ) )
|
|
with expansion:
|
|
1.23 == Approx( 1.24 )
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( d != approx( 1.25 ) )
|
|
with expansion:
|
|
1.23 != Approx( 1.25 )
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( approx( d ) == 1.23 )
|
|
with expansion:
|
|
Approx( 1.23 ) == 1.23
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( approx( d ) == 1.22 )
|
|
with expansion:
|
|
Approx( 1.23 ) == 1.22
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( approx( d ) == 1.24 )
|
|
with expansion:
|
|
Approx( 1.23 ) == 1.24
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( approx( d ) != 1.25 )
|
|
with expansion:
|
|
Approx( 1.23 ) != 1.25
|
|
|
|
-------------------------------------------------------------------------------
|
|
Approximate PI
|
|
-------------------------------------------------------------------------------
|
|
ApproxTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( divide( 22, 7 ) == Approx( 3.141 ).epsilon( 0.001 ) )
|
|
with expansion:
|
|
3.1428571429 == Approx( 3.141 )
|
|
|
|
ApproxTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( divide( 22, 7 ) != Approx( 3.141 ).epsilon( 0.0001 ) )
|
|
with expansion:
|
|
3.1428571429 != Approx( 3.141 )
|
|
|
|
-------------------------------------------------------------------------------
|
|
A METHOD_AS_TEST_CASE based test run that succeeds
|
|
-------------------------------------------------------------------------------
|
|
ClassTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ClassTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( s == "hello" )
|
|
with expansion:
|
|
"hello" == "hello"
|
|
|
|
-------------------------------------------------------------------------------
|
|
A METHOD_AS_TEST_CASE based test run that fails
|
|
-------------------------------------------------------------------------------
|
|
ClassTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ClassTests.cpp:<line number>: FAILED:
|
|
REQUIRE( s == "world" )
|
|
with expansion:
|
|
"hello" == "world"
|
|
|
|
-------------------------------------------------------------------------------
|
|
A TEST_CASE_METHOD based test run that succeeds
|
|
-------------------------------------------------------------------------------
|
|
ClassTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ClassTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( m_a == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
-------------------------------------------------------------------------------
|
|
A TEST_CASE_METHOD based test run that fails
|
|
-------------------------------------------------------------------------------
|
|
ClassTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ClassTests.cpp:<line number>: FAILED:
|
|
REQUIRE( m_a == 2 )
|
|
with expansion:
|
|
1 == 2
|
|
|
|
-------------------------------------------------------------------------------
|
|
Equality checks that should succeed
|
|
-------------------------------------------------------------------------------
|
|
ConditionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.int_seven == 7 )
|
|
with expansion:
|
|
7 == 7
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.float_nine_point_one == Approx( 9.1f ) )
|
|
with expansion:
|
|
9.1 == Approx( 9.1000003815 )
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.double_pi == Approx( 3.1415926535 ) )
|
|
with expansion:
|
|
3.1415926535 == Approx( 3.1415926535 )
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.str_hello == "hello" )
|
|
with expansion:
|
|
"hello" == "hello"
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( "hello" == data.str_hello )
|
|
with expansion:
|
|
"hello" == "hello"
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.str_hello.size() == 5 )
|
|
with expansion:
|
|
5 == 5
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( x == Approx( 1.3 ) )
|
|
with expansion:
|
|
1.3 == Approx( 1.3 )
|
|
|
|
-------------------------------------------------------------------------------
|
|
Equality checks that should fail]
|
|
-------------------------------------------------------------------------------
|
|
ConditionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.int_seven == 6 )
|
|
with expansion:
|
|
7 == 6
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.int_seven == 8 )
|
|
with expansion:
|
|
7 == 8
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.int_seven == 0 )
|
|
with expansion:
|
|
7 == 0
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.float_nine_point_one == Approx( 9.11f ) )
|
|
with expansion:
|
|
9.1 == Approx( 9.1099996567 )
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.float_nine_point_one == Approx( 9.0f ) )
|
|
with expansion:
|
|
9.1 == Approx( 9.0 )
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.float_nine_point_one == Approx( 1 ) )
|
|
with expansion:
|
|
9.1 == Approx( 1.0 )
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.float_nine_point_one == Approx( 0 ) )
|
|
with expansion:
|
|
9.1 == Approx( 0.0 )
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.double_pi == Approx( 3.1415 ) )
|
|
with expansion:
|
|
3.1415926535 == Approx( 3.1415 )
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.str_hello == "goodbye" )
|
|
with expansion:
|
|
"hello" == "goodbye"
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.str_hello == "hell" )
|
|
with expansion:
|
|
"hello" == "hell"
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.str_hello == "hello1" )
|
|
with expansion:
|
|
"hello" == "hello1"
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.str_hello.size() == 6 )
|
|
with expansion:
|
|
5 == 6
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( x == Approx( 1.301 ) )
|
|
with expansion:
|
|
1.3 == Approx( 1.301 )
|
|
|
|
-------------------------------------------------------------------------------
|
|
Inequality checks that should succeed
|
|
-------------------------------------------------------------------------------
|
|
ConditionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.int_seven != 6 )
|
|
with expansion:
|
|
7 != 6
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.int_seven != 8 )
|
|
with expansion:
|
|
7 != 8
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.float_nine_point_one != Approx( 9.11f ) )
|
|
with expansion:
|
|
9.1 != Approx( 9.1099996567 )
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.float_nine_point_one != Approx( 9.0f ) )
|
|
with expansion:
|
|
9.1 != Approx( 9.0 )
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.float_nine_point_one != Approx( 1 ) )
|
|
with expansion:
|
|
9.1 != Approx( 1.0 )
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.float_nine_point_one != Approx( 0 ) )
|
|
with expansion:
|
|
9.1 != Approx( 0.0 )
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.double_pi != Approx( 3.1415 ) )
|
|
with expansion:
|
|
3.1415926535 != Approx( 3.1415 )
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.str_hello != "goodbye" )
|
|
with expansion:
|
|
"hello" != "goodbye"
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.str_hello != "hell" )
|
|
with expansion:
|
|
"hello" != "hell"
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.str_hello != "hello1" )
|
|
with expansion:
|
|
"hello" != "hello1"
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.str_hello.size() != 6 )
|
|
with expansion:
|
|
5 != 6
|
|
|
|
-------------------------------------------------------------------------------
|
|
Inequality checks that should fails
|
|
-------------------------------------------------------------------------------
|
|
ConditionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.int_seven != 7 )
|
|
with expansion:
|
|
7 != 7
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.float_nine_point_one != Approx( 9.1f ) )
|
|
with expansion:
|
|
9.1 != Approx( 9.1000003815 )
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.double_pi != Approx( 3.1415926535 ) )
|
|
with expansion:
|
|
3.1415926535 != Approx( 3.1415926535 )
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.str_hello != "hello" )
|
|
with expansion:
|
|
"hello" != "hello"
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.str_hello.size() != 5 )
|
|
with expansion:
|
|
5 != 5
|
|
|
|
-------------------------------------------------------------------------------
|
|
Ordering comparison checks that should succeed
|
|
-------------------------------------------------------------------------------
|
|
ConditionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.int_seven < 8 )
|
|
with expansion:
|
|
7 < 8
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.int_seven > 6 )
|
|
with expansion:
|
|
7 > 6
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.int_seven > 0 )
|
|
with expansion:
|
|
7 > 0
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.int_seven > -1 )
|
|
with expansion:
|
|
7 > -1
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.int_seven >= 7 )
|
|
with expansion:
|
|
7 >= 7
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.int_seven >= 6 )
|
|
with expansion:
|
|
7 >= 6
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.int_seven <= 7 )
|
|
with expansion:
|
|
7 <= 7
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.int_seven <= 8 )
|
|
with expansion:
|
|
7 <= 8
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.float_nine_point_one > 9 )
|
|
with expansion:
|
|
9.1 > 9
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.float_nine_point_one < 10 )
|
|
with expansion:
|
|
9.1 < 10
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.float_nine_point_one < 9.2 )
|
|
with expansion:
|
|
9.1 < 9.2
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.str_hello <= "hello" )
|
|
with expansion:
|
|
"hello" <= "hello"
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.str_hello >= "hello" )
|
|
with expansion:
|
|
"hello" >= "hello"
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.str_hello < "hellp" )
|
|
with expansion:
|
|
"hello" < "hellp"
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.str_hello < "zebra" )
|
|
with expansion:
|
|
"hello" < "zebra"
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.str_hello > "hellm" )
|
|
with expansion:
|
|
"hello" > "hellm"
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( data.str_hello > "a" )
|
|
with expansion:
|
|
"hello" > "a"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Ordering comparison checks that should fail
|
|
-------------------------------------------------------------------------------
|
|
ConditionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.int_seven > 7 )
|
|
with expansion:
|
|
7 > 7
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.int_seven < 7 )
|
|
with expansion:
|
|
7 < 7
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.int_seven > 8 )
|
|
with expansion:
|
|
7 > 8
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.int_seven < 6 )
|
|
with expansion:
|
|
7 < 6
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.int_seven < 0 )
|
|
with expansion:
|
|
7 < 0
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.int_seven < -1 )
|
|
with expansion:
|
|
7 < -1
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.int_seven >= 8 )
|
|
with expansion:
|
|
7 >= 8
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.int_seven <= 6 )
|
|
with expansion:
|
|
7 <= 6
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.float_nine_point_one < 9 )
|
|
with expansion:
|
|
9.1 < 9
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.float_nine_point_one > 10 )
|
|
with expansion:
|
|
9.1 > 10
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.float_nine_point_one > 9.2 )
|
|
with expansion:
|
|
9.1 > 9.2
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.str_hello > "hello" )
|
|
with expansion:
|
|
"hello" > "hello"
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.str_hello < "hello" )
|
|
with expansion:
|
|
"hello" < "hello"
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.str_hello > "hellp" )
|
|
with expansion:
|
|
"hello" > "hellp"
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.str_hello > "z" )
|
|
with expansion:
|
|
"hello" > "z"
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.str_hello < "hellm" )
|
|
with expansion:
|
|
"hello" < "hellm"
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.str_hello < "a" )
|
|
with expansion:
|
|
"hello" < "a"
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.str_hello >= "z" )
|
|
with expansion:
|
|
"hello" >= "z"
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( data.str_hello <= "a" )
|
|
with expansion:
|
|
"hello" <= "a"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Comparisons with int literals don't warn when mixing signed/ unsigned
|
|
-------------------------------------------------------------------------------
|
|
ConditionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( i == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( ui == 2 )
|
|
with expansion:
|
|
2 == 2
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( l == 3 )
|
|
with expansion:
|
|
3 == 3
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( ul == 4 )
|
|
with expansion:
|
|
4 == 4
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( c == 5 )
|
|
with expansion:
|
|
5 == 5
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( uc == 6 )
|
|
with expansion:
|
|
6 == 6
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 1 == i )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 2 == ui )
|
|
with expansion:
|
|
2 == 2
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 3 == l )
|
|
with expansion:
|
|
3 == 3
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 4 == ul )
|
|
with expansion:
|
|
4 == 4
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 5 == c )
|
|
with expansion:
|
|
5 == 5
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 6 == uc )
|
|
with expansion:
|
|
6 == 6
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( (std::numeric_limits<unsigned long>::max)() > ul )
|
|
with expansion:
|
|
0x<hex digits> > 4
|
|
|
|
-------------------------------------------------------------------------------
|
|
comparisons between int variables
|
|
-------------------------------------------------------------------------------
|
|
ConditionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( long_var == unsigned_char_var )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( long_var == unsigned_short_var )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( long_var == unsigned_int_var )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( long_var == unsigned_long_var )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
-------------------------------------------------------------------------------
|
|
comparisons between const int variables
|
|
-------------------------------------------------------------------------------
|
|
ConditionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( unsigned_char_var == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( unsigned_short_var == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( unsigned_int_var == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( unsigned_long_var == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
-------------------------------------------------------------------------------
|
|
Comparisons between unsigned ints and negative signed ints match c++ standard
|
|
behaviour
|
|
-------------------------------------------------------------------------------
|
|
ConditionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( ( -1 > 2u ) )
|
|
with expansion:
|
|
true
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( -1 > 2u )
|
|
with expansion:
|
|
-1 > 2
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( ( 2u < -1 ) )
|
|
with expansion:
|
|
true
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( 2u < -1 )
|
|
with expansion:
|
|
2 < -1
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( ( minInt > 2u ) )
|
|
with expansion:
|
|
true
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( minInt > 2u )
|
|
with expansion:
|
|
-2147483648 > 2
|
|
|
|
-------------------------------------------------------------------------------
|
|
Comparisons between ints where one side is computed
|
|
-------------------------------------------------------------------------------
|
|
ConditionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( 54 == 6*9 )
|
|
with expansion:
|
|
54 == 54
|
|
|
|
-------------------------------------------------------------------------------
|
|
Pointers can be compared to null
|
|
-------------------------------------------------------------------------------
|
|
ConditionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( p == __null )
|
|
with expansion:
|
|
__null == 0
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( p == pNULL )
|
|
with expansion:
|
|
__null == __null
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( p != __null )
|
|
with expansion:
|
|
0x<hex digits> != 0
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( cp != __null )
|
|
with expansion:
|
|
0x<hex digits> != 0
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( cpc != __null )
|
|
with expansion:
|
|
0x<hex digits> != 0
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( returnsNull() == __null )
|
|
with expansion:
|
|
{null string} == 0
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( returnsConstNull() == __null )
|
|
with expansion:
|
|
{null string} == 0
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( __null != p )
|
|
with expansion:
|
|
0 != 0x<hex digits>
|
|
|
|
-------------------------------------------------------------------------------
|
|
'Not' checks that should succeed
|
|
-------------------------------------------------------------------------------
|
|
ConditionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( false == false )
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( true == true )
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( !false )
|
|
with expansion:
|
|
true
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE_FALSE( false )
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( !falseValue )
|
|
with expansion:
|
|
true
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE_FALSE( falseValue )
|
|
with expansion:
|
|
!false
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( !(1 == 2) )
|
|
with expansion:
|
|
true
|
|
|
|
ConditionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE_FALSE( 1 == 2 )
|
|
with expansion:
|
|
!(1 == 2)
|
|
|
|
-------------------------------------------------------------------------------
|
|
'Not' checks that should fail
|
|
-------------------------------------------------------------------------------
|
|
ConditionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( false != false )
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( true != true )
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( !true )
|
|
with expansion:
|
|
false
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK_FALSE( true )
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( !trueValue )
|
|
with expansion:
|
|
false
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK_FALSE( trueValue )
|
|
with expansion:
|
|
!true
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK( !(1 == 1) )
|
|
with expansion:
|
|
false
|
|
|
|
ConditionTests.cpp:<line number>: FAILED:
|
|
CHECK_FALSE( 1 == 1 )
|
|
with expansion:
|
|
!(1 == 1)
|
|
|
|
-------------------------------------------------------------------------------
|
|
When checked exceptions are thrown they can be expected or unexpected
|
|
-------------------------------------------------------------------------------
|
|
ExceptionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ExceptionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE_THROWS_AS( thisThrows() )
|
|
|
|
ExceptionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE_NOTHROW( thisDoesntThrow() )
|
|
|
|
ExceptionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE_THROWS( thisThrows() )
|
|
|
|
-------------------------------------------------------------------------------
|
|
Expected exceptions that don't throw or unexpected exceptions fail the test
|
|
-------------------------------------------------------------------------------
|
|
ExceptionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ExceptionTests.cpp:<line number>: FAILED:
|
|
CHECK_THROWS_AS( thisThrows() )
|
|
due to unexpected exception with message:
|
|
expected exception
|
|
|
|
ExceptionTests.cpp:<line number>: FAILED:
|
|
CHECK_THROWS_AS( thisDoesntThrow() )
|
|
because no exception was thrown where one was expected:
|
|
|
|
ExceptionTests.cpp:<line number>: FAILED:
|
|
CHECK_NOTHROW( thisThrows() )
|
|
due to unexpected exception with message:
|
|
expected exception
|
|
|
|
-------------------------------------------------------------------------------
|
|
When unchecked exceptions are thrown directly they are always failures
|
|
-------------------------------------------------------------------------------
|
|
ExceptionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ExceptionTests.cpp:<line number>: FAILED:
|
|
due to unexpected exception with message:
|
|
unexpected exception
|
|
|
|
-------------------------------------------------------------------------------
|
|
An unchecked exception reports the line of the last assertion
|
|
-------------------------------------------------------------------------------
|
|
ExceptionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ExceptionTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( 1 == 1 )
|
|
|
|
ExceptionTests.cpp:<line number>: FAILED:
|
|
{Unknown expression after the reported line}
|
|
due to unexpected exception with message:
|
|
unexpected exception
|
|
|
|
-------------------------------------------------------------------------------
|
|
When unchecked exceptions are thrown from sections they are always failures
|
|
section name
|
|
-------------------------------------------------------------------------------
|
|
ExceptionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ExceptionTests.cpp:<line number>: FAILED:
|
|
due to unexpected exception with message:
|
|
unexpected exception
|
|
|
|
-------------------------------------------------------------------------------
|
|
When unchecked exceptions are thrown from functions they are always failures
|
|
-------------------------------------------------------------------------------
|
|
ExceptionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ExceptionTests.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
|
|
-------------------------------------------------------------------------------
|
|
ExceptionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ExceptionTests.cpp:<line number>: FAILED:
|
|
REQUIRE( thisThrows() == 0 )
|
|
due to unexpected exception with message:
|
|
expected exception
|
|
|
|
-------------------------------------------------------------------------------
|
|
When unchecked exceptions are thrown during a CHECK the test should abort and
|
|
fail
|
|
-------------------------------------------------------------------------------
|
|
ExceptionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ExceptionTests.cpp:<line number>: FAILED:
|
|
CHECK( thisThrows() == 0 )
|
|
due to unexpected exception with message:
|
|
expected exception
|
|
|
|
-------------------------------------------------------------------------------
|
|
When unchecked exceptions are thrown, but caught, they do not affect the test
|
|
-------------------------------------------------------------------------------
|
|
ExceptionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
|
|
No assertions in test case 'When unchecked exceptions are thrown, but caught, they do not affect the test'
|
|
|
|
-------------------------------------------------------------------------------
|
|
Unexpected custom exceptions can be translated
|
|
-------------------------------------------------------------------------------
|
|
ExceptionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ExceptionTests.cpp:<line number>: FAILED:
|
|
due to unexpected exception with message:
|
|
custom exception
|
|
|
|
-------------------------------------------------------------------------------
|
|
Custom exceptions can be translated when testing for nothrow
|
|
-------------------------------------------------------------------------------
|
|
ExceptionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ExceptionTests.cpp:<line number>: FAILED:
|
|
REQUIRE_NOTHROW( throwCustom() )
|
|
due to unexpected exception with message:
|
|
custom exception - not std
|
|
|
|
-------------------------------------------------------------------------------
|
|
Custom exceptions can be translated when testing for throwing as something else
|
|
-------------------------------------------------------------------------------
|
|
ExceptionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ExceptionTests.cpp:<line number>: FAILED:
|
|
REQUIRE_THROWS_AS( throwCustom() )
|
|
due to unexpected exception with message:
|
|
custom exception - not std
|
|
|
|
-------------------------------------------------------------------------------
|
|
Unexpected exceptions can be translated
|
|
-------------------------------------------------------------------------------
|
|
ExceptionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ExceptionTests.cpp:<line number>: FAILED:
|
|
due to unexpected exception with message:
|
|
3.14
|
|
|
|
-------------------------------------------------------------------------------
|
|
NotImplemented exception
|
|
-------------------------------------------------------------------------------
|
|
ExceptionTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
ExceptionTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE_THROWS( thisFunctionNotImplemented( 7 ) )
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
2 == 2
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
200 == 200
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
4 == 4
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
200 == 200
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
6 == 6
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
200 == 200
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
8 == 8
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
200 == 200
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
10 == 10
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
200 == 200
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
30 == 30
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
200 == 200
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
40 == 40
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
200 == 200
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
42 == 42
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
200 == 200
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
72 == 72
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
200 == 200
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
2 == 2
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
202 == 202
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
4 == 4
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
202 == 202
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
6 == 6
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
202 == 202
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
8 == 8
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
202 == 202
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
10 == 10
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
202 == 202
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
30 == 30
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
202 == 202
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
40 == 40
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
202 == 202
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
42 == 42
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
202 == 202
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
72 == 72
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
202 == 202
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
2 == 2
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
204 == 204
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
4 == 4
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
204 == 204
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
6 == 6
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
204 == 204
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
8 == 8
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
204 == 204
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
10 == 10
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
204 == 204
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
30 == 30
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
204 == 204
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
40 == 40
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
204 == 204
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
42 == 42
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
204 == 204
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
72 == 72
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
204 == 204
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
2 == 2
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
206 == 206
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
4 == 4
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
206 == 206
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
6 == 6
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
206 == 206
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
8 == 8
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
206 == 206
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
10 == 10
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
206 == 206
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
30 == 30
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
206 == 206
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
40 == 40
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
206 == 206
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
42 == 42
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
206 == 206
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
72 == 72
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
206 == 206
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
2 == 2
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
208 == 208
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
4 == 4
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
208 == 208
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
6 == 6
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
208 == 208
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
8 == 8
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
208 == 208
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
10 == 10
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
208 == 208
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
30 == 30
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
208 == 208
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
40 == 40
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
208 == 208
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
42 == 42
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
208 == 208
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
72 == 72
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
208 == 208
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
2 == 2
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
210 == 210
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
4 == 4
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
210 == 210
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
6 == 6
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
210 == 210
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
8 == 8
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
210 == 210
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
10 == 10
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
210 == 210
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
30 == 30
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
210 == 210
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
40 == 40
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
210 == 210
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
42 == 42
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
210 == 210
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
72 == 72
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
210 == 210
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
2 == 2
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
212 == 212
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
4 == 4
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
212 == 212
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
6 == 6
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
212 == 212
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
8 == 8
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
212 == 212
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
10 == 10
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
212 == 212
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
30 == 30
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
212 == 212
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
40 == 40
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
212 == 212
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
42 == 42
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
212 == 212
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
72 == 72
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
212 == 212
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
2 == 2
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
214 == 214
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
4 == 4
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
214 == 214
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
6 == 6
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
214 == 214
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
8 == 8
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
214 == 214
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
10 == 10
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
214 == 214
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
30 == 30
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
214 == 214
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
40 == 40
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
214 == 214
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
42 == 42
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
214 == 214
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generators over two ranges
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( i, 2 ) == i*2 )
|
|
with expansion:
|
|
72 == 72
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( multiply( j, 2 ) == j*2 )
|
|
with expansion:
|
|
214 == 214
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generator over a range of pairs
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( i->first == i->second-1 )
|
|
with expansion:
|
|
0 == 0
|
|
|
|
-------------------------------------------------------------------------------
|
|
Generator over a range of pairs
|
|
-------------------------------------------------------------------------------
|
|
GeneratorTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
GeneratorTests.cpp:<line number>:
|
|
PASSED:
|
|
CATCH_REQUIRE( i->first == i->second-1 )
|
|
with expansion:
|
|
2 == 2
|
|
|
|
-------------------------------------------------------------------------------
|
|
INFO and WARN do not abort tests
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MessageTests.cpp:<line number>:
|
|
warning:
|
|
this is a message
|
|
this is a warning
|
|
|
|
|
|
No assertions in test case 'INFO and WARN do not abort tests'
|
|
|
|
-------------------------------------------------------------------------------
|
|
SUCCEED counts as a test pass
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MessageTests.cpp:<line number>:
|
|
PASSED:
|
|
with message:
|
|
this is a success
|
|
|
|
-------------------------------------------------------------------------------
|
|
INFO gets logged on failure
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MessageTests.cpp:<line number>: FAILED:
|
|
REQUIRE( a == 1 )
|
|
with expansion:
|
|
2 == 1
|
|
with messages:
|
|
this message should be logged
|
|
so should this
|
|
|
|
-------------------------------------------------------------------------------
|
|
INFO gets logged on failure, even if captured before successful assertions
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MessageTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( a == 2 )
|
|
with expansion:
|
|
2 == 2
|
|
with message:
|
|
this message may be logged later
|
|
|
|
MessageTests.cpp:<line number>: FAILED:
|
|
CHECK( a == 1 )
|
|
with expansion:
|
|
2 == 1
|
|
with message:
|
|
this message should be logged
|
|
|
|
MessageTests.cpp:<line number>: FAILED:
|
|
CHECK( a == 0 )
|
|
with expansion:
|
|
2 == 0
|
|
with message:
|
|
and this, but later
|
|
|
|
MessageTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( a == 2 )
|
|
with expansion:
|
|
2 == 2
|
|
with message:
|
|
but not this
|
|
|
|
-------------------------------------------------------------------------------
|
|
FAIL aborts the test
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MessageTests.cpp:<line number>: FAILED:
|
|
explicitly with message:
|
|
This is a failure
|
|
|
|
-------------------------------------------------------------------------------
|
|
FAIL does not require an argument
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MessageTests.cpp:<line number>: FAILED:
|
|
|
|
-------------------------------------------------------------------------------
|
|
SUCCESS does not require an argument
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MessageTests.cpp:<line number>:
|
|
PASSED:
|
|
|
|
-------------------------------------------------------------------------------
|
|
Output from all sections is reported
|
|
one
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MessageTests.cpp:<line number>: FAILED:
|
|
explicitly with message:
|
|
Message from section one
|
|
|
|
-------------------------------------------------------------------------------
|
|
Output from all sections is reported
|
|
two
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MessageTests.cpp:<line number>: FAILED:
|
|
explicitly with message:
|
|
Message from section two
|
|
|
|
Message from section one
|
|
-------------------------------------------------------------------------------
|
|
Standard output from all sections is reported
|
|
one
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
|
|
No assertions in section 'one'
|
|
|
|
Message from section two
|
|
-------------------------------------------------------------------------------
|
|
Standard output from all sections is reported
|
|
two
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
|
|
No assertions in section 'two'
|
|
|
|
-------------------------------------------------------------------------------
|
|
SCOPED_INFO is reset for each loop
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MessageTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( i < 10 )
|
|
with expansion:
|
|
0 < 10
|
|
with messages:
|
|
current counter 0
|
|
i := 0
|
|
|
|
MessageTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( i < 10 )
|
|
with expansion:
|
|
1 < 10
|
|
with messages:
|
|
current counter 1
|
|
i := 1
|
|
|
|
MessageTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( i < 10 )
|
|
with expansion:
|
|
2 < 10
|
|
with messages:
|
|
current counter 2
|
|
i := 2
|
|
|
|
MessageTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( i < 10 )
|
|
with expansion:
|
|
3 < 10
|
|
with messages:
|
|
current counter 3
|
|
i := 3
|
|
|
|
MessageTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( i < 10 )
|
|
with expansion:
|
|
4 < 10
|
|
with messages:
|
|
current counter 4
|
|
i := 4
|
|
|
|
MessageTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( i < 10 )
|
|
with expansion:
|
|
5 < 10
|
|
with messages:
|
|
current counter 5
|
|
i := 5
|
|
|
|
MessageTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( i < 10 )
|
|
with expansion:
|
|
6 < 10
|
|
with messages:
|
|
current counter 6
|
|
i := 6
|
|
|
|
MessageTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( i < 10 )
|
|
with expansion:
|
|
7 < 10
|
|
with messages:
|
|
current counter 7
|
|
i := 7
|
|
|
|
MessageTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( i < 10 )
|
|
with expansion:
|
|
8 < 10
|
|
with messages:
|
|
current counter 8
|
|
i := 8
|
|
|
|
MessageTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( i < 10 )
|
|
with expansion:
|
|
9 < 10
|
|
with messages:
|
|
current counter 9
|
|
i := 9
|
|
|
|
MessageTests.cpp:<line number>: FAILED:
|
|
REQUIRE( i < 10 )
|
|
with expansion:
|
|
10 < 10
|
|
with messages:
|
|
current counter 10
|
|
i := 10
|
|
|
|
-------------------------------------------------------------------------------
|
|
The NO_FAIL macro reports a failure but does not fail the test
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MessageTests.cpp:<line number>:
|
|
FAILED - but was ok:
|
|
CHECK_NOFAIL( 1 == 2 )
|
|
|
|
|
|
No assertions in test case 'The NO_FAIL macro reports a failure but does not fail the test'
|
|
|
|
-------------------------------------------------------------------------------
|
|
just info
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
|
|
No assertions in test case 'just info'
|
|
|
|
-------------------------------------------------------------------------------
|
|
just failure
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MessageTests.cpp:<line number>: FAILED:
|
|
explicitly with message:
|
|
Previous info should not be seen
|
|
|
|
-------------------------------------------------------------------------------
|
|
sends information to INFO
|
|
-------------------------------------------------------------------------------
|
|
MessageTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MessageTests.cpp:<line number>: FAILED:
|
|
REQUIRE( false )
|
|
with messages:
|
|
hi
|
|
i := 7
|
|
|
|
-------------------------------------------------------------------------------
|
|
random SECTION tests
|
|
s1
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( a != b )
|
|
with expansion:
|
|
1 != 2
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( b != a )
|
|
with expansion:
|
|
2 != 1
|
|
|
|
-------------------------------------------------------------------------------
|
|
random SECTION tests
|
|
s2
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( a != b )
|
|
with expansion:
|
|
1 != 2
|
|
|
|
-------------------------------------------------------------------------------
|
|
nested SECTION tests
|
|
s1
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( a != b )
|
|
with expansion:
|
|
1 != 2
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( b != a )
|
|
with expansion:
|
|
2 != 1
|
|
|
|
-------------------------------------------------------------------------------
|
|
nested SECTION tests
|
|
s1
|
|
s2
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( a != b )
|
|
with expansion:
|
|
1 != 2
|
|
|
|
-------------------------------------------------------------------------------
|
|
more nested SECTION tests
|
|
s1
|
|
s2
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
REQUIRE( a == b )
|
|
with expansion:
|
|
1 == 2
|
|
|
|
-------------------------------------------------------------------------------
|
|
even more nested SECTION tests
|
|
c
|
|
d (leaf)
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
|
|
No assertions in section 'd (leaf)'
|
|
|
|
-------------------------------------------------------------------------------
|
|
even more nested SECTION tests
|
|
c
|
|
e (leaf)
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
|
|
No assertions in section 'e (leaf)'
|
|
|
|
-------------------------------------------------------------------------------
|
|
even more nested SECTION tests
|
|
f (leaf)
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
|
|
No assertions in section 'f (leaf)'
|
|
|
|
-------------------------------------------------------------------------------
|
|
looped SECTION tests
|
|
s1
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
CHECK( b > a )
|
|
with expansion:
|
|
0 > 1
|
|
|
|
-------------------------------------------------------------------------------
|
|
looped tests
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
CHECK( ( fib[i] % 2 ) == 0 )
|
|
with expansion:
|
|
1 == 0
|
|
with message:
|
|
Testing if fib[0] (1) is even
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
CHECK( ( fib[i] % 2 ) == 0 )
|
|
with expansion:
|
|
1 == 0
|
|
with message:
|
|
Testing if fib[1] (1) is even
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( ( fib[i] % 2 ) == 0 )
|
|
with expansion:
|
|
0 == 0
|
|
with message:
|
|
Testing if fib[2] (2) is even
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
CHECK( ( fib[i] % 2 ) == 0 )
|
|
with expansion:
|
|
1 == 0
|
|
with message:
|
|
Testing if fib[3] (3) is even
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
CHECK( ( fib[i] % 2 ) == 0 )
|
|
with expansion:
|
|
1 == 0
|
|
with message:
|
|
Testing if fib[4] (5) is even
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( ( fib[i] % 2 ) == 0 )
|
|
with expansion:
|
|
0 == 0
|
|
with message:
|
|
Testing if fib[5] (8) is even
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
CHECK( ( fib[i] % 2 ) == 0 )
|
|
with expansion:
|
|
1 == 0
|
|
with message:
|
|
Testing if fib[6] (13) is even
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
CHECK( ( fib[i] % 2 ) == 0 )
|
|
with expansion:
|
|
1 == 0
|
|
with message:
|
|
Testing if fib[7] (21) is even
|
|
|
|
A string sent directly to stdout
|
|
A string sent directly to stderr
|
|
-------------------------------------------------------------------------------
|
|
Sends stuff to stdout and stderr
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
|
|
No assertions in test case 'Sends stuff to stdout and stderr'
|
|
|
|
-------------------------------------------------------------------------------
|
|
null strings
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( makeString( false ) != static_cast<char*>(__null) )
|
|
with expansion:
|
|
"valid string" != {null string}
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( makeString( true ) == static_cast<char*>(__null) )
|
|
with expansion:
|
|
{null string} == {null string}
|
|
|
|
-------------------------------------------------------------------------------
|
|
checkedIf
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECKED_IF( flag )
|
|
with expansion:
|
|
true
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( testCheckedIf( true ) )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
checkedIf, failing
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
CHECKED_IF( flag )
|
|
with expansion:
|
|
false
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
REQUIRE( testCheckedIf( false ) )
|
|
with expansion:
|
|
false
|
|
|
|
-------------------------------------------------------------------------------
|
|
checkedElse
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECKED_ELSE( flag )
|
|
with expansion:
|
|
true
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( testCheckedElse( true ) )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
checkedElse, failing
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
CHECKED_ELSE( flag )
|
|
with expansion:
|
|
false
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
REQUIRE( testCheckedElse( false ) )
|
|
with expansion:
|
|
false
|
|
|
|
-------------------------------------------------------------------------------
|
|
xmlentitycheck
|
|
embedded xml
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
|
|
No assertions in section 'embedded xml'
|
|
|
|
-------------------------------------------------------------------------------
|
|
xmlentitycheck
|
|
encoded chars
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
|
|
No assertions in section 'encoded chars'
|
|
|
|
-------------------------------------------------------------------------------
|
|
send a single char to INFO
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
REQUIRE( false )
|
|
with message:
|
|
3
|
|
|
|
-------------------------------------------------------------------------------
|
|
atomic if
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( x == 0 )
|
|
with expansion:
|
|
0 == 0
|
|
|
|
-------------------------------------------------------------------------------
|
|
String matchers
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE_THAT( testStringForMatching() Contains( "string" ) )
|
|
with expansion:
|
|
"this string contains 'abc' as a substring" contains: "string"
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_THAT( testStringForMatching() Contains( "abc" ) )
|
|
with expansion:
|
|
"this string contains 'abc' as a substring" contains: "abc"
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_THAT( testStringForMatching() StartsWith( "this" ) )
|
|
with expansion:
|
|
"this string contains 'abc' as a substring" starts with: "this"
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_THAT( testStringForMatching() EndsWith( "substring" ) )
|
|
with expansion:
|
|
"this string contains 'abc' as a substring" ends with: "substring"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Contains string matcher
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
CHECK_THAT( testStringForMatching() Contains( "not there" ) )
|
|
with expansion:
|
|
"this string contains 'abc' as a substring" contains: "not there"
|
|
|
|
-------------------------------------------------------------------------------
|
|
StartsWith string matcher
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
CHECK_THAT( testStringForMatching() StartsWith( "string" ) )
|
|
with expansion:
|
|
"this string contains 'abc' as a substring" starts with: "string"
|
|
|
|
-------------------------------------------------------------------------------
|
|
EndsWith string matcher
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
CHECK_THAT( testStringForMatching() EndsWith( "this" ) )
|
|
with expansion:
|
|
"this string contains 'abc' as a substring" ends with: "this"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Equals string matcher
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
CHECK_THAT( testStringForMatching() Equals( "something else" ) )
|
|
with expansion:
|
|
"this string contains 'abc' as a substring" equals: "something else"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Equals string matcher, with NULL
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE_THAT( "" Equals(__null) )
|
|
with expansion:
|
|
"" equals: ""
|
|
|
|
-------------------------------------------------------------------------------
|
|
AllOf matcher
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_THAT( testStringForMatching() AllOf( Catch::Contains( "string" ), Catch::Contains( "abc" ) ) )
|
|
with expansion:
|
|
"this string contains 'abc' as a substring" ( contains: "string" and
|
|
contains: "abc" )
|
|
|
|
-------------------------------------------------------------------------------
|
|
AnyOf matcher
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_THAT( testStringForMatching() AnyOf( Catch::Contains( "string" ), Catch::Contains( "not there" ) ) )
|
|
with expansion:
|
|
"this string contains 'abc' as a substring" ( contains: "string" or contains:
|
|
"not there" )
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_THAT( testStringForMatching() AnyOf( Catch::Contains( "not there" ), Catch::Contains( "string" ) ) )
|
|
with expansion:
|
|
"this string contains 'abc' as a substring" ( contains: "not there" or
|
|
contains: "string" )
|
|
|
|
-------------------------------------------------------------------------------
|
|
Equals
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.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"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Factorials are computed
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( Factorial(0) == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( Factorial(1) == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( Factorial(2) == 2 )
|
|
with expansion:
|
|
2 == 2
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( Factorial(3) == 6 )
|
|
with expansion:
|
|
6 == 6
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( Factorial(10) == 3628800 )
|
|
with expansion:
|
|
0x<hex digits> == 3628800
|
|
|
|
-------------------------------------------------------------------------------
|
|
An empty test with no assertions
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
|
|
No assertions in test case 'An empty test with no assertions'
|
|
|
|
-------------------------------------------------------------------------------
|
|
Nice descriptive name
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
warning:
|
|
This one ran
|
|
|
|
|
|
No assertions in test case 'Nice descriptive name'
|
|
|
|
-------------------------------------------------------------------------------
|
|
first tag
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
|
|
No assertions in test case 'first tag'
|
|
|
|
-------------------------------------------------------------------------------
|
|
second tag
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
|
|
No assertions in test case 'second tag'
|
|
|
|
-------------------------------------------------------------------------------
|
|
vectors can be sized and resized
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.size() == 5 )
|
|
with expansion:
|
|
5 == 5
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.capacity() >= 5 )
|
|
with expansion:
|
|
5 >= 5
|
|
|
|
-------------------------------------------------------------------------------
|
|
vectors can be sized and resized
|
|
resizing bigger changes size and capacity
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.size() == 10 )
|
|
with expansion:
|
|
10 == 10
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.capacity() >= 10 )
|
|
with expansion:
|
|
10 >= 10
|
|
|
|
-------------------------------------------------------------------------------
|
|
vectors can be sized and resized
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.size() == 5 )
|
|
with expansion:
|
|
5 == 5
|
|
|
|
MiscTests.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
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.size() == 0 )
|
|
with expansion:
|
|
0 == 0
|
|
|
|
MiscTests.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
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.capacity() == 0 )
|
|
with expansion:
|
|
0 == 0
|
|
|
|
-------------------------------------------------------------------------------
|
|
vectors can be sized and resized
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.size() == 5 )
|
|
with expansion:
|
|
5 == 5
|
|
|
|
MiscTests.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
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.size() == 5 )
|
|
with expansion:
|
|
5 == 5
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.capacity() >= 10 )
|
|
with expansion:
|
|
10 >= 10
|
|
|
|
-------------------------------------------------------------------------------
|
|
vectors can be sized and resized
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.size() == 5 )
|
|
with expansion:
|
|
5 == 5
|
|
|
|
MiscTests.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
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.size() == 5 )
|
|
with expansion:
|
|
5 == 5
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.capacity() >= 5 )
|
|
with expansion:
|
|
5 >= 5
|
|
|
|
-------------------------------------------------------------------------------
|
|
A couple of nested sections followed by a failure
|
|
Outer
|
|
Inner
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
with message:
|
|
that's not flying - that's failing in style
|
|
|
|
-------------------------------------------------------------------------------
|
|
A couple of nested sections followed by a failure
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
explicitly with message:
|
|
to infinity and beyond
|
|
|
|
-------------------------------------------------------------------------------
|
|
not allowed
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>:
|
|
PASSED:
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
default - no arguments
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( config.shouldDebugBreak == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( config.abortAfter == -1 )
|
|
with expansion:
|
|
-1 == -1
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( config.noThrow == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( config.reporterName.empty() )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
test lists
|
|
1 test
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( cfg.filters().size() == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( cfg.filters()[0].shouldInclude( fakeTestCase( "notIncluded" ) ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( cfg.filters()[0].shouldInclude( fakeTestCase( "test1" ) ) )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
test lists
|
|
Specify one test case exclusion using exclude:
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( cfg.filters().size() == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( cfg.filters()[0].shouldInclude( fakeTestCase( "test1" ) ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( cfg.filters()[0].shouldInclude( fakeTestCase( "alwaysIncluded" ) ) )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
test lists
|
|
Specify one test case exclusion using ~
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( cfg.filters().size() == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( cfg.filters()[0].shouldInclude( fakeTestCase( "test1" ) ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( cfg.filters()[0].shouldInclude( fakeTestCase( "alwaysIncluded" ) ) )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
test lists
|
|
Specify two test cases using -t
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( cfg.filters().size() == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( cfg.filters()[0].shouldInclude( fakeTestCase( "notIncluded" ) ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( cfg.filters()[0].shouldInclude( fakeTestCase( "test1" ) ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( cfg.filters()[0].shouldInclude( fakeTestCase( "test2" ) ) )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
reporter
|
|
-r/console
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( config.reporterName == "console" )
|
|
with expansion:
|
|
"console" == "console"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
reporter
|
|
-r/xml
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( config.reporterName == "xml" )
|
|
with expansion:
|
|
"xml" == "xml"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
reporter
|
|
--reporter/junit
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( config.reporterName == "junit" )
|
|
with expansion:
|
|
"junit" == "junit"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
debugger
|
|
-b
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( config.shouldDebugBreak == true )
|
|
with expansion:
|
|
true == true
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
debugger
|
|
--break
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( config.shouldDebugBreak )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
abort
|
|
-a aborts after first failure
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.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
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( config.abortAfter == 2 )
|
|
with expansion:
|
|
2 == 2
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
abort
|
|
-x must be greater than zero
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE_THAT( parseIntoConfigAndReturnError( argv, config ) Contains( "greater than zero" ) )
|
|
with expansion:
|
|
"Value after -x or --abortAfter must be greater than zero
|
|
- while parsing: (-x, --abortx <no. failures>)" contains: "greater than zero"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
abort
|
|
-x must be numeric
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE_THAT( parseIntoConfigAndReturnError( argv, config ) Contains( "-x" ) )
|
|
with expansion:
|
|
"Unable to convert oops to destination type
|
|
- while parsing: (-x, --abortx <no. failures>)" contains: "-x"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
nothrow
|
|
-e
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( config.noThrow == true )
|
|
with expansion:
|
|
true == true
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
nothrow
|
|
--nothrow
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( config.noThrow == true )
|
|
with expansion:
|
|
true == true
|
|
|
|
-------------------------------------------------------------------------------
|
|
Process can be configured on command line
|
|
output filename
|
|
-o filename
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.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
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.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
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_NOTHROW( parseIntoConfig( argv, config ) )
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( config.abortAfter == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( config.shouldDebugBreak )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( config.noThrow == true )
|
|
with expansion:
|
|
true == true
|
|
|
|
-------------------------------------------------------------------------------
|
|
selftest/test filter
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( matchAny.shouldInclude( fakeTestCase( "any" ) ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( matchNone.shouldInclude( fakeTestCase( "any" ) ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( matchHidden.shouldInclude( fakeTestCase( "any" ) ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( matchNonHidden.shouldInclude( fakeTestCase( "any" ) ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( matchHidden.shouldInclude( fakeTestCase( "./any" ) ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( matchNonHidden.shouldInclude( fakeTestCase( "./any" ) ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
-------------------------------------------------------------------------------
|
|
selftest/test filters
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( matchHidden.shouldInclude( fakeTestCase( "./something" ) ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( filters.shouldInclude( fakeTestCase( "any" ) ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( filters.shouldInclude( fakeTestCase( "./something" ) ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( filters.shouldInclude( fakeTestCase( "./anything" ) ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
-------------------------------------------------------------------------------
|
|
selftest/filter/prefix wildcard
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( matchBadgers.shouldInclude( fakeTestCase( "big badger" ) ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( matchBadgers.shouldInclude( fakeTestCase( "little badgers" ) ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
-------------------------------------------------------------------------------
|
|
selftest/filter/wildcard at both ends
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( matchBadgers.shouldInclude( fakeTestCase( "big badger" ) ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( matchBadgers.shouldInclude( fakeTestCase( "little badgers" ) ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( matchBadgers.shouldInclude( fakeTestCase( "badgers are big" ) ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( matchBadgers.shouldInclude( fakeTestCase( "hedgehogs" ) ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
-------------------------------------------------------------------------------
|
|
selftest/tags
|
|
single [one] tag
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.getTestCaseInfo().description == "" )
|
|
with expansion:
|
|
"" == ""
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.hasTag( "one" ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.getTags().size() == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.matchesTags( p1 ) == true )
|
|
with expansion:
|
|
true == true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.matchesTags( p2 ) == true )
|
|
with expansion:
|
|
true == true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.matchesTags( p3 ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.matchesTags( p4 ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.matchesTags( p5 ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
-------------------------------------------------------------------------------
|
|
selftest/tags
|
|
single [two] tag
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.getTestCaseInfo().description == "" )
|
|
with expansion:
|
|
"" == ""
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.hasTag( "two" ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.getTags().size() == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.matchesTags( p1 ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.matchesTags( p2 ) == true )
|
|
with expansion:
|
|
true == true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.matchesTags( p3 ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.matchesTags( p4 ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.matchesTags( p5 ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
-------------------------------------------------------------------------------
|
|
selftest/tags
|
|
two tags
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( twoTags.getTestCaseInfo().description == "" )
|
|
with expansion:
|
|
"" == ""
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( twoTags.hasTag( "one" ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( twoTags.hasTag( "two" ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( twoTags.hasTag( "Two" ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( twoTags.hasTag( "three" ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( twoTags.getTags().size() == 2 )
|
|
with expansion:
|
|
2 == 2
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( twoTags.matchesTags( p1 ) == true )
|
|
with expansion:
|
|
true == true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( twoTags.matchesTags( p2 ) == true )
|
|
with expansion:
|
|
true == true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( twoTags.matchesTags( p3 ) == true )
|
|
with expansion:
|
|
true == true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( twoTags.matchesTags( p4 ) == true )
|
|
with expansion:
|
|
true == true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( twoTags.matchesTags( p5 ) == true )
|
|
with expansion:
|
|
true == true
|
|
|
|
-------------------------------------------------------------------------------
|
|
selftest/tags
|
|
complex
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( fakeTestCase( "test", "[one][.]" ).matchesTags( p1 ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_FALSE( fakeTestCase( "test", "[one][.]" ).matchesTags( p5 ) )
|
|
with expansion:
|
|
!false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( fakeTestCase( "test", "[three]" ).matchesTags( p4 ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( fakeTestCase( "test", "[three]" ).matchesTags( p5 ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( fakeTestCase( "test", "[three]" ).matchesTags( "[three]~[one]" ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( fakeTestCase( "test", "[unit][not_apple]" ).matchesTags( "[unit]" ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_FALSE( fakeTestCase( "test", "[unit][not_apple]" ).matchesTags( "[unit]~[not_apple]" ) )
|
|
with expansion:
|
|
!false
|
|
|
|
-------------------------------------------------------------------------------
|
|
selftest/tags
|
|
one tag with characters either side
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTagWithExtras.getTestCaseInfo().description == "1234" )
|
|
with expansion:
|
|
"1234" == "1234"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTagWithExtras.hasTag( "one" ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTagWithExtras.hasTag( "two" ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTagWithExtras.getTags().size() == 1 )
|
|
with expansion:
|
|
1 == 1
|
|
|
|
-------------------------------------------------------------------------------
|
|
selftest/tags
|
|
start of a tag, but not closed
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTagOpen.getTestCaseInfo().description == "[one" )
|
|
with expansion:
|
|
"[one" == "[one"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTagOpen.hasTag( "one" ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTagOpen.getTags().size() == 0 )
|
|
with expansion:
|
|
0 == 0
|
|
|
|
-------------------------------------------------------------------------------
|
|
selftest/tags
|
|
hidden
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.getTestCaseInfo().description == "" )
|
|
with expansion:
|
|
"" == ""
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.hasTag( "." ) )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.isHidden() )
|
|
with expansion:
|
|
true
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( oneTag.matchesTags( "~[.]" ) == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
-------------------------------------------------------------------------------
|
|
Long strings can be wrapped
|
|
plain string
|
|
No wrapping
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 80 ) ).toString() == testString )
|
|
with expansion:
|
|
"one two three four"
|
|
==
|
|
"one two three four"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 18 ) ).toString() == testString )
|
|
with expansion:
|
|
"one two three four"
|
|
==
|
|
"one two three four"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Long strings can be wrapped
|
|
plain string
|
|
Wrapped once
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 17 ) ).toString() == "one two three\nfour" )
|
|
with expansion:
|
|
"one two three
|
|
four"
|
|
==
|
|
"one two three
|
|
four"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 16 ) ).toString() == "one two three\nfour" )
|
|
with expansion:
|
|
"one two three
|
|
four"
|
|
==
|
|
"one two three
|
|
four"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 14 ) ).toString() == "one two three\nfour" )
|
|
with expansion:
|
|
"one two three
|
|
four"
|
|
==
|
|
"one two three
|
|
four"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 13 ) ).toString() == "one two three\nfour" )
|
|
with expansion:
|
|
"one two three
|
|
four"
|
|
==
|
|
"one two three
|
|
four"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 12 ) ).toString() == "one two\nthree four" )
|
|
with expansion:
|
|
"one two
|
|
three four"
|
|
==
|
|
"one two
|
|
three four"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Long strings can be wrapped
|
|
plain string
|
|
Wrapped twice
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 9 ) ).toString() == "one two\nthree\nfour" )
|
|
with expansion:
|
|
"one two
|
|
three
|
|
four"
|
|
==
|
|
"one two
|
|
three
|
|
four"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 8 ) ).toString() == "one two\nthree\nfour" )
|
|
with expansion:
|
|
"one two
|
|
three
|
|
four"
|
|
==
|
|
"one two
|
|
three
|
|
four"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 7 ) ).toString() == "one two\nthree\nfour" )
|
|
with expansion:
|
|
"one two
|
|
three
|
|
four"
|
|
==
|
|
"one two
|
|
three
|
|
four"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Long strings can be wrapped
|
|
plain string
|
|
Wrapped three times
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 6 ) ).toString() == "one\ntwo\nthree\nfour" )
|
|
with expansion:
|
|
"one
|
|
two
|
|
three
|
|
four"
|
|
==
|
|
"one
|
|
two
|
|
three
|
|
four"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 5 ) ).toString() == "one\ntwo\nthree\nfour" )
|
|
with expansion:
|
|
"one
|
|
two
|
|
three
|
|
four"
|
|
==
|
|
"one
|
|
two
|
|
three
|
|
four"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Long strings can be wrapped
|
|
plain string
|
|
Short wrap
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( "abcdef", TextAttributes().setWidth( 4 ) ).toString() == "abc-\ndef" )
|
|
with expansion:
|
|
"abc-
|
|
def"
|
|
==
|
|
"abc-
|
|
def"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( "abcdefg", TextAttributes().setWidth( 4 ) ).toString() == "abc-\ndefg" )
|
|
with expansion:
|
|
"abc-
|
|
defg"
|
|
==
|
|
"abc-
|
|
defg"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( "abcdefgh", TextAttributes().setWidth( 4 ) ).toString() == "abc-\ndef-\ngh" )
|
|
with expansion:
|
|
"abc-
|
|
def-
|
|
gh"
|
|
==
|
|
"abc-
|
|
def-
|
|
gh"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 4 ) ).toString() == "one\ntwo\nthr-\nee\nfour" )
|
|
with expansion:
|
|
"one
|
|
two
|
|
thr-
|
|
ee
|
|
four"
|
|
==
|
|
"one
|
|
two
|
|
thr-
|
|
ee
|
|
four"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 3 ) ).toString() == "one\ntwo\nth-\nree\nfo-\nur" )
|
|
with expansion:
|
|
"one
|
|
two
|
|
th-
|
|
ree
|
|
fo-
|
|
ur"
|
|
==
|
|
"one
|
|
two
|
|
th-
|
|
ree
|
|
fo-
|
|
ur"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Long strings can be wrapped
|
|
plain string
|
|
As container
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( text.size() == 4 )
|
|
with expansion:
|
|
4 == 4
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( text[0] == "one" )
|
|
with expansion:
|
|
"one" == "one"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( text[1] == "two" )
|
|
with expansion:
|
|
"two" == "two"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( text[2] == "three" )
|
|
with expansion:
|
|
"three" == "three"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( text[3] == "four" )
|
|
with expansion:
|
|
"four" == "four"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Long strings can be wrapped
|
|
plain string
|
|
Indent first line differently
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( text.toString() == " one two\n three\n four" )
|
|
with expansion:
|
|
" one two
|
|
three
|
|
four"
|
|
==
|
|
" one two
|
|
three
|
|
four"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Long strings can be wrapped
|
|
With newlines
|
|
No wrapping
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 80 ) ).toString() == testString )
|
|
with expansion:
|
|
"one two
|
|
three four"
|
|
==
|
|
"one two
|
|
three four"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 18 ) ).toString() == testString )
|
|
with expansion:
|
|
"one two
|
|
three four"
|
|
==
|
|
"one two
|
|
three four"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 10 ) ).toString() == testString )
|
|
with expansion:
|
|
"one two
|
|
three four"
|
|
==
|
|
"one two
|
|
three four"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Long strings can be wrapped
|
|
With newlines
|
|
Trailing newline
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( "abcdef\n", TextAttributes().setWidth( 10 ) ).toString() == "abcdef\n" )
|
|
with expansion:
|
|
"abcdef
|
|
"
|
|
==
|
|
"abcdef
|
|
"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( "abcdef", TextAttributes().setWidth( 6 ) ).toString() == "abcdef" )
|
|
with expansion:
|
|
"abcdef" == "abcdef"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( "abcdef\n", TextAttributes().setWidth( 6 ) ).toString() == "abcdef\n" )
|
|
with expansion:
|
|
"abcdef
|
|
"
|
|
==
|
|
"abcdef
|
|
"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Long strings can be wrapped
|
|
With newlines
|
|
Wrapped once
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 9 ) ).toString() == "one two\nthree\nfour" )
|
|
with expansion:
|
|
"one two
|
|
three
|
|
four"
|
|
==
|
|
"one two
|
|
three
|
|
four"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 8 ) ).toString() == "one two\nthree\nfour" )
|
|
with expansion:
|
|
"one two
|
|
three
|
|
four"
|
|
==
|
|
"one two
|
|
three
|
|
four"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 7 ) ).toString() == "one two\nthree\nfour" )
|
|
with expansion:
|
|
"one two
|
|
three
|
|
four"
|
|
==
|
|
"one two
|
|
three
|
|
four"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Long strings can be wrapped
|
|
With newlines
|
|
Wrapped twice
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 6 ) ).toString() == "one\ntwo\nthree\nfour" )
|
|
with expansion:
|
|
"one
|
|
two
|
|
three
|
|
four"
|
|
==
|
|
"one
|
|
two
|
|
three
|
|
four"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Long strings can be wrapped
|
|
With tabs
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( testString, TextAttributes().setWidth( 15 ) ).toString() == "one two three\n four\n five\n six" )
|
|
with expansion:
|
|
"one two three
|
|
four
|
|
five
|
|
six"
|
|
==
|
|
"one two three
|
|
four
|
|
five
|
|
six"
|
|
|
|
hello
|
|
hello
|
|
-------------------------------------------------------------------------------
|
|
Strings can be rendered with colour
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
|
|
No assertions in test case 'Strings can be rendered with colour'
|
|
|
|
-------------------------------------------------------------------------------
|
|
Text can be formatted using the Text class
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( "hi there" ).toString() == "hi there" )
|
|
with expansion:
|
|
"hi there" == "hi there"
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( Text( "hi there", narrow ).toString() == "hi\nthere" )
|
|
with expansion:
|
|
"hi
|
|
there"
|
|
==
|
|
"hi
|
|
there"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Long text is truncted
|
|
-------------------------------------------------------------------------------
|
|
TestMain.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TestMain.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_THAT( t.toString() EndsWith( "... message truncated due to excessive size" ) )
|
|
with expansion:
|
|
"***************************************************************************-
|
|
***-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
****************************************************************************-
|
|
**-
|
|
****************************************************************************-
|
|
**-
|
|
************************
|
|
... message truncated due to excessive size
|
|
|
|
-------------------------------------------------------------------------------
|
|
Parsing a std::pair
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( (std::pair<int, int>( 1, 2 )) == aNicePair )
|
|
with expansion:
|
|
std::pair( 1, 2 ) == std::pair( 1, 2 )
|
|
|
|
-------------------------------------------------------------------------------
|
|
Where the is more to the expression after the RHS[failing]
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
warning:
|
|
Uncomment the code in this test to check that it gives a sensible compiler
|
|
error
|
|
|
|
|
|
No assertions in test case 'Where the is more to the expression after the RHS[failing]'
|
|
|
|
-------------------------------------------------------------------------------
|
|
Where the LHS is not a simple value[failing]
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
warning:
|
|
Uncomment the code in this test to check that it gives a sensible compiler
|
|
error
|
|
|
|
|
|
No assertions in test case 'Where the LHS is not a simple value[failing]'
|
|
|
|
-------------------------------------------------------------------------------
|
|
A failing expression with a non streamable type is still captured[failing]
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>: FAILED:
|
|
CHECK( &o1 == &o2 )
|
|
with expansion:
|
|
0x<hex digits> == 0x<hex digits>
|
|
|
|
TrickyTests.cpp:<line number>: FAILED:
|
|
CHECK( o1 == o2 )
|
|
with expansion:
|
|
{?} == {?}
|
|
|
|
-------------------------------------------------------------------------------
|
|
string literals of different sizes can be compared[failing]
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>: FAILED:
|
|
REQUIRE( std::string( "first" ) == "second" )
|
|
with expansion:
|
|
"first" == "second"
|
|
|
|
-------------------------------------------------------------------------------
|
|
An expression with side-effects should only be evaluated once
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( i++ == 7 )
|
|
with expansion:
|
|
7 == 7
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( i++ == 8 )
|
|
with expansion:
|
|
8 == 8
|
|
|
|
-------------------------------------------------------------------------------
|
|
Operators at different namespace levels not hijacked by Koenig lookup
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 0x<hex digits> == o )
|
|
with expansion:
|
|
0x<hex digits> == {?}
|
|
|
|
-------------------------------------------------------------------------------
|
|
Demonstrate that a non-const == is not used
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( t == 1u )
|
|
with expansion:
|
|
{?} == 1
|
|
|
|
-------------------------------------------------------------------------------
|
|
Test enum bit values
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( 0x<hex digits> == bit30and31 )
|
|
with expansion:
|
|
0x<hex digits> == 3221225472
|
|
|
|
-------------------------------------------------------------------------------
|
|
boolean member
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( obj.prop != __null )
|
|
with expansion:
|
|
0x<hex digits> != 0
|
|
|
|
-------------------------------------------------------------------------------
|
|
(unimplemented) static bools can be evaluated
|
|
compare to true
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( is_true<true>::value == true )
|
|
with expansion:
|
|
true == true
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( true == is_true<true>::value )
|
|
with expansion:
|
|
true == true
|
|
|
|
-------------------------------------------------------------------------------
|
|
(unimplemented) static bools can be evaluated
|
|
compare to false
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( is_true<false>::value == false )
|
|
with expansion:
|
|
false == false
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( false == is_true<false>::value )
|
|
with expansion:
|
|
false == false
|
|
|
|
-------------------------------------------------------------------------------
|
|
(unimplemented) static bools can be evaluated
|
|
negation
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( !is_true<false>::value )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
(unimplemented) static bools can be evaluated
|
|
double negation
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( !!is_true<true>::value )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
(unimplemented) static bools can be evaluated
|
|
direct
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( is_true<true>::value )
|
|
with expansion:
|
|
true
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE_FALSE( is_true<false>::value )
|
|
with expansion:
|
|
!false
|
|
|
|
-------------------------------------------------------------------------------
|
|
Objects that evaluated in boolean contexts can be checked
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( True )
|
|
with expansion:
|
|
true
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( !False )
|
|
with expansion:
|
|
true
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_FALSE( False )
|
|
with expansion:
|
|
!false
|
|
|
|
-------------------------------------------------------------------------------
|
|
Assertions then sections
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( Catch::isTrue( true ) )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
Assertions then sections
|
|
A section
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( Catch::isTrue( true ) )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
Assertions then sections
|
|
A section
|
|
Another section
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( Catch::isTrue( true ) )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
Assertions then sections
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( Catch::isTrue( true ) )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
Assertions then sections
|
|
A section
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( Catch::isTrue( true ) )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
Assertions then sections
|
|
A section
|
|
Another other section
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( Catch::isTrue( true ) )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
non streamable - with conv. op
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( s == "7" )
|
|
with expansion:
|
|
"7" == "7"
|
|
|
|
-------------------------------------------------------------------------------
|
|
Comparing function pointers
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( a )
|
|
with expansion:
|
|
true
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( a == &foo )
|
|
with expansion:
|
|
0x<hex digits> == 0x<hex digits>
|
|
|
|
-------------------------------------------------------------------------------
|
|
Comparing member function pointers
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( m == &S::f )
|
|
with expansion:
|
|
0x<hex digits>
|
|
==
|
|
0x<hex digits>
|
|
|
|
-------------------------------------------------------------------------------
|
|
pointer to class
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( p == 0 )
|
|
with expansion:
|
|
__null == 0
|
|
|
|
-------------------------------------------------------------------------------
|
|
X/level/0/a
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
|
|
-------------------------------------------------------------------------------
|
|
X/level/0/b
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
|
|
-------------------------------------------------------------------------------
|
|
X/level/1/a
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
|
|
-------------------------------------------------------------------------------
|
|
X/level/1/b
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
|
|
-------------------------------------------------------------------------------
|
|
Anonymous test case 1
|
|
-------------------------------------------------------------------------------
|
|
VariadicMacrosTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
VariadicMacrosTests.cpp:<line number>:
|
|
PASSED:
|
|
with message:
|
|
anonymous test case
|
|
|
|
-------------------------------------------------------------------------------
|
|
Test case with one argument
|
|
-------------------------------------------------------------------------------
|
|
VariadicMacrosTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
VariadicMacrosTests.cpp:<line number>:
|
|
PASSED:
|
|
with message:
|
|
no assertions
|
|
|
|
-------------------------------------------------------------------------------
|
|
Variadic macros
|
|
Section with one argument
|
|
-------------------------------------------------------------------------------
|
|
VariadicMacrosTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
VariadicMacrosTests.cpp:<line number>:
|
|
PASSED:
|
|
with message:
|
|
no assertions
|
|
|
|
-------------------------------------------------------------------------------
|
|
Scenario: Do that thing with the thing
|
|
Given: This stuff exists
|
|
When: I do this
|
|
Then: it should do this
|
|
-------------------------------------------------------------------------------
|
|
BDDTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
BDDTests.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
|
|
-------------------------------------------------------------------------------
|
|
BDDTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
BDDTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( itDoesThat() )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
Scenario: Vector resizing affects size and capacity
|
|
Given: an empty vector
|
|
-------------------------------------------------------------------------------
|
|
BDDTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
BDDTests.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
|
|
-------------------------------------------------------------------------------
|
|
BDDTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
BDDTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.size() == 10 )
|
|
with expansion:
|
|
10 == 10
|
|
|
|
BDDTests.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
|
|
-------------------------------------------------------------------------------
|
|
BDDTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
BDDTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.size() == 5 )
|
|
with expansion:
|
|
5 == 5
|
|
|
|
BDDTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.capacity() >= 10 )
|
|
with expansion:
|
|
10 >= 10
|
|
|
|
-------------------------------------------------------------------------------
|
|
Scenario: Vector resizing affects size and capacity
|
|
Given: an empty vector
|
|
-------------------------------------------------------------------------------
|
|
BDDTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
BDDTests.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
|
|
-------------------------------------------------------------------------------
|
|
BDDTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
BDDTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.capacity() >= 10 )
|
|
with expansion:
|
|
10 >= 10
|
|
|
|
BDDTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( v.size() == 0 )
|
|
with expansion:
|
|
0 == 0
|
|
|
|
-------------------------------------------------------------------------------
|
|
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
|
|
-------------------------------------------------------------------------------
|
|
BDDTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
BDDTests.cpp:<line number>:
|
|
PASSED:
|
|
with message:
|
|
boo!
|
|
|
|
-------------------------------------------------------------------------------
|
|
section tracking
|
|
-------------------------------------------------------------------------------
|
|
SectionTrackerTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_FALSE( testCaseTracker.isCompleted() )
|
|
with expansion:
|
|
!false
|
|
|
|
-------------------------------------------------------------------------------
|
|
section tracking
|
|
test case with no sections
|
|
-------------------------------------------------------------------------------
|
|
SectionTrackerTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_FALSE( testCaseTracker.isCompleted() )
|
|
with expansion:
|
|
!false
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( testCaseTracker.isCompleted() )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
section tracking
|
|
-------------------------------------------------------------------------------
|
|
SectionTrackerTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_FALSE( testCaseTracker.isCompleted() )
|
|
with expansion:
|
|
!false
|
|
|
|
-------------------------------------------------------------------------------
|
|
section tracking
|
|
test case with one section
|
|
-------------------------------------------------------------------------------
|
|
SectionTrackerTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( testCaseTracker.enterSection( section1Name ) )
|
|
with expansion:
|
|
true
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_FALSE( testCaseTracker.isCompleted() )
|
|
with expansion:
|
|
!false
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( testCaseTracker.isCompleted() )
|
|
with expansion:
|
|
true
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_FALSE( testCaseTracker.enterSection( section1Name ) )
|
|
with expansion:
|
|
!false
|
|
|
|
-------------------------------------------------------------------------------
|
|
section tracking
|
|
-------------------------------------------------------------------------------
|
|
SectionTrackerTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_FALSE( testCaseTracker.isCompleted() )
|
|
with expansion:
|
|
!false
|
|
|
|
-------------------------------------------------------------------------------
|
|
section tracking
|
|
test case with two consecutive sections
|
|
-------------------------------------------------------------------------------
|
|
SectionTrackerTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( testCaseTracker.enterSection( section1Name ) )
|
|
with expansion:
|
|
true
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_FALSE( testCaseTracker.enterSection( section2Name ) )
|
|
with expansion:
|
|
!false
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_FALSE( testCaseTracker.isCompleted() )
|
|
with expansion:
|
|
!false
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_FALSE( testCaseTracker.enterSection( section1Name ) )
|
|
with expansion:
|
|
!false
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( testCaseTracker.enterSection( section2Name ) )
|
|
with expansion:
|
|
true
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( testCaseTracker.isCompleted() )
|
|
with expansion:
|
|
true
|
|
|
|
-------------------------------------------------------------------------------
|
|
section tracking
|
|
-------------------------------------------------------------------------------
|
|
SectionTrackerTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_FALSE( testCaseTracker.isCompleted() )
|
|
with expansion:
|
|
!false
|
|
|
|
-------------------------------------------------------------------------------
|
|
section tracking
|
|
test case with one section within another
|
|
-------------------------------------------------------------------------------
|
|
SectionTrackerTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( testCaseTracker.enterSection( section1Name ) )
|
|
with expansion:
|
|
true
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( testCaseTracker.enterSection( section2Name ) )
|
|
with expansion:
|
|
true
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK_FALSE( testCaseTracker.isCompleted() )
|
|
with expansion:
|
|
!false
|
|
|
|
SectionTrackerTests.cpp:<line number>:
|
|
PASSED:
|
|
CHECK( testCaseTracker.isCompleted() )
|
|
with expansion:
|
|
true
|
|
|
|
===============================================================================
|
|
125 test cases - 53 failed (646 assertions - 110 failed)
|
|
|