false != false false != false true != true true != true !true false !true !true !trueValue false !trueValue !true !(1 == 1) false !1 == 1 !(1 == 1) false == false false == false true == true true == true !false true !false !false !falseValue true !falseValue !false !(1 == 2) true !1 == 2 !(1 == 2)
is_true<true>::value == true true == true true == is_true<true>::value true == true
is_true<false>::value == false false == false false == is_true<false>::value false == false
!is_true<false>::value true
!!is_true<true>::value true
is_true<true>::value true !is_true<false>::value !false
s == "world" "hello" == "world" s == "hello" "hello" == "hello" m_a == 2 1 == 2 m_a == 1 1 == 1
to infinity and beyond
&o1 == &o2 0x == 0x o1 == o2 {?} == {?} testStringForMatching(), AllOf( Catch::Contains( "string" ), Catch::Contains( "abc" ) ) "this string contains 'abc' as a substring" ( contains: "string" and contains: "abc" ) i++ == 7 7 == 7 i++ == 8 8 == 8 1 == 1 1 == 1 {Unknown expression after the reported line} {Unknown expression after the reported line} unexpected exception testStringForMatching(), AnyOf( Catch::Contains( "string" ), Catch::Contains( "not there" ) ) "this string contains 'abc' as a substring" ( contains: "string" or contains: "not there" ) testStringForMatching(), AnyOf( Catch::Contains( "not there" ), Catch::Contains( "string" ) ) "this string contains 'abc' as a substring" ( contains: "not there" or contains: "string" ) divide( 22, 7 ) == Approx( 3.141 ).epsilon( 0.001 ) 3.1428571429 == Approx( 3.141 ) divide( 22, 7 ) != Approx( 3.141 ).epsilon( 0.0001 ) 3.1428571429 != Approx( 3.141 ) d != Approx( 1.231 ) 1.23 != Approx( 1.231 ) d == Approx( 1.231 ).epsilon( 0.1 ) 1.23 == Approx( 1.231 ) 1.23f == Approx( 1.23f ) 1.23f == Approx( 1.2300000191 ) 0.0f == Approx( 0.0f ) 0.0f == Approx( 0.0 ) 1 == Approx( 1 ) 1 == Approx( 1.0 ) 0 == Approx( 0 ) 0 == Approx( 0.0 ) 1.0f == Approx( 1 ) 1.0f == Approx( 1.0 ) 0 == Approx( dZero) 0 == Approx( 0.0 ) 0 == Approx( dSmall ).epsilon( 0.001 ) 0 == Approx( 0.00001 ) 1.234f == Approx( dMedium ) 1.234f == Approx( 1.234 ) dMedium == Approx( 1.234f ) 1.234 == Approx( 1.2339999676 ) Catch::alwaysTrue() true
Catch::alwaysTrue() true
Catch::alwaysTrue() true
Catch::alwaysTrue() true
Catch::alwaysTrue() true
Catch::alwaysTrue() true
a true a == &foo 0x == 0x m == &S::f 0x == 0x 54 == 6*9 54 == 54 ( -1 > 2u ) true -1 > 2u -1 > 2 ( 2u < -1 ) true 2u < -1 2 < -1 ( minInt > 2u ) true minInt > 2u -2147483648 > 2 i == 1 1 == 1 ui == 2 2 == 2 l == 3 3 == 3 ul == 4 4 == 4 c == 5 5 == 5 uc == 6 6 == 6 1 == i 1 == 1 2 == ui 2 == 2 3 == l 3 == 3 4 == ul 4 == 4 5 == c 5 == 5 6 == uc 6 == 6 (std::numeric_limits<unsigned long>::max)() > ul 18446744073709551615 (0x) > 4 testStringForMatching(), Contains( "not there" ) "this string contains 'abc' as a substring" contains: "not there" throwCustom() throwCustom() custom exception - not std throwCustom() throwCustom() custom exception - not std custom std exception t == 1u {?} == 1 testStringForMatching(), EndsWith( "this" ) "this string contains 'abc' as a substring" ends with: "this" data.int_seven == 6 7 == 6 data.int_seven == 8 7 == 8 data.int_seven == 0 7 == 0 data.float_nine_point_one == Approx( 9.11f ) 9.1f == Approx( 9.1099996567 ) data.float_nine_point_one == Approx( 9.0f ) 9.1f == Approx( 9.0 ) data.float_nine_point_one == Approx( 1 ) 9.1f == Approx( 1.0 ) data.float_nine_point_one == Approx( 0 ) 9.1f == Approx( 0.0 ) data.double_pi == Approx( 3.1415 ) 3.1415926535 == Approx( 3.1415 ) data.str_hello == "goodbye" "hello" == "goodbye" data.str_hello == "hell" "hello" == "hell" data.str_hello == "hello1" "hello" == "hello1" data.str_hello.size() == 6 5 == 6 x == Approx( 1.301 ) 1.3 == Approx( 1.301 ) data.int_seven == 7 7 == 7 data.float_nine_point_one == Approx( 9.1f ) 9.1f == Approx( 9.1000003815 ) data.double_pi == Approx( 3.1415926535 ) 3.1415926535 == Approx( 3.1415926535 ) data.str_hello == "hello" "hello" == "hello" "hello" == data.str_hello "hello" == "hello" data.str_hello.size() == 5 5 == 5 x == Approx( 1.3 ) 1.3 == Approx( 1.3 ) testStringForMatching(), Equals( "this string contains 'abc' as a substring" ) "this string contains 'abc' as a substring" equals: "this string contains 'abc' as a substring" testStringForMatching(), Equals( "something else" ) "this string contains 'abc' as a substring" equals: "something else" "", Equals(nullptr) "" equals: ""
thisThrows(), "expected exception" thisThrows(), "expected exception"
thisThrows(), Equals( "expecteD Exception", Catch::CaseSensitive::No ) thisThrows(), Equals( "expecteD Exception", Catch::CaseSensitive::No )
thisThrows(), StartsWith( "expected" ) thisThrows(), StartsWith( "expected" ) thisThrows(), EndsWith( "exception" ) thisThrows(), EndsWith( "exception" ) thisThrows(), Contains( "except" ) thisThrows(), Contains( "except" ) thisThrows(), Contains( "exCept", Catch::CaseSensitive::No ) thisThrows(), Contains( "exCept", Catch::CaseSensitive::No )
thisThrows() thisThrows() expected exception thisDoesntThrow() thisDoesntThrow() thisThrows() thisThrows() expected exception This is a failure Factorial(0) == 1 1 == 1 Factorial(1) == 1 1 == 1 Factorial(2) == 2 2 == 2 Factorial(3) == 6 6 == 6 Factorial(10) == 3628800 3628800 (0x) == 3628800 (0x) i->first == i->second-1 0 == 0 i->first == i->second-1 2 == 2 multiply( i, 2 ) == i*2 2 == 2 multiply( j, 2 ) == j*2 200 == 200 multiply( i, 2 ) == i*2 4 == 4 multiply( j, 2 ) == j*2 200 == 200 multiply( i, 2 ) == i*2 6 == 6 multiply( j, 2 ) == j*2 200 == 200 multiply( i, 2 ) == i*2 8 == 8 multiply( j, 2 ) == j*2 200 == 200 multiply( i, 2 ) == i*2 10 == 10 multiply( j, 2 ) == j*2 200 == 200 multiply( i, 2 ) == i*2 30 == 30 multiply( j, 2 ) == j*2 200 == 200 multiply( i, 2 ) == i*2 40 == 40 multiply( j, 2 ) == j*2 200 == 200 multiply( i, 2 ) == i*2 42 == 42 multiply( j, 2 ) == j*2 200 == 200 multiply( i, 2 ) == i*2 72 == 72 multiply( j, 2 ) == j*2 200 == 200 multiply( i, 2 ) == i*2 2 == 2 multiply( j, 2 ) == j*2 202 == 202 multiply( i, 2 ) == i*2 4 == 4 multiply( j, 2 ) == j*2 202 == 202 multiply( i, 2 ) == i*2 6 == 6 multiply( j, 2 ) == j*2 202 == 202 multiply( i, 2 ) == i*2 8 == 8 multiply( j, 2 ) == j*2 202 == 202 multiply( i, 2 ) == i*2 10 == 10 multiply( j, 2 ) == j*2 202 == 202 multiply( i, 2 ) == i*2 30 == 30 multiply( j, 2 ) == j*2 202 == 202 multiply( i, 2 ) == i*2 40 == 40 multiply( j, 2 ) == j*2 202 == 202 multiply( i, 2 ) == i*2 42 == 42 multiply( j, 2 ) == j*2 202 == 202 multiply( i, 2 ) == i*2 72 == 72 multiply( j, 2 ) == j*2 202 == 202 multiply( i, 2 ) == i*2 2 == 2 multiply( j, 2 ) == j*2 204 == 204 multiply( i, 2 ) == i*2 4 == 4 multiply( j, 2 ) == j*2 204 == 204 multiply( i, 2 ) == i*2 6 == 6 multiply( j, 2 ) == j*2 204 == 204 multiply( i, 2 ) == i*2 8 == 8 multiply( j, 2 ) == j*2 204 == 204 multiply( i, 2 ) == i*2 10 == 10 multiply( j, 2 ) == j*2 204 == 204 multiply( i, 2 ) == i*2 30 == 30 multiply( j, 2 ) == j*2 204 == 204 multiply( i, 2 ) == i*2 40 == 40 multiply( j, 2 ) == j*2 204 == 204 multiply( i, 2 ) == i*2 42 == 42 multiply( j, 2 ) == j*2 204 == 204 multiply( i, 2 ) == i*2 72 == 72 multiply( j, 2 ) == j*2 204 == 204 multiply( i, 2 ) == i*2 2 == 2 multiply( j, 2 ) == j*2 206 == 206 multiply( i, 2 ) == i*2 4 == 4 multiply( j, 2 ) == j*2 206 == 206 multiply( i, 2 ) == i*2 6 == 6 multiply( j, 2 ) == j*2 206 == 206 multiply( i, 2 ) == i*2 8 == 8 multiply( j, 2 ) == j*2 206 == 206 multiply( i, 2 ) == i*2 10 == 10 multiply( j, 2 ) == j*2 206 == 206 multiply( i, 2 ) == i*2 30 == 30 multiply( j, 2 ) == j*2 206 == 206 multiply( i, 2 ) == i*2 40 == 40 multiply( j, 2 ) == j*2 206 == 206 multiply( i, 2 ) == i*2 42 == 42 multiply( j, 2 ) == j*2 206 == 206 multiply( i, 2 ) == i*2 72 == 72 multiply( j, 2 ) == j*2 206 == 206 multiply( i, 2 ) == i*2 2 == 2 multiply( j, 2 ) == j*2 208 == 208 multiply( i, 2 ) == i*2 4 == 4 multiply( j, 2 ) == j*2 208 == 208 multiply( i, 2 ) == i*2 6 == 6 multiply( j, 2 ) == j*2 208 == 208 multiply( i, 2 ) == i*2 8 == 8 multiply( j, 2 ) == j*2 208 == 208 multiply( i, 2 ) == i*2 10 == 10 multiply( j, 2 ) == j*2 208 == 208 multiply( i, 2 ) == i*2 30 == 30 multiply( j, 2 ) == j*2 208 == 208 multiply( i, 2 ) == i*2 40 == 40 multiply( j, 2 ) == j*2 208 == 208 multiply( i, 2 ) == i*2 42 == 42 multiply( j, 2 ) == j*2 208 == 208 multiply( i, 2 ) == i*2 72 == 72 multiply( j, 2 ) == j*2 208 == 208 multiply( i, 2 ) == i*2 2 == 2 multiply( j, 2 ) == j*2 210 == 210 multiply( i, 2 ) == i*2 4 == 4 multiply( j, 2 ) == j*2 210 == 210 multiply( i, 2 ) == i*2 6 == 6 multiply( j, 2 ) == j*2 210 == 210 multiply( i, 2 ) == i*2 8 == 8 multiply( j, 2 ) == j*2 210 == 210 multiply( i, 2 ) == i*2 10 == 10 multiply( j, 2 ) == j*2 210 == 210 multiply( i, 2 ) == i*2 30 == 30 multiply( j, 2 ) == j*2 210 == 210 multiply( i, 2 ) == i*2 40 == 40 multiply( j, 2 ) == j*2 210 == 210 multiply( i, 2 ) == i*2 42 == 42 multiply( j, 2 ) == j*2 210 == 210 multiply( i, 2 ) == i*2 72 == 72 multiply( j, 2 ) == j*2 210 == 210 multiply( i, 2 ) == i*2 2 == 2 multiply( j, 2 ) == j*2 212 == 212 multiply( i, 2 ) == i*2 4 == 4 multiply( j, 2 ) == j*2 212 == 212 multiply( i, 2 ) == i*2 6 == 6 multiply( j, 2 ) == j*2 212 == 212 multiply( i, 2 ) == i*2 8 == 8 multiply( j, 2 ) == j*2 212 == 212 multiply( i, 2 ) == i*2 10 == 10 multiply( j, 2 ) == j*2 212 == 212 multiply( i, 2 ) == i*2 30 == 30 multiply( j, 2 ) == j*2 212 == 212 multiply( i, 2 ) == i*2 40 == 40 multiply( j, 2 ) == j*2 212 == 212 multiply( i, 2 ) == i*2 42 == 42 multiply( j, 2 ) == j*2 212 == 212 multiply( i, 2 ) == i*2 72 == 72 multiply( j, 2 ) == j*2 212 == 212 multiply( i, 2 ) == i*2 2 == 2 multiply( j, 2 ) == j*2 214 == 214 multiply( i, 2 ) == i*2 4 == 4 multiply( j, 2 ) == j*2 214 == 214 multiply( i, 2 ) == i*2 6 == 6 multiply( j, 2 ) == j*2 214 == 214 multiply( i, 2 ) == i*2 8 == 8 multiply( j, 2 ) == j*2 214 == 214 multiply( i, 2 ) == i*2 10 == 10 multiply( j, 2 ) == j*2 214 == 214 multiply( i, 2 ) == i*2 30 == 30 multiply( j, 2 ) == j*2 214 == 214 multiply( i, 2 ) == i*2 40 == 40 multiply( j, 2 ) == j*2 214 == 214 multiply( i, 2 ) == i*2 42 == 42 multiply( j, 2 ) == j*2 214 == 214 multiply( i, 2 ) == i*2 72 == 72 multiply( j, 2 ) == j*2 214 == 214 this is a message this is a warning this message should be logged so should this a == 1 2 == 1 a == 2 2 == 2 this message should be logged a == 1 2 == 1 and this, but later a == 0 2 == 0 a == 2 2 == 2 data.int_seven != 7 7 != 7 data.float_nine_point_one != Approx( 9.1f ) 9.1f != Approx( 9.1000003815 ) data.double_pi != Approx( 3.1415926535 ) 3.1415926535 != Approx( 3.1415926535 ) data.str_hello != "hello" "hello" != "hello" data.str_hello.size() != 5 5 != 5 data.int_seven != 6 7 != 6 data.int_seven != 8 7 != 8 data.float_nine_point_one != Approx( 9.11f ) 9.1f != Approx( 9.1099996567 ) data.float_nine_point_one != Approx( 9.0f ) 9.1f != Approx( 9.0 ) data.float_nine_point_one != Approx( 1 ) 9.1f != Approx( 1.0 ) data.float_nine_point_one != Approx( 0 ) 9.1f != Approx( 0.0 ) data.double_pi != Approx( 3.1415 ) 3.1415926535 != Approx( 3.1415 ) data.str_hello != "goodbye" "hello" != "goodbye" data.str_hello != "hell" "hello" != "hell" data.str_hello != "hello1" "hello" != "hello1" data.str_hello.size() != 6 5 != 6
Text( testString, TextAttributes().setWidth( 80 ) ).toString() == testString "one two three four" == "one two three four" Text( testString, TextAttributes().setWidth( 18 ) ).toString() == testString "one two three four" == "one two three four"
Text( testString, TextAttributes().setWidth( 17 ) ).toString() == "one two three\nfour" "one two three four" == "one two three four" Text( testString, TextAttributes().setWidth( 16 ) ).toString() == "one two three\nfour" "one two three four" == "one two three four" Text( testString, TextAttributes().setWidth( 14 ) ).toString() == "one two three\nfour" "one two three four" == "one two three four" Text( testString, TextAttributes().setWidth( 13 ) ).toString() == "one two three\nfour" "one two three four" == "one two three four" Text( testString, TextAttributes().setWidth( 12 ) ).toString() == "one two\nthree four" "one two three four" == "one two three four"
Text( testString, TextAttributes().setWidth( 9 ) ).toString() == "one two\nthree\nfour" "one two three four" == "one two three four" Text( testString, TextAttributes().setWidth( 8 ) ).toString() == "one two\nthree\nfour" "one two three four" == "one two three four" Text( testString, TextAttributes().setWidth( 7 ) ).toString() == "one two\nthree\nfour" "one two three four" == "one two three four"
Text( testString, TextAttributes().setWidth( 6 ) ).toString() == "one\ntwo\nthree\nfour" "one two three four" == "one two three four" Text( testString, TextAttributes().setWidth( 5 ) ).toString() == "one\ntwo\nthree\nfour" "one two three four" == "one two three four"
Text( "abcdef", TextAttributes().setWidth( 4 ) ).toString() == "abc-\ndef" "abc- def" == "abc- def" Text( "abcdefg", TextAttributes().setWidth( 4 ) ).toString() == "abc-\ndefg" "abc- defg" == "abc- defg" Text( "abcdefgh", TextAttributes().setWidth( 4 ) ).toString() == "abc-\ndef-\ngh" "abc- def- gh" == "abc- def- gh" Text( testString, TextAttributes().setWidth( 4 ) ).toString() == "one\ntwo\nthr-\nee\nfour" "one two thr- ee four" == "one two thr- ee four" Text( testString, TextAttributes().setWidth( 3 ) ).toString() == "one\ntwo\nth-\nree\nfo-\nur" "one two th- ree fo- ur" == "one two th- ree fo- ur"
text.size() == 4 4 == 4 text[0] == "one" "one" == "one" text[1] == "two" "two" == "two" text[2] == "three" "three" == "three" text[3] == "four" "four" == "four"
text.toString() == " one two\n three\n four" " one two three four" == " one two three four"
Text( testString, TextAttributes().setWidth( 80 ) ).toString() == testString "one two three four" == "one two three four" Text( testString, TextAttributes().setWidth( 18 ) ).toString() == testString "one two three four" == "one two three four" Text( testString, TextAttributes().setWidth( 10 ) ).toString() == testString "one two three four" == "one two three four"
Text( "abcdef\n", TextAttributes().setWidth( 10 ) ).toString() == "abcdef\n" "abcdef " == "abcdef " Text( "abcdef", TextAttributes().setWidth( 6 ) ).toString() == "abcdef" "abcdef" == "abcdef" Text( "abcdef\n", TextAttributes().setWidth( 6 ) ).toString() == "abcdef\n" "abcdef " == "abcdef "
Text( testString, TextAttributes().setWidth( 9 ) ).toString() == "one two\nthree\nfour" "one two three four" == "one two three four" Text( testString, TextAttributes().setWidth( 8 ) ).toString() == "one two\nthree\nfour" "one two three four" == "one two three four" Text( testString, TextAttributes().setWidth( 7 ) ).toString() == "one two\nthree\nfour" "one two three four" == "one two three four"
Text( testString, TextAttributes().setWidth( 6 ) ).toString() == "one\ntwo\nthree\nfour" "one two three four" == "one two three four"
Text( testString, TextAttributes().setWidth( 15 ) ).toString() == "one two three\n four\n five\n six" "one two three four five six" == "one two three four five six"
t.toString(), EndsWith( "... message truncated due to excessive size" ) "******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ******************************************************************************- ************************ ******************************************************************************- ... message truncated due to excessive size" ends with: "... message truncated due to excessive size" testStringForMatching(), Contains( "string" ) && Contains( "abc" ) && Contains( "substring" ) && Contains( "contains" ) "this string contains 'abc' as a substring" ( contains: "string" and contains: "abc" and contains: "substring" and contains: "contains" ) testStringForMatching(), Contains( "string" ) || Contains( "different" ) || Contains( "random" ) "this string contains 'abc' as a substring" ( contains: "string" or contains: "different" or contains: "random" ) testStringForMatching2(), Contains( "string" ) || Contains( "different" ) || Contains( "random" ) "some completely different text that contains one common word" ( contains: "string" or contains: "different" or contains: "random" ) testStringForMatching(), ( Contains( "string" ) || Contains( "different" ) ) && Contains( "substring" ) "this string contains 'abc' as a substring" ( ( contains: "string" or contains: "different" ) and contains: "substring" ) testStringForMatching(), ( Contains( "string" ) || Contains( "different" ) ) && Contains( "random" ) "this string contains 'abc' as a substring" ( ( contains: "string" or contains: "different" ) and contains: "random" ) testStringForMatching(), !Contains( "different" ) "this string contains 'abc' as a substring" not contains: "different" testStringForMatching(), !Contains( "substring" ) "this string contains 'abc' as a substring" not contains: "substring" thisThrows(), "expected exception" thisThrows(), "expected exception" thisThrows(), "should fail" expected exception This one ran custom exception thisFunctionNotImplemented( 7 ) thisFunctionNotImplemented( 7 ) True true !False true !False !false 0x == o 3221225472 (0x) == {?} data.int_seven > 7 7 > 7 data.int_seven < 7 7 < 7 data.int_seven > 8 7 > 8 data.int_seven < 6 7 < 6 data.int_seven < 0 7 < 0 data.int_seven < -1 7 < -1 data.int_seven >= 8 7 >= 8 data.int_seven <= 6 7 <= 6 data.float_nine_point_one < 9 9.1f < 9 data.float_nine_point_one > 10 9.1f > 10 data.float_nine_point_one > 9.2 9.1f > 9.2 data.str_hello > "hello" "hello" > "hello" data.str_hello < "hello" "hello" < "hello" data.str_hello > "hellp" "hello" > "hellp" data.str_hello > "z" "hello" > "z" data.str_hello < "hellm" "hello" < "hellm" data.str_hello < "a" "hello" < "a" data.str_hello >= "z" "hello" >= "z" data.str_hello <= "a" "hello" <= "a" data.int_seven < 8 7 < 8 data.int_seven > 6 7 > 6 data.int_seven > 0 7 > 0 data.int_seven > -1 7 > -1 data.int_seven >= 7 7 >= 7 data.int_seven >= 6 7 >= 6 data.int_seven <= 7 7 <= 7 data.int_seven <= 8 7 <= 8 data.float_nine_point_one > 9 9.1f > 9 data.float_nine_point_one < 10 9.1f < 10 data.float_nine_point_one < 9.2 9.1f < 9.2 data.str_hello <= "hello" "hello" <= "hello" data.str_hello >= "hello" "hello" >= "hello" data.str_hello < "hellp" "hello" < "hellp" data.str_hello < "zebra" "hello" < "zebra" data.str_hello > "hellm" "hello" > "hellm" data.str_hello > "a" "hello" > "a"
Message from section one
Message from section two
spec.hasFilters() == false false == false spec.matches( tcA ) == false false == false spec.matches( tcB ) == false false == false
spec.hasFilters() == false false == false spec.matches(tcA ) == false false == false spec.matches( tcB ) == false false == false
spec.hasFilters() == false false == false spec.matches( tcA ) == false false == false spec.matches( tcB ) == false false == false
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == true true == true
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == true true == true
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == true true == true spec.matches( tcC ) == false false == false
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == false false == false spec.matches( tcC ) == true true == true spec.matches( tcD ) == false false == false parseTestSpec( "*a" ).matches( tcA ) == true true == true
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == false false == false spec.matches( tcC ) == true true == true spec.matches( tcD ) == false false == false parseTestSpec( "a*" ).matches( tcA ) == true true == true
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == false false == false spec.matches( tcC ) == true true == true spec.matches( tcD ) == true true == true parseTestSpec( "*a*" ).matches( tcA ) == true true == true
spec.hasFilters() == true true == true spec.matches( tcA ) == true true == true spec.matches( tcB ) == false false == false
spec.hasFilters() == true true == true spec.matches( tcA ) == true true == true spec.matches( tcB ) == false false == false
spec.hasFilters() == true true == true spec.matches( tcA ) == true true == true spec.matches( tcB ) == false false == false
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == false false == false spec.matches( tcC ) == true true == true spec.matches( tcD ) == true true == true
spec.hasFilters() == true true == true spec.matches( tcA ) == true true == true spec.matches( tcB ) == true true == true spec.matches( tcC ) == true true == true spec.matches( tcD ) == true true == true
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == true true == true spec.matches( tcC ) == false false == false
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == true true == true spec.matches( tcC ) == true true == true
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == false false == false spec.matches( tcC ) == true true == true
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == false false == false spec.matches( tcC ) == true true == true
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == false false == false spec.matches( tcC ) == true true == true spec.matches( tcD ) == false false == false
spec.hasFilters() == true true == true spec.matches( tcA ) == true true == true spec.matches( tcB ) == false false == false spec.matches( tcC ) == true true == true
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == true true == true spec.matches( tcC ) == false false == false
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == false false == false spec.matches( tcC ) == false false == false spec.matches( tcD ) == true true == true
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == false false == false spec.matches( tcC ) == false false == false spec.matches( tcD ) == true true == true
spec.hasFilters() == true true == true spec.matches( tcA ) == true true == true spec.matches( tcB ) == false false == false spec.matches( tcC ) == true true == true spec.matches( tcD ) == true true == true
spec.hasFilters() == true true == true spec.matches( tcA ) == true true == true spec.matches( tcB ) == true true == true spec.matches( tcC ) == false false == false spec.matches( tcD ) == false false == false
spec.hasFilters() == true true == true spec.matches( tcA ) == true true == true spec.matches( tcB ) == true true == true spec.matches( tcC ) == true true == true spec.matches( tcD ) == false false == false
spec.hasFilters() == true true == true spec.matches( tcA ) == true true == true spec.matches( tcB ) == true true == true spec.matches( tcC ) == true true == true spec.matches( tcD ) == false false == false
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == false false == false spec.matches( tcC ) == true true == true spec.matches( tcD ) == false false == false
spec.hasFilters() == false false == false spec.matches( tcA ) == false false == false spec.matches( tcB ) == false false == false spec.matches( tcC ) == false false == false spec.matches( tcD ) == false false == false
spec.hasFilters() == false false == false spec.matches( tcA ) == false false == false spec.matches( tcB ) == false false == false spec.matches( tcC ) == false false == false spec.matches( tcD ) == false false == false
spec.hasFilters() == true true == true spec.matches( tcA ) == false false == false spec.matches( tcB ) == false false == false spec.matches( tcC ) == false false == false spec.matches( tcD ) == true true == true
(std::pair<int, int>( 1, 2 )) == aNicePair std::pair( 1, 2 ) == std::pair( 1, 2 ) p == nullptr NULL == nullptr p == pNULL NULL == NULL p != nullptr 0x != nullptr cp != nullptr 0x != nullptr cpc != nullptr 0x != nullptr returnsNull() == nullptr {null string} == nullptr returnsConstNull() == nullptr {null string} == nullptr nullptr != p nullptr != 0x actual address of p: 0x toString(p): 0x
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.shouldDebugBreak == false false == false config.abortAfter == -1 -1 == -1 config.noThrow == false false == false config.reporterNames.empty() true
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) cfg.testSpec().matches( fakeTestCase( "notIncluded" ) ) == false false == false cfg.testSpec().matches( fakeTestCase( "test1" ) ) true
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) cfg.testSpec().matches( fakeTestCase( "test1" ) ) == false false == false cfg.testSpec().matches( fakeTestCase( "alwaysIncluded" ) ) true
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) cfg.testSpec().matches( fakeTestCase( "test1" ) ) == false false == false cfg.testSpec().matches( fakeTestCase( "alwaysIncluded" ) ) true
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.reporterNames[0] == "console" "console" == "console"
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.reporterNames[0] == "xml" "xml" == "xml"
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.reporterNames.size() == 2 2 == 2 config.reporterNames[0] == "xml" "xml" == "xml" config.reporterNames[1] == "junit" "junit" == "junit"
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.reporterNames[0] == "junit" "junit" == "junit"
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.shouldDebugBreak == true true == true
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.shouldDebugBreak true
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.abortAfter == 1 1 == 1
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.abortAfter == 2 2 == 2
parseIntoConfigAndReturnError( argv, config ), Contains( "greater than zero" ) "Value after -x or --abortAfter must be greater than zero - while parsing: (-x, --abortx <no. failures>)" contains: "greater than zero"
parseIntoConfigAndReturnError( argv, config ), Contains( "-x" ) "Unable to convert oops to destination type - while parsing: (-x, --abortx <no. failures>)" contains: "-x"
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.noThrow == true true == true
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.noThrow == true true == true
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.outputFilename == "filename.ext" "filename.ext" == "filename.ext"
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.outputFilename == "filename.ext" "filename.ext" == "filename.ext"
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.abortAfter == 1 1 == 1 config.shouldDebugBreak true config.noThrow == true true == true
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.useColour == UseColour::Auto 0 == 0
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.useColour == UseColour::Auto 0 == 0
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.useColour == UseColour::Yes 1 == 1
parseIntoConfig( argv, config ) parseIntoConfig( argv, config ) config.useColour == UseColour::No 2 == 2
parseIntoConfig( argv, config ), Contains( "colour mode must be one of" ) parseIntoConfig( argv, config ), Contains( "colour mode must be one of" )
i < 10 0 < 10 i < 10 1 < 10 i < 10 2 < 10 i < 10 3 < 10 i < 10 4 < 10 i < 10 5 < 10 i < 10 6 < 10 i < 10 7 < 10 i < 10 8 < 10 i < 10 9 < 10 current counter 10 i := 10 i < 10 10 < 10
before == 0 0 == 0
after > before 1 > 0
itDoesThis() true
itDoesThat() true
v.size() == 0 0 == 0
v.size() == 10 10 == 10 v.capacity() >= 10 10 >= 10
v.size() == 5 5 == 5 v.capacity() >= 10 10 >= 10
v.size() == 0 0 == 0
v.capacity() >= 10 10 >= 10 v.size() == 0 0 == 0
d == Approx( 1.23 ) 1.23 == Approx( 1.23 ) d != Approx( 1.22 ) 1.23 != Approx( 1.22 ) d != Approx( 1.24 ) 1.23 != Approx( 1.24 ) Approx( d ) == 1.23 Approx( 1.23 ) == 1.23 Approx( d ) != 1.22 Approx( 1.23 ) != 1.22 Approx( d ) != 1.24 Approx( 1.23 ) != 1.24
testStringForMatching(), StartsWith( "string" ) "this string contains 'abc' as a substring" starts with: "string" testStringForMatching(), Contains( "string" ) "this string contains 'abc' as a substring" contains: "string" testStringForMatching(), Contains( "abc" ) "this string contains 'abc' as a substring" contains: "abc" testStringForMatching(), StartsWith( "this" ) "this string contains 'abc' as a substring" starts with: "this" testStringForMatching(), EndsWith( "substring" ) "this string contains 'abc' as a substring" ends with: "substring" s1 == s2 "if ($b == 10) { $a = 20; }" == "if ($b == 10) { $a = 20; } "
what, Contains( "[@zzz]" ) "error: tag alias, "[@zzz]" already registered. First seen at file:2 Redefined at file:10" contains: "[@zzz]" what, Contains( "file" ) "error: tag alias, "[@zzz]" already registered. First seen at file:2 Redefined at file:10" contains: "file" what, Contains( "2" ) "error: tag alias, "[@zzz]" already registered. First seen at file:2 Redefined at file:10" contains: "2" what, Contains( "10" ) "error: tag alias, "[@zzz]" already registered. First seen at file:2 Redefined at file:10" contains: "10"
registry.add( "[no ampersat]", "", Catch::SourceLineInfo( "file", 3 ) ) registry.add( "[no ampersat]", "", Catch::SourceLineInfo( "file", 3 ) ) registry.add( "[the @ is not at the start]", "", Catch::SourceLineInfo( "file", 3 ) ) registry.add( "[the @ is not at the start]", "", Catch::SourceLineInfo( "file", 3 ) ) registry.add( "@no square bracket at start]", "", Catch::SourceLineInfo( "file", 3 ) ) registry.add( "@no square bracket at start]", "", Catch::SourceLineInfo( "file", 3 ) ) registry.add( "[@no square bracket at end", "", Catch::SourceLineInfo( "file", 3 ) ) registry.add( "[@no square bracket at end", "", Catch::SourceLineInfo( "file", 3 ) )
0x == bit30and31 3221225472 (0x) == 3221225472 Text( "hi there" ).toString() == "hi there" "hi there" == "hi there" Text( "hi there", narrow ).toString() == "hi\nthere" "hi there" == "hi there" 1 == 2 1 == 2 testCase.isOpen() true s1.isOpen() true
s1.isSuccessfullyCompleted() true testCase.isComplete() == false false == false ctx.completedCycle() true testCase.isSuccessfullyCompleted() true
testCase.isOpen() true s1.isOpen() true
s1.isComplete() true s1.isSuccessfullyCompleted() == false false == false testCase.isComplete() == false false == false ctx.completedCycle() true testCase.isSuccessfullyCompleted() == false false == false
testCase2.isOpen() true s1b.isOpen() == false false == false ctx.completedCycle() true testCase.isComplete() true testCase.isSuccessfullyCompleted() true
testCase.isOpen() true s1.isOpen() true
s1.isComplete() true s1.isSuccessfullyCompleted() == false false == false testCase.isComplete() == false false == false ctx.completedCycle() true testCase.isSuccessfullyCompleted() == false false == false
testCase2.isOpen() true s1b.isOpen() == false false == false s2.isOpen() true ctx.completedCycle() true testCase.isComplete() true testCase.isSuccessfullyCompleted() true
testCase.isOpen() true s1.isOpen() true
s2.isOpen() == false false == false testCase.isComplete() == false false == false
testCase2.isOpen() true s1b.isOpen() == false false == false s2b.isOpen() true ctx.completedCycle() == false false == false
ctx.completedCycle() true s2b.isSuccessfullyCompleted() true testCase2.isComplete() == false false == false testCase2.isSuccessfullyCompleted() true
testCase.isOpen() true s1.isOpen() true
s2.isOpen() == false false == false testCase.isComplete() == false false == false
testCase2.isOpen() true s1b.isOpen() == false false == false s2b.isOpen() true ctx.completedCycle() == false false == false
ctx.completedCycle() true s2b.isComplete() true s2b.isSuccessfullyCompleted() == false false == false testCase2.isSuccessfullyCompleted() == false false == false testCase3.isOpen() true s1c.isOpen() == false false == false s2c.isOpen() == false false == false testCase3.isSuccessfullyCompleted() true
testCase.isOpen() true s1.isOpen() true
s2.isOpen() true s2.isComplete() true s1.isComplete() == false false == false s1.isComplete() true testCase.isComplete() == false false == false testCase.isComplete() true
testCase.isOpen() true s1.isOpen() true
g1.isOpen() true g1.index() == 0 0 == 0 g1.isComplete() == false false == false s1.isComplete() == false false == false
s1.isComplete() == false false == false testCase.isSuccessfullyCompleted() == false false == false
testCase2.isOpen() true s1b.isOpen() true g1b.isOpen() true g1b.index() == 1 1 == 1 s1.isComplete() == false false == false s1b.isComplete() true g1b.isComplete() true testCase2.isComplete() true
testCase.isOpen() true s1.isOpen() true
g1.isOpen() true g1.index() == 0 0 == 0 g1.isComplete() == false false == false s1.isComplete() == false false == false
s2.isOpen() true s2.isComplete() true s1.isComplete() == false false == false testCase.isComplete() == false false == false
testCase2.isOpen() true s1b.isOpen() true g1b.isOpen() true g1b.index() == 1 1 == 1 s2b.isOpen() true s2b.isComplete() true g1b.isComplete() true s1b.isComplete() true testCase2.isComplete() true
testCase.isOpen() true s1.isOpen() true
g1.isOpen() true g1.index() == 0 0 == 0 g1.isComplete() == false false == false s1.isComplete() == false false == false
s2.isOpen() true s2.isComplete() true s2.isSuccessfullyCompleted() == false false == false s1.isComplete() == false false == false testCase.isComplete() == false false == false
testCase2.isOpen() true s1b.isOpen() true g1b.isOpen() true g1b.index() == 0 0 == 0 s2b.isOpen() == false false == false g1b.isComplete() == false false == false s1b.isComplete() == false false == false testCase2.isComplete() == false false == false testCase3.isOpen() true s1c.isOpen() true g1c.isOpen() true g1c.index() == 1 1 == 1 s2c.isOpen() true s2c.isComplete() true g1c.isComplete() true s1c.isComplete() true testCase3.isComplete() true
3.14 d == approx( 1.23 ) 1.23 == Approx( 1.23 ) d == approx( 1.22 ) 1.23 == Approx( 1.22 ) d == approx( 1.24 ) 1.23 == Approx( 1.24 ) d != approx( 1.25 ) 1.23 != Approx( 1.25 ) approx( d ) == 1.23 Approx( 1.23 ) == 1.23 approx( d ) == 1.22 Approx( 1.23 ) == 1.22 approx( d ) == 1.24 Approx( 1.23 ) == 1.24 approx( d ) != 1.25 Approx( 1.23 ) != 1.25
thisThrows() thisThrows() thisDoesntThrow() thisDoesntThrow() thisThrows() thisThrows() unexpected exception thisThrows() == 0 thisThrows() == 0 expected exception thisThrows() == 0 thisThrows() == 0 expected exception thisThrows() == 0 thisThrows() == 0 expected exception
unexpected exception
Uncomment the code in this test to check that it gives a sensible compiler error Uncomment the code in this test to check that it gives a sensible compiler error
encode( "normal string" ) == "normal string" "normal string" == "normal string"
encode( "" ) == "" "" == ""
encode( "smith & jones" ) == "smith &amp; jones" "smith &amp; jones" == "smith &amp; jones"
encode( "smith < jones" ) == "smith &lt; jones" "smith &lt; jones" == "smith &lt; jones"
encode( "smith > jones" ) == "smith > jones" "smith > jones" == "smith > jones" encode( "smith ]]> jones" ) == "smith ]]&gt; jones" "smith ]]&gt; jones" == "smith ]]&gt; jones"
encode( stringWithQuotes ) == stringWithQuotes "don't "quote" me on that" == "don't "quote" me on that" encode( stringWithQuotes, Catch::XmlEncode::ForAttributes ) == "don't &quot;quote&quot; me on that" "don't &quot;quote&quot; me on that" == "don't &quot;quote&quot; me on that"
encode( "[\x01]" ) == "[&#x01;]" "[&#x01;]" == "[&#x01;]"
encode( "[\x7F]" ) == "[&#x7F;]" "[&#x7F;]" == "[&#x7F;]"
x == 0 0 == 0 obj.prop != nullptr 0x != nullptr flag true testCheckedElse( true ) true flag false testCheckedElse( false ) false flag true testCheckedIf( true ) true flag false testCheckedIf( false ) false unsigned_char_var == 1 1 == 1 unsigned_short_var == 1 1 == 1 unsigned_int_var == 1 1 == 1 unsigned_long_var == 1 1 == 1 long_var == unsigned_char_var 1 == 1 long_var == unsigned_short_var 1 == 1 long_var == unsigned_int_var 1 == 1 long_var == unsigned_long_var 1 == 1
Previous info should not be seen l == std::numeric_limits<long long>::max() 9223372036854775807 (0x) == 9223372036854775807 (0x)
b > a 0 > 1
Testing if fib[0] (1) is even ( fib[i] % 2 ) == 0 1 == 0 Testing if fib[1] (1) is even ( fib[i] % 2 ) == 0 1 == 0 ( fib[i] % 2 ) == 0 0 == 0 Testing if fib[3] (3) is even ( fib[i] % 2 ) == 0 1 == 0 Testing if fib[4] (5) is even ( fib[i] % 2 ) == 0 1 == 0 ( fib[i] % 2 ) == 0 0 == 0 Testing if fib[6] (13) is even ( fib[i] % 2 ) == 0 1 == 0 Testing if fib[7] (21) is even ( fib[i] % 2 ) == 0 1 == 0
a == b 1 == 2
a != b 1 != 2
a < b 1 < 2
a != b 1 != 2 b != a 2 != 1
a != b 1 != 2
s == "7" "7" == "7" makeString( false ) != static_cast<char*>(nullptr) "valid string" != {null string} makeString( true ) == static_cast<char*>(nullptr) {null string} == {null string} ptr.get() == nullptr NULL == nullptr Catch::toString( pair ) == "{ { 42, \"Arthur\" }, { \"Ford\", 24 } }" "{ { 42, "Arthur" }, { "Ford", 24 } }" == "{ { 42, "Arthur" }, { "Ford", 24 } }" p == 0 NULL == 0
a != b 1 != 2 b != a 2 != 1
a != b 1 != 2
replaceInPlace( letters, "b", "z" ) true letters == "azcdefcg" "azcdefcg" == "azcdefcg"
replaceInPlace( letters, "c", "z" ) true letters == "abzdefzg" "abzdefzg" == "abzdefzg"
replaceInPlace( letters, "a", "z" ) true letters == "zbcdefcg" "zbcdefcg" == "zbcdefcg"
replaceInPlace( letters, "g", "z" ) true letters == "abcdefcz" "abcdefcz" == "abcdefcz"
replaceInPlace( letters, letters, "replaced" ) true letters == "replaced" "replaced" == "replaced"
!replaceInPlace( letters, "x", "z" ) !false letters == letters "abcdefcg" == "abcdefcg"
replaceInPlace( s, "'", "|'" ) true s == "didn|'t" "didn|'t" == "didn|'t"
3 false false hi i := 7 false false Catch::toString(value) == "{ 34, \"xyzzy\" }" "{ 34, "xyzzy" }" == "{ 34, "xyzzy" }" Catch::toString( value ) == "{ 34, \"xyzzy\" }" "{ 34, "xyzzy" }" == "{ 34, "xyzzy" }" Catch::toString( pr ) == "{ { \"green\", 55 } }" "{ { "green", 55 } }" == "{ { "green", 55 } }" std::string( "first" ) == "second" "first" == "second" result == "\"wide load\"" ""wide load"" == ""wide load"" result == "\"wide load\"" ""wide load"" == ""wide load"" result == "\"wide load\"" ""wide load"" == ""wide load"" result == "\"wide load\"" ""wide load"" == ""wide load"" Catch::toString( item ) == "StringMaker<has_maker>" "StringMaker<has_maker>" == "StringMaker<has_maker>" Catch::toString( item ) == "toString( has_maker_and_toString )" "toString( has_maker_and_toString )" == "toString( has_maker_and_toString )" Catch::toString( item ) == "toString( has_toString )" "toString( has_toString )" == "toString( has_toString )" Catch::toString( v ) == "{ StringMaker<has_maker> }" "{ StringMaker<has_maker> }" == "{ StringMaker<has_maker> }" Catch::toString( v ) == "{ StringMaker<has_maker_and_toString> }" "{ StringMaker<has_maker_and_toString> }" == "{ StringMaker<has_maker_and_toString> }" Catch::toString( v ) == "{ {?} }" "{ {?} }" == "{ {?} }" Catch::toString(e0) == "E2/V0" "E2/V0" == "E2/V0" Catch::toString(e1) == "E2/V1" "E2/V1" == "E2/V1" Catch::toString(e3) == "Unknown enum value 10" "Unknown enum value 10" == "Unknown enum value 10" Catch::toString(e0) == "0" "0" == "0" Catch::toString(e1) == "1" "1" == "1" Catch::toString(e0) == "E2{0}" "E2{0}" == "E2{0}" Catch::toString(e1) == "E2{1}" "E2{1}" == "E2{1}" Catch::toString(e0) == "0" "0" == "0" Catch::toString(e1) == "1" "1" == "1" "{ }" == Catch::toString(type{}) "{ }" == "{ }" "{ }" == Catch::toString(value) "{ }" == "{ }" "1.2f" == Catch::toString(float(1.2)) "1.2f" == "1.2f" "{ 1.2f, 0 }" == Catch::toString(type{1.2,0}) "{ 1.2f, 0 }" == "{ 1.2f, 0 }" "{ 0 }" == Catch::toString(type{0}) "{ 0 }" == "{ 0 }" "{ nullptr, 42, \"Catch me\" }" == Catch::toString(value) "{ nullptr, 42, "Catch me" }" == "{ nullptr, 42, "Catch me" }" "{ \"hello\", \"world\" }" == Catch::toString(type{"hello","world"}) "{ "hello", "world" }" == "{ "hello", "world" }" "{ { 42 }, { }, 1.2f }" == Catch::toString(value) "{ { 42 }, { }, 1.2f }" == "{ { 42 }, { }, 1.2f }" Catch::toString(v) == "{ }" "{ }" == "{ }" Catch::toString(v) == "{ { \"hello\" }, { \"world\" } }" "{ { "hello" }, { "world" } }" == "{ { "hello" }, { "world" } }" Catch::toString(vv) == "{ }" "{ }" == "{ }" Catch::toString(vv) == "{ 42 }" "{ 42 }" == "{ 42 }" Catch::toString(vv) == "{ 42, 250 }" "{ 42, 250 }" == "{ 42, 250 }" Catch::toString(vv) == "{ }" "{ }" == "{ }" Catch::toString(vv) == "{ 42 }" "{ 42 }" == "{ 42 }" Catch::toString(vv) == "{ 42, 250 }" "{ 42, 250 }" == "{ 42, 250 }" Catch::toString(vv) == "{ }" "{ }" == "{ }" Catch::toString(vv) == "{ \"hello\" }" "{ "hello" }" == "{ "hello" }" Catch::toString(vv) == "{ \"hello\", \"world\" }" "{ "hello", "world" }" == "{ "hello", "world" }" v.size() == 5 5 == 5 v.capacity() >= 5 5 >= 5
v.size() == 10 10 == 10 v.capacity() >= 10 10 >= 10
v.size() == 5 5 == 5 v.capacity() >= 5 5 >= 5
v.size() == 0 0 == 0 v.capacity() >= 5 5 >= 5
v.capacity() == 0 0 == 0
v.size() == 5 5 == 5 v.capacity() >= 5 5 >= 5
v.size() == 5 5 == 5 v.capacity() >= 10 10 >= 10
v.size() == 5 5 == 5 v.capacity() >= 5 5 >= 5
v.size() == 5 5 == 5 v.capacity() >= 5 5 >= 5