mirror of
https://github.com/catchorg/Catch2.git
synced 2024-11-30 01:03:30 +01:00
6685 lines
196 KiB
Plaintext
6685 lines
196 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:
|
|
|
|
-------------------------------------------------------------------------------
|
|
Tabs and newlines show in output
|
|
-------------------------------------------------------------------------------
|
|
MiscTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
MiscTests.cpp:<line number>: FAILED:
|
|
CHECK( s1 == s2 )
|
|
with expansion:
|
|
"if ($b == 10) {
|
|
$a= 20;
|
|
}"
|
|
==
|
|
"if ($b == 10) {
|
|
$a = 20;
|
|
}
|
|
"
|
|
|
|
-------------------------------------------------------------------------------
|
|
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
|
|
|
|
-------------------------------------------------------------------------------
|
|
null_ptr
|
|
-------------------------------------------------------------------------------
|
|
TrickyTests.cpp:<line number>
|
|
...............................................................................
|
|
|
|
TrickyTests.cpp:<line number>:
|
|
PASSED:
|
|
REQUIRE( ptr.get() == nullptr )
|
|
with expansion:
|
|
__null == nullptr
|
|
|
|
-------------------------------------------------------------------------------
|
|
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
|
|
|
|
===============================================================================
|
|
127 test cases - 54 failed (648 assertions - 111 failed)
|
|
|