catch2/projects/SelfTest/Baselines/xml.sw.approved.txt
Phil Nash 805de43a3d Use CATCH_NULL instead of NULL
- expands to nullptr if CATCH_CONFIG_CPP11_NULLPTR is defined (see #444)
2015-07-01 07:33:27 +01:00

8227 lines
304 KiB
Plaintext

<Catch name="CatchSelfTest">
<Group name="all tests">
<TestCase name="toString(enum)">
<Expression success="true" type="CHECK" filename="projects/SelfTest/EnumToString.cpp" >
<Original>
Catch::toString(e0) == &quot;0&quot;
</Original>
<Expanded>
&quot;0&quot; == &quot;0&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/EnumToString.cpp" >
<Original>
Catch::toString(e1) == &quot;1&quot;
</Original>
<Expanded>
&quot;1&quot; == &quot;1&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="toString(enum w/operator&lt;&lt;)">
<Expression success="true" type="CHECK" filename="projects/SelfTest/EnumToString.cpp" >
<Original>
Catch::toString(e0) == &quot;E2{0}&quot;
</Original>
<Expanded>
&quot;E2{0}&quot; == &quot;E2{0}&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/EnumToString.cpp" >
<Original>
Catch::toString(e1) == &quot;E2{1}&quot;
</Original>
<Expanded>
&quot;E2{1}&quot; == &quot;E2{1}&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="toString(enum class)">
<Expression success="true" type="CHECK" filename="projects/SelfTest/EnumToString.cpp" >
<Original>
Catch::toString(e0) == &quot;0&quot;
</Original>
<Expanded>
&quot;0&quot; == &quot;0&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/EnumToString.cpp" >
<Original>
Catch::toString(e1) == &quot;1&quot;
</Original>
<Expanded>
&quot;1&quot; == &quot;1&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="toString(enum class w/operator&lt;&lt;)">
<Expression success="true" type="CHECK" filename="projects/SelfTest/EnumToString.cpp" >
<Original>
Catch::toString(e0) == &quot;E2/V0&quot;
</Original>
<Expanded>
&quot;E2/V0&quot; == &quot;E2/V0&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/EnumToString.cpp" >
<Original>
Catch::toString(e1) == &quot;E2/V1&quot;
</Original>
<Expanded>
&quot;E2/V1&quot; == &quot;E2/V1&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/EnumToString.cpp" >
<Original>
Catch::toString(e3) == &quot;Unknown enum value 10&quot;
</Original>
<Expanded>
&quot;Unknown enum value 10&quot;
==
&quot;Unknown enum value 10&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Some simple comparisons between doubles">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
d == Approx( 1.23 )
</Original>
<Expanded>
1.23 == Approx( 1.23 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
d != Approx( 1.22 )
</Original>
<Expanded>
1.23 != Approx( 1.22 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
d != Approx( 1.24 )
</Original>
<Expanded>
1.23 != Approx( 1.24 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
Approx( d ) == 1.23
</Original>
<Expanded>
Approx( 1.23 ) == 1.23
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
Approx( d ) != 1.22
</Original>
<Expanded>
Approx( 1.23 ) != 1.22
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
Approx( d ) != 1.24
</Original>
<Expanded>
Approx( 1.23 ) != 1.24
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Approximate comparisons with different epsilons">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
d != Approx( 1.231 )
</Original>
<Expanded>
1.23 != Approx( 1.231 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
d == Approx( 1.231 ).epsilon( 0.1 )
</Original>
<Expanded>
1.23 == Approx( 1.231 )
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Approximate comparisons with floats">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
1.23f == Approx( 1.23f )
</Original>
<Expanded>
1.23f == Approx( 1.2300000191 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
0.0f == Approx( 0.0f )
</Original>
<Expanded>
0.0f == Approx( 0.0 )
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Approximate comparisons with ints">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
1 == Approx( 1 )
</Original>
<Expanded>
1 == Approx( 1.0 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
0 == Approx( 0 )
</Original>
<Expanded>
0 == Approx( 0.0 )
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Approximate comparisons with mixed numeric types">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
1.0f == Approx( 1 )
</Original>
<Expanded>
1.0f == Approx( 1.0 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
0 == Approx( dZero)
</Original>
<Expanded>
0 == Approx( 0.0 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
0 == Approx( dSmall ).epsilon( 0.001 )
</Original>
<Expanded>
0 == Approx( 0.00001 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
1.234f == Approx( dMedium )
</Original>
<Expanded>
1.234f == Approx( 1.234 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
dMedium == Approx( 1.234f )
</Original>
<Expanded>
1.234 == Approx( 1.2339999676 )
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Use a custom approx">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
d == approx( 1.23 )
</Original>
<Expanded>
1.23 == Approx( 1.23 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
d == approx( 1.22 )
</Original>
<Expanded>
1.23 == Approx( 1.22 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
d == approx( 1.24 )
</Original>
<Expanded>
1.23 == Approx( 1.24 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
d != approx( 1.25 )
</Original>
<Expanded>
1.23 != Approx( 1.25 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
approx( d ) == 1.23
</Original>
<Expanded>
Approx( 1.23 ) == 1.23
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
approx( d ) == 1.22
</Original>
<Expanded>
Approx( 1.23 ) == 1.22
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
approx( d ) == 1.24
</Original>
<Expanded>
Approx( 1.23 ) == 1.24
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
approx( d ) != 1.25
</Original>
<Expanded>
Approx( 1.23 ) != 1.25
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Approximate PI">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
divide( 22, 7 ) == Approx( 3.141 ).epsilon( 0.001 )
</Original>
<Expanded>
3.1428571429 == Approx( 3.141 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ApproxTests.cpp" >
<Original>
divide( 22, 7 ) != Approx( 3.141 ).epsilon( 0.0001 )
</Original>
<Expanded>
3.1428571429 != Approx( 3.141 )
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="A METHOD_AS_TEST_CASE based test run that succeeds">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ClassTests.cpp" >
<Original>
s == &quot;hello&quot;
</Original>
<Expanded>
&quot;hello&quot; == &quot;hello&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="A METHOD_AS_TEST_CASE based test run that fails">
<Expression success="false" type="REQUIRE" filename="projects/SelfTest/ClassTests.cpp" >
<Original>
s == &quot;world&quot;
</Original>
<Expanded>
&quot;hello&quot; == &quot;world&quot;
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="A TEST_CASE_METHOD based test run that succeeds">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ClassTests.cpp" >
<Original>
m_a == 1
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="A TEST_CASE_METHOD based test run that fails">
<Expression success="false" type="REQUIRE" filename="projects/SelfTest/ClassTests.cpp" >
<Original>
m_a == 2
</Original>
<Expanded>
1 == 2
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="Equality checks that should succeed">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven == 7
</Original>
<Expanded>
7 == 7
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one == Approx( 9.1f )
</Original>
<Expanded>
9.1f == Approx( 9.1000003815 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.double_pi == Approx( 3.1415926535 )
</Original>
<Expanded>
3.1415926535 == Approx( 3.1415926535 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello == &quot;hello&quot;
</Original>
<Expanded>
&quot;hello&quot; == &quot;hello&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
&quot;hello&quot; == data.str_hello
</Original>
<Expanded>
&quot;hello&quot; == &quot;hello&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello.size() == 5
</Original>
<Expanded>
5 == 5
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
x == Approx( 1.3 )
</Original>
<Expanded>
1.3 == Approx( 1.3 )
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Equality checks that should fail">
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven == 6
</Original>
<Expanded>
7 == 6
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven == 8
</Original>
<Expanded>
7 == 8
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven == 0
</Original>
<Expanded>
7 == 0
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one == Approx( 9.11f )
</Original>
<Expanded>
9.1f == Approx( 9.1099996567 )
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one == Approx( 9.0f )
</Original>
<Expanded>
9.1f == Approx( 9.0 )
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one == Approx( 1 )
</Original>
<Expanded>
9.1f == Approx( 1.0 )
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one == Approx( 0 )
</Original>
<Expanded>
9.1f == Approx( 0.0 )
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.double_pi == Approx( 3.1415 )
</Original>
<Expanded>
3.1415926535 == Approx( 3.1415 )
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello == &quot;goodbye&quot;
</Original>
<Expanded>
&quot;hello&quot; == &quot;goodbye&quot;
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello == &quot;hell&quot;
</Original>
<Expanded>
&quot;hello&quot; == &quot;hell&quot;
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello == &quot;hello1&quot;
</Original>
<Expanded>
&quot;hello&quot; == &quot;hello1&quot;
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello.size() == 6
</Original>
<Expanded>
5 == 6
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
x == Approx( 1.301 )
</Original>
<Expanded>
1.3 == Approx( 1.301 )
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Inequality checks that should succeed">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven != 6
</Original>
<Expanded>
7 != 6
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven != 8
</Original>
<Expanded>
7 != 8
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one != Approx( 9.11f )
</Original>
<Expanded>
9.1f != Approx( 9.1099996567 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one != Approx( 9.0f )
</Original>
<Expanded>
9.1f != Approx( 9.0 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one != Approx( 1 )
</Original>
<Expanded>
9.1f != Approx( 1.0 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one != Approx( 0 )
</Original>
<Expanded>
9.1f != Approx( 0.0 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.double_pi != Approx( 3.1415 )
</Original>
<Expanded>
3.1415926535 != Approx( 3.1415 )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello != &quot;goodbye&quot;
</Original>
<Expanded>
&quot;hello&quot; != &quot;goodbye&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello != &quot;hell&quot;
</Original>
<Expanded>
&quot;hello&quot; != &quot;hell&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello != &quot;hello1&quot;
</Original>
<Expanded>
&quot;hello&quot; != &quot;hello1&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello.size() != 6
</Original>
<Expanded>
5 != 6
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Inequality checks that should fail">
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven != 7
</Original>
<Expanded>
7 != 7
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one != Approx( 9.1f )
</Original>
<Expanded>
9.1f != Approx( 9.1000003815 )
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.double_pi != Approx( 3.1415926535 )
</Original>
<Expanded>
3.1415926535 != Approx( 3.1415926535 )
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello != &quot;hello&quot;
</Original>
<Expanded>
&quot;hello&quot; != &quot;hello&quot;
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello.size() != 5
</Original>
<Expanded>
5 != 5
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="Ordering comparison checks that should succeed">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven &lt; 8
</Original>
<Expanded>
7 &lt; 8
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven > 6
</Original>
<Expanded>
7 > 6
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven > 0
</Original>
<Expanded>
7 > 0
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven > -1
</Original>
<Expanded>
7 > -1
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven >= 7
</Original>
<Expanded>
7 >= 7
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven >= 6
</Original>
<Expanded>
7 >= 6
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven &lt;= 7
</Original>
<Expanded>
7 &lt;= 7
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven &lt;= 8
</Original>
<Expanded>
7 &lt;= 8
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one > 9
</Original>
<Expanded>
9.1f > 9
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one &lt; 10
</Original>
<Expanded>
9.1f &lt; 10
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one &lt; 9.2
</Original>
<Expanded>
9.1f &lt; 9.2
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello &lt;= &quot;hello&quot;
</Original>
<Expanded>
&quot;hello&quot; &lt;= &quot;hello&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello >= &quot;hello&quot;
</Original>
<Expanded>
&quot;hello&quot; >= &quot;hello&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello &lt; &quot;hellp&quot;
</Original>
<Expanded>
&quot;hello&quot; &lt; &quot;hellp&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello &lt; &quot;zebra&quot;
</Original>
<Expanded>
&quot;hello&quot; &lt; &quot;zebra&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello > &quot;hellm&quot;
</Original>
<Expanded>
&quot;hello&quot; > &quot;hellm&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello > &quot;a&quot;
</Original>
<Expanded>
&quot;hello&quot; > &quot;a&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Ordering comparison checks that should fail">
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven > 7
</Original>
<Expanded>
7 > 7
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven &lt; 7
</Original>
<Expanded>
7 &lt; 7
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven > 8
</Original>
<Expanded>
7 > 8
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven &lt; 6
</Original>
<Expanded>
7 &lt; 6
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven &lt; 0
</Original>
<Expanded>
7 &lt; 0
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven &lt; -1
</Original>
<Expanded>
7 &lt; -1
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven >= 8
</Original>
<Expanded>
7 >= 8
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.int_seven &lt;= 6
</Original>
<Expanded>
7 &lt;= 6
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one &lt; 9
</Original>
<Expanded>
9.1f &lt; 9
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one > 10
</Original>
<Expanded>
9.1f > 10
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.float_nine_point_one > 9.2
</Original>
<Expanded>
9.1f > 9.2
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello > &quot;hello&quot;
</Original>
<Expanded>
&quot;hello&quot; > &quot;hello&quot;
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello &lt; &quot;hello&quot;
</Original>
<Expanded>
&quot;hello&quot; &lt; &quot;hello&quot;
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello > &quot;hellp&quot;
</Original>
<Expanded>
&quot;hello&quot; > &quot;hellp&quot;
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello > &quot;z&quot;
</Original>
<Expanded>
&quot;hello&quot; > &quot;z&quot;
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello &lt; &quot;hellm&quot;
</Original>
<Expanded>
&quot;hello&quot; &lt; &quot;hellm&quot;
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello &lt; &quot;a&quot;
</Original>
<Expanded>
&quot;hello&quot; &lt; &quot;a&quot;
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello >= &quot;z&quot;
</Original>
<Expanded>
&quot;hello&quot; >= &quot;z&quot;
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
data.str_hello &lt;= &quot;a&quot;
</Original>
<Expanded>
&quot;hello&quot; &lt;= &quot;a&quot;
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="Comparisons with int literals don't warn when mixing signed/ unsigned">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
i == 1
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
ui == 2
</Original>
<Expanded>
2 == 2
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
l == 3
</Original>
<Expanded>
3 == 3
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
ul == 4
</Original>
<Expanded>
4 == 4
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
c == 5
</Original>
<Expanded>
5 == 5
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
uc == 6
</Original>
<Expanded>
6 == 6
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
1 == i
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
2 == ui
</Original>
<Expanded>
2 == 2
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
3 == l
</Original>
<Expanded>
3 == 3
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
4 == ul
</Original>
<Expanded>
4 == 4
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
5 == c
</Original>
<Expanded>
5 == 5
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
6 == uc
</Original>
<Expanded>
6 == 6
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
(std::numeric_limits&lt;unsigned long>::max)() > ul
</Original>
<Expanded>
18446744073709551615 (0x<hex digits>)
>
4
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="comparisons between int variables">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
long_var == unsigned_char_var
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
long_var == unsigned_short_var
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
long_var == unsigned_int_var
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
long_var == unsigned_long_var
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="comparisons between const int variables">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
unsigned_char_var == 1
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
unsigned_short_var == 1
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
unsigned_int_var == 1
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
unsigned_long_var == 1
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Comparisons between unsigned ints and negative signed ints match c++ standard behaviour">
<Expression success="true" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
( -1 > 2u )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
-1 > 2u
</Original>
<Expanded>
-1 > 2
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
( 2u &lt; -1 )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
2u &lt; -1
</Original>
<Expanded>
2 &lt; -1
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
( minInt > 2u )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
minInt > 2u
</Original>
<Expanded>
-2147483648 > 2
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Comparisons between ints where one side is computed">
<Expression success="true" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
54 == 6*9
</Original>
<Expanded>
54 == 54
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Pointers can be compared to null">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
p == nullptr
</Original>
<Expanded>
NULL == nullptr
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
p == pNULL
</Original>
<Expanded>
NULL == NULL
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
p != nullptr
</Original>
<Expanded>
0x<hex digits> != nullptr
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
cp != nullptr
</Original>
<Expanded>
0x<hex digits> != nullptr
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
cpc != nullptr
</Original>
<Expanded>
0x<hex digits> != nullptr
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
returnsNull() == nullptr
</Original>
<Expanded>
{null string} == nullptr
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
returnsConstNull() == nullptr
</Original>
<Expanded>
{null string} == nullptr
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
nullptr != p
</Original>
<Expanded>
nullptr != 0x<hex digits>
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="'Not' checks that should succeed">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
false == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
true == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
!false
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE_FALSE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
!false
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
!falseValue
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE_FALSE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
!falseValue
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
!(1 == 2)
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE_FALSE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
!1 == 2
</Original>
<Expanded>
!(1 == 2)
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="'Not' checks that should fail">
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
false != false
</Original>
<Expanded>
false != false
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
true != true
</Original>
<Expanded>
true != true
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
!true
</Original>
<Expanded>
false
</Expanded>
</Expression>
<Expression success="false" type="CHECK_FALSE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
!true
</Original>
<Expanded>
!true
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
!trueValue
</Original>
<Expanded>
false
</Expanded>
</Expression>
<Expression success="false" type="CHECK_FALSE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
!trueValue
</Original>
<Expanded>
!true
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
!(1 == 1)
</Original>
<Expanded>
false
</Expanded>
</Expression>
<Expression success="false" type="CHECK_FALSE" filename="projects/SelfTest/ConditionTests.cpp" >
<Original>
!1 == 1
</Original>
<Expanded>
!(1 == 1)
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="When checked exceptions are thrown they can be expected or unexpected">
<Expression success="true" type="REQUIRE_THROWS_AS" filename="projects/SelfTest/ExceptionTests.cpp" >
<Original>
thisThrows()
</Original>
<Expanded>
thisThrows()
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE_NOTHROW" filename="projects/SelfTest/ExceptionTests.cpp" >
<Original>
thisDoesntThrow()
</Original>
<Expanded>
thisDoesntThrow()
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE_THROWS" filename="projects/SelfTest/ExceptionTests.cpp" >
<Original>
thisThrows()
</Original>
<Expanded>
thisThrows()
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Expected exceptions that don't throw or unexpected exceptions fail the test">
<Expression success="false" type="CHECK_THROWS_AS" filename="projects/SelfTest/ExceptionTests.cpp" >
<Original>
thisThrows()
</Original>
<Expanded>
thisThrows()
</Expanded>
<Exception filename="projects/SelfTest/ExceptionTests.cpp" >
expected exception
</Exception>
</Expression>
<Expression success="false" type="CHECK_THROWS_AS" filename="projects/SelfTest/ExceptionTests.cpp" >
<Original>
thisDoesntThrow()
</Original>
<Expanded>
thisDoesntThrow()
</Expanded>
</Expression>
<Expression success="false" type="CHECK_NOTHROW" filename="projects/SelfTest/ExceptionTests.cpp" >
<Original>
thisThrows()
</Original>
<Expanded>
thisThrows()
</Expanded>
<Exception filename="projects/SelfTest/ExceptionTests.cpp" >
expected exception
</Exception>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="When unchecked exceptions are thrown directly they are always failures">
<Exception filename="projects/SelfTest/ExceptionTests.cpp" >
unexpected exception
</Exception>
<OverallResult success="false"/>
</TestCase>
<TestCase name="An unchecked exception reports the line of the last assertion">
<Expression success="true" type="CHECK" filename="projects/SelfTest/ExceptionTests.cpp" >
<Original>
1 == 1
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<Expression success="false" filename="projects/SelfTest/ExceptionTests.cpp" >
<Original>
{Unknown expression after the reported line}
</Original>
<Expanded>
{Unknown expression after the reported line}
</Expanded>
<Exception filename="projects/SelfTest/ExceptionTests.cpp" >
unexpected exception
</Exception>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="When unchecked exceptions are thrown from sections they are always failures">
<Section name="section name">
<Exception filename="projects/SelfTest/ExceptionTests.cpp" >
unexpected exception
</Exception>
<OverallResults successes="0" failures="1" expectedFailures="0"/>
</Section>
<OverallResult success="false"/>
</TestCase>
<TestCase name="When unchecked exceptions are thrown from functions they are always failures">
<Expression success="false" type="CHECK" filename="projects/SelfTest/ExceptionTests.cpp" >
<Original>
thisThrows() == 0
</Original>
<Expanded>
thisThrows() == 0
</Expanded>
<Exception filename="projects/SelfTest/ExceptionTests.cpp" >
expected exception
</Exception>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="When unchecked exceptions are thrown during a REQUIRE the test should abort fail">
<Expression success="false" type="REQUIRE" filename="projects/SelfTest/ExceptionTests.cpp" >
<Original>
thisThrows() == 0
</Original>
<Expanded>
thisThrows() == 0
</Expanded>
<Exception filename="projects/SelfTest/ExceptionTests.cpp" >
expected exception
</Exception>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="When unchecked exceptions are thrown during a CHECK the test should abort and fail">
<Expression success="false" type="CHECK" filename="projects/SelfTest/ExceptionTests.cpp" >
<Original>
thisThrows() == 0
</Original>
<Expanded>
thisThrows() == 0
</Expanded>
<Exception filename="projects/SelfTest/ExceptionTests.cpp" >
expected exception
</Exception>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="When unchecked exceptions are thrown, but caught, they do not affect the test">
<OverallResult success="false"/>
</TestCase>
<TestCase name="Unexpected custom exceptions can be translated">
<Exception filename="projects/SelfTest/ExceptionTests.cpp" >
custom exception
</Exception>
<OverallResult success="false"/>
</TestCase>
<TestCase name="Custom exceptions can be translated when testing for nothrow">
<Expression success="false" type="REQUIRE_NOTHROW" filename="projects/SelfTest/ExceptionTests.cpp" >
<Original>
throwCustom()
</Original>
<Expanded>
throwCustom()
</Expanded>
<Exception filename="projects/SelfTest/ExceptionTests.cpp" >
custom exception - not std
</Exception>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="Custom exceptions can be translated when testing for throwing as something else">
<Expression success="false" type="REQUIRE_THROWS_AS" filename="projects/SelfTest/ExceptionTests.cpp" >
<Original>
throwCustom()
</Original>
<Expanded>
throwCustom()
</Expanded>
<Exception filename="projects/SelfTest/ExceptionTests.cpp" >
custom exception - not std
</Exception>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="Unexpected exceptions can be translated">
<Exception filename="projects/SelfTest/ExceptionTests.cpp" >
3.14
</Exception>
<OverallResult success="false"/>
</TestCase>
<TestCase name="NotImplemented exception">
<Expression success="true" type="REQUIRE_THROWS" filename="projects/SelfTest/ExceptionTests.cpp" >
<Original>
thisFunctionNotImplemented( 7 )
</Original>
<Expanded>
thisFunctionNotImplemented( 7 )
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Generators over two ranges">
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
2 == 2
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
200 == 200
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
4 == 4
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
200 == 200
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
6 == 6
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
200 == 200
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
8 == 8
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
200 == 200
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
10 == 10
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
200 == 200
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
30 == 30
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
200 == 200
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
40 == 40
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
200 == 200
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
42 == 42
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
200 == 200
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
72 == 72
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
200 == 200
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
2 == 2
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
202 == 202
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
4 == 4
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
202 == 202
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
6 == 6
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
202 == 202
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
8 == 8
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
202 == 202
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
10 == 10
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
202 == 202
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
30 == 30
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
202 == 202
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
40 == 40
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
202 == 202
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
42 == 42
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
202 == 202
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
72 == 72
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
202 == 202
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
2 == 2
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
204 == 204
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
4 == 4
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
204 == 204
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
6 == 6
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
204 == 204
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
8 == 8
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
204 == 204
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
10 == 10
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
204 == 204
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
30 == 30
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
204 == 204
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
40 == 40
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
204 == 204
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
42 == 42
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
204 == 204
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
72 == 72
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
204 == 204
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
2 == 2
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
206 == 206
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
4 == 4
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
206 == 206
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
6 == 6
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
206 == 206
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
8 == 8
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
206 == 206
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
10 == 10
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
206 == 206
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
30 == 30
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
206 == 206
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
40 == 40
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
206 == 206
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
42 == 42
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
206 == 206
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
72 == 72
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
206 == 206
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
2 == 2
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
208 == 208
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
4 == 4
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
208 == 208
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
6 == 6
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
208 == 208
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
8 == 8
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
208 == 208
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
10 == 10
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
208 == 208
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
30 == 30
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
208 == 208
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
40 == 40
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
208 == 208
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
42 == 42
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
208 == 208
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
72 == 72
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
208 == 208
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
2 == 2
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
210 == 210
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
4 == 4
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
210 == 210
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
6 == 6
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
210 == 210
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
8 == 8
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
210 == 210
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
10 == 10
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
210 == 210
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
30 == 30
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
210 == 210
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
40 == 40
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
210 == 210
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
42 == 42
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
210 == 210
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
72 == 72
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
210 == 210
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
2 == 2
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
212 == 212
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
4 == 4
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
212 == 212
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
6 == 6
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
212 == 212
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
8 == 8
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
212 == 212
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
10 == 10
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
212 == 212
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
30 == 30
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
212 == 212
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
40 == 40
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
212 == 212
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
42 == 42
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
212 == 212
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
72 == 72
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
212 == 212
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
2 == 2
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
214 == 214
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
4 == 4
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
214 == 214
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
6 == 6
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
214 == 214
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
8 == 8
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
214 == 214
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
10 == 10
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
214 == 214
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
30 == 30
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
214 == 214
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
40 == 40
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
214 == 214
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
42 == 42
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
214 == 214
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( i, 2 ) == i*2
</Original>
<Expanded>
72 == 72
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
multiply( j, 2 ) == j*2
</Original>
<Expanded>
214 == 214
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Generator over a range of pairs">
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
i->first == i->second-1
</Original>
<Expanded>
0 == 0
</Expanded>
</Expression>
<Expression success="true" type="CATCH_REQUIRE" filename="projects/SelfTest/GeneratorTests.cpp" >
<Original>
i->first == i->second-1
</Original>
<Expanded>
2 == 2
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="INFO and WARN do not abort tests">
<Info>
this is a message
</Info>
<Warning>
this is a warning
</Warning>
<OverallResult success="false"/>
</TestCase>
<TestCase name="SUCCEED counts as a test pass">
<OverallResult success="true"/>
</TestCase>
<TestCase name="INFO gets logged on failure">
<Info>
this message should be logged
</Info>
<Info>
so should this
</Info>
<Expression success="false" type="REQUIRE" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
a == 1
</Original>
<Expanded>
2 == 1
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="INFO gets logged on failure, even if captured before successful assertions">
<Expression success="true" type="CHECK" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
a == 2
</Original>
<Expanded>
2 == 2
</Expanded>
</Expression>
<Info>
this message should be logged
</Info>
<Expression success="false" type="CHECK" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
a == 1
</Original>
<Expanded>
2 == 1
</Expanded>
</Expression>
<Info>
and this, but later
</Info>
<Expression success="false" type="CHECK" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
a == 0
</Original>
<Expanded>
2 == 0
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
a == 2
</Original>
<Expanded>
2 == 2
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="FAIL aborts the test">
<Failure>
This is a failure
</Failure>
<OverallResult success="false"/>
</TestCase>
<TestCase name="FAIL does not require an argument">
<Failure/>
<OverallResult success="false"/>
</TestCase>
<TestCase name="SUCCESS does not require an argument">
<OverallResult success="true"/>
</TestCase>
<TestCase name="Output from all sections is reported">
<Section name="one">
<Failure>
Message from section one
</Failure>
<OverallResults successes="0" failures="1" expectedFailures="0"/>
</Section>
<Section name="two">
<Failure>
Message from section two
</Failure>
<OverallResults successes="0" failures="1" expectedFailures="0"/>
</Section>
<OverallResult success="false"/>
</TestCase>
<TestCase name="Standard output from all sections is reported">
<Section name="one">
<OverallResults successes="0" failures="1" expectedFailures="0"/>
</Section>
<Section name="two">
<OverallResults successes="0" failures="1" expectedFailures="0"/>
</Section>
<OverallResult success="false"/>
</TestCase>
<TestCase name="SCOPED_INFO is reset for each loop">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
i &lt; 10
</Original>
<Expanded>
0 &lt; 10
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
i &lt; 10
</Original>
<Expanded>
1 &lt; 10
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
i &lt; 10
</Original>
<Expanded>
2 &lt; 10
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
i &lt; 10
</Original>
<Expanded>
3 &lt; 10
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
i &lt; 10
</Original>
<Expanded>
4 &lt; 10
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
i &lt; 10
</Original>
<Expanded>
5 &lt; 10
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
i &lt; 10
</Original>
<Expanded>
6 &lt; 10
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
i &lt; 10
</Original>
<Expanded>
7 &lt; 10
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
i &lt; 10
</Original>
<Expanded>
8 &lt; 10
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
i &lt; 10
</Original>
<Expanded>
9 &lt; 10
</Expanded>
</Expression>
<Info>
current counter 10
</Info>
<Info>
i := 10
</Info>
<Expression success="false" type="REQUIRE" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
i &lt; 10
</Original>
<Expanded>
10 &lt; 10
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="The NO_FAIL macro reports a failure but does not fail the test">
<Expression success="false" type="CHECK_NOFAIL" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
1 == 2
</Original>
<Expanded>
1 == 2
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="just info">
<OverallResult success="false"/>
</TestCase>
<TestCase name="just failure">
<Failure>
Previous info should not be seen
</Failure>
<OverallResult success="false"/>
</TestCase>
<TestCase name="sends information to INFO">
<Info>
hi
</Info>
<Info>
i := 7
</Info>
<Expression success="false" type="REQUIRE" filename="projects/SelfTest/MessageTests.cpp" >
<Original>
false
</Original>
<Expanded>
false
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="Pointers can be converted to strings">
<Warning>
actual address of p: 0x<hex digits>
</Warning>
<Warning>
toString(p): 0x<hex digits>
</Warning>
<OverallResult success="false"/>
</TestCase>
<TestCase name="random SECTION tests">
<Section name="s1" description="doesn't equal">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
a != b
</Original>
<Expanded>
1 != 2
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
b != a
</Original>
<Expanded>
2 != 1
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="s2" description="not equal">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
a != b
</Original>
<Expanded>
1 != 2
</Expanded>
</Expression>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<TestCase name="nested SECTION tests">
<Section name="s1" description="doesn't equal">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
a != b
</Original>
<Expanded>
1 != 2
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
b != a
</Original>
<Expanded>
2 != 1
</Expanded>
</Expression>
<Section name="s2" description="not equal">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
a != b
</Original>
<Expanded>
1 != 2
</Expanded>
</Expression>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<TestCase name="more nested SECTION tests">
<Section name="s1" description="doesn't equal">
<Section name="s2" description="equal">
<Expression success="false" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
a == b
</Original>
<Expanded>
1 == 2
</Expanded>
</Expression>
<OverallResults successes="0" failures="1" expectedFailures="0"/>
</Section>
<OverallResults successes="0" failures="1" expectedFailures="0"/>
</Section>
<OverallResult success="false"/>
</TestCase>
<TestCase name="even more nested SECTION tests">
<Section name="c">
<Section name="d (leaf)">
<OverallResults successes="0" failures="1" expectedFailures="0"/>
</Section>
<OverallResults successes="0" failures="1" expectedFailures="0"/>
</Section>
<Section name="c">
<Section name="e (leaf)">
<OverallResults successes="0" failures="1" expectedFailures="0"/>
</Section>
<OverallResults successes="0" failures="1" expectedFailures="0"/>
</Section>
<Section name="f (leaf)">
<OverallResults successes="0" failures="1" expectedFailures="0"/>
</Section>
<OverallResult success="false"/>
</TestCase>
<TestCase name="looped SECTION tests">
<Section name="s1" description="b is currently: 0">
<Expression success="false" type="CHECK" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
b > a
</Original>
<Expanded>
0 > 1
</Expanded>
</Expression>
<OverallResults successes="0" failures="1" expectedFailures="0"/>
</Section>
<OverallResult success="false"/>
</TestCase>
<TestCase name="looped tests">
<Info>
Testing if fib[0] (1) is even
</Info>
<Expression success="false" type="CHECK" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
( fib[i] % 2 ) == 0
</Original>
<Expanded>
1 == 0
</Expanded>
</Expression>
<Info>
Testing if fib[1] (1) is even
</Info>
<Expression success="false" type="CHECK" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
( fib[i] % 2 ) == 0
</Original>
<Expanded>
1 == 0
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
( fib[i] % 2 ) == 0
</Original>
<Expanded>
0 == 0
</Expanded>
</Expression>
<Info>
Testing if fib[3] (3) is even
</Info>
<Expression success="false" type="CHECK" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
( fib[i] % 2 ) == 0
</Original>
<Expanded>
1 == 0
</Expanded>
</Expression>
<Info>
Testing if fib[4] (5) is even
</Info>
<Expression success="false" type="CHECK" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
( fib[i] % 2 ) == 0
</Original>
<Expanded>
1 == 0
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
( fib[i] % 2 ) == 0
</Original>
<Expanded>
0 == 0
</Expanded>
</Expression>
<Info>
Testing if fib[6] (13) is even
</Info>
<Expression success="false" type="CHECK" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
( fib[i] % 2 ) == 0
</Original>
<Expanded>
1 == 0
</Expanded>
</Expression>
<Info>
Testing if fib[7] (21) is even
</Info>
<Expression success="false" type="CHECK" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
( fib[i] % 2 ) == 0
</Original>
<Expanded>
1 == 0
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="Sends stuff to stdout and stderr">
<OverallResult success="false"/>
</TestCase>
<TestCase name="null strings">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
makeString( false ) != static_cast&lt;char*>(nullptr)
</Original>
<Expanded>
&quot;valid string&quot; != {null string}
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
makeString( true ) == static_cast&lt;char*>(nullptr)
</Original>
<Expanded>
{null string} == {null string}
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="checkedIf">
<Expression success="true" type="CHECKED_IF" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
flag
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testCheckedIf( true )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="checkedIf, failing">
<Expression success="false" type="CHECKED_IF" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
flag
</Original>
<Expanded>
false
</Expanded>
</Expression>
<Expression success="false" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testCheckedIf( false )
</Original>
<Expanded>
false
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="checkedElse">
<Expression success="true" type="CHECKED_ELSE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
flag
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testCheckedElse( true )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="checkedElse, failing">
<Expression success="false" type="CHECKED_ELSE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
flag
</Original>
<Expanded>
false
</Expanded>
</Expression>
<Expression success="false" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testCheckedElse( false )
</Original>
<Expanded>
false
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="xmlentitycheck">
<Section name="embedded xml" description="&lt;test>it should be possible to embed xml characters, such as &lt;, &quot; or &amp;, or even whole &lt;xml>documents&lt;/xml> within an attribute&lt;/test>">
<OverallResults successes="0" failures="1" expectedFailures="0"/>
</Section>
<Section name="encoded chars" description="these should all be encoded: &amp;&amp;&amp;&quot;&quot;&quot;&lt;&lt;&lt;&amp;&quot;&lt;&lt;&amp;&quot;">
<OverallResults successes="0" failures="1" expectedFailures="0"/>
</Section>
<OverallResult success="false"/>
</TestCase>
<TestCase name="send a single char to INFO">
<Info>
3
</Info>
<Expression success="false" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
false
</Original>
<Expanded>
false
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="atomic if">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
x == 0
</Original>
<Expanded>
0 == 0
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="String matchers">
<Expression success="true" type="REQUIRE_THAT" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testStringForMatching() Contains( &quot;string&quot; )
</Original>
<Expanded>
&quot;this string contains 'abc' as a substring&quot; contains: &quot;string&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK_THAT" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testStringForMatching() Contains( &quot;abc&quot; )
</Original>
<Expanded>
&quot;this string contains 'abc' as a substring&quot; contains: &quot;abc&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK_THAT" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testStringForMatching() StartsWith( &quot;this&quot; )
</Original>
<Expanded>
&quot;this string contains 'abc' as a substring&quot; starts with: &quot;this&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK_THAT" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testStringForMatching() EndsWith( &quot;substring&quot; )
</Original>
<Expanded>
&quot;this string contains 'abc' as a substring&quot; ends with: &quot;substring&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Contains string matcher">
<Expression success="false" type="CHECK_THAT" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testStringForMatching() Contains( &quot;not there&quot; )
</Original>
<Expanded>
&quot;this string contains 'abc' as a substring&quot; contains: &quot;not there&quot;
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="StartsWith string matcher">
<Expression success="false" type="CHECK_THAT" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testStringForMatching() StartsWith( &quot;string&quot; )
</Original>
<Expanded>
&quot;this string contains 'abc' as a substring&quot; starts with: &quot;string&quot;
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="EndsWith string matcher">
<Expression success="false" type="CHECK_THAT" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testStringForMatching() EndsWith( &quot;this&quot; )
</Original>
<Expanded>
&quot;this string contains 'abc' as a substring&quot; ends with: &quot;this&quot;
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="Equals string matcher">
<Expression success="false" type="CHECK_THAT" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testStringForMatching() Equals( &quot;something else&quot; )
</Original>
<Expanded>
&quot;this string contains 'abc' as a substring&quot; equals: &quot;something else&quot;
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="Equals string matcher, with NULL">
<Expression success="true" type="REQUIRE_THAT" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
&quot;&quot; Equals(nullptr)
</Original>
<Expanded>
&quot;&quot; equals: &quot;&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="AllOf matcher">
<Expression success="true" type="CHECK_THAT" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testStringForMatching() AllOf( Catch::Contains( &quot;string&quot; ), Catch::Contains( &quot;abc&quot; ) )
</Original>
<Expanded>
&quot;this string contains 'abc' as a substring&quot; ( contains: &quot;string&quot; and contains: &quot;abc&quot; )
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="AnyOf matcher">
<Expression success="true" type="CHECK_THAT" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testStringForMatching() AnyOf( Catch::Contains( &quot;string&quot; ), Catch::Contains( &quot;not there&quot; ) )
</Original>
<Expanded>
&quot;this string contains 'abc' as a substring&quot; ( contains: &quot;string&quot; or contains: &quot;not there&quot; )
</Expanded>
</Expression>
<Expression success="true" type="CHECK_THAT" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testStringForMatching() AnyOf( Catch::Contains( &quot;not there&quot; ), Catch::Contains( &quot;string&quot; ) )
</Original>
<Expanded>
&quot;this string contains 'abc' as a substring&quot; ( contains: &quot;not there&quot; or contains: &quot;string&quot; )
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Equals">
<Expression success="true" type="CHECK_THAT" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
testStringForMatching() Equals( &quot;this string contains 'abc' as a substring&quot; )
</Original>
<Expanded>
&quot;this string contains 'abc' as a substring&quot; equals: &quot;this string contains 'abc' as a substring&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Factorials are computed">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
Factorial(0) == 1
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
Factorial(1) == 1
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
Factorial(2) == 2
</Original>
<Expanded>
2 == 2
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
Factorial(3) == 6
</Original>
<Expanded>
6 == 6
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
Factorial(10) == 3628800
</Original>
<Expanded>
3628800 (0x<hex digits>) == 3628800 (0x<hex digits>)
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="An empty test with no assertions">
<OverallResult success="false"/>
</TestCase>
<TestCase name="Nice descriptive name">
<Warning>
This one ran
</Warning>
<OverallResult success="false"/>
</TestCase>
<TestCase name="first tag">
<OverallResult success="false"/>
</TestCase>
<TestCase name="second tag">
<OverallResult success="false"/>
</TestCase>
<TestCase name="vectors can be sized and resized">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.size() == 5
</Original>
<Expanded>
5 == 5
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.capacity() >= 5
</Original>
<Expanded>
5 >= 5
</Expanded>
</Expression>
<Section name="resizing bigger changes size and capacity">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.size() == 10
</Original>
<Expanded>
10 == 10
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.capacity() >= 10
</Original>
<Expanded>
10 >= 10
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.size() == 5
</Original>
<Expanded>
5 == 5
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.capacity() >= 5
</Original>
<Expanded>
5 >= 5
</Expanded>
</Expression>
<Section name="resizing smaller changes size but not capacity">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.size() == 0
</Original>
<Expanded>
0 == 0
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.capacity() >= 5
</Original>
<Expanded>
5 >= 5
</Expanded>
</Expression>
<Section name="We can use the 'swap trick' to reset the capacity">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.capacity() == 0
</Original>
<Expanded>
0 == 0
</Expanded>
</Expression>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.size() == 5
</Original>
<Expanded>
5 == 5
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.capacity() >= 5
</Original>
<Expanded>
5 >= 5
</Expanded>
</Expression>
<Section name="reserving bigger changes capacity but not size">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.size() == 5
</Original>
<Expanded>
5 == 5
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.capacity() >= 10
</Original>
<Expanded>
10 >= 10
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.size() == 5
</Original>
<Expanded>
5 == 5
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.capacity() >= 5
</Original>
<Expanded>
5 >= 5
</Expanded>
</Expression>
<Section name="reserving smaller does not change size or capacity">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.size() == 5
</Original>
<Expanded>
5 == 5
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
v.capacity() >= 5
</Original>
<Expanded>
5 >= 5
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<TestCase name="A couple of nested sections followed by a failure">
<Section name="Outer">
<Section name="Inner">
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<Failure>
to infinity and beyond
</Failure>
<OverallResult success="false"/>
</TestCase>
<TestCase name="not allowed">
<OverallResult success="true"/>
</TestCase>
<TestCase name="Tabs and newlines show in output">
<Expression success="false" type="CHECK" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
s1 == s2
</Original>
<Expanded>
&quot;if ($b == 10) {
$a = 20;
}&quot;
==
&quot;if ($b == 10) {
$a = 20;
}
&quot;
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="toString on const wchar_t const pointer returns the string contents">
<Expression success="true" type="CHECK" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
result == &quot;\&quot;wide load\&quot;&quot;
</Original>
<Expanded>
&quot;&quot;wide load&quot;&quot; == &quot;&quot;wide load&quot;&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="toString on const wchar_t pointer returns the string contents">
<Expression success="true" type="CHECK" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
result == &quot;\&quot;wide load\&quot;&quot;
</Original>
<Expanded>
&quot;&quot;wide load&quot;&quot; == &quot;&quot;wide load&quot;&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="toString on wchar_t const pointer returns the string contents">
<Expression success="true" type="CHECK" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
result == &quot;\&quot;wide load\&quot;&quot;
</Original>
<Expanded>
&quot;&quot;wide load&quot;&quot; == &quot;&quot;wide load&quot;&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="toString on wchar_t returns the string contents">
<Expression success="true" type="CHECK" filename="projects/SelfTest/MiscTests.cpp" >
<Original>
result == &quot;\&quot;wide load\&quot;&quot;
</Original>
<Expanded>
&quot;&quot;wide load&quot;&quot; == &quot;&quot;wide load&quot;&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Process can be configured on command line">
<Section name="default - no arguments">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.shouldDebugBreak == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.abortAfter == -1
</Original>
<Expanded>
-1 == -1
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.noThrow == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.reporterName.empty()
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="test lists">
<Section name="1 test" description="Specify one test case using">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
cfg.testSpec().matches( fakeTestCase( &quot;notIncluded&quot; ) ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
cfg.testSpec().matches( fakeTestCase( &quot;test1&quot; ) )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Section name="test lists">
<Section name="Specify one test case exclusion using exclude:">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
cfg.testSpec().matches( fakeTestCase( &quot;test1&quot; ) ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
cfg.testSpec().matches( fakeTestCase( &quot;alwaysIncluded&quot; ) )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Section name="test lists">
<Section name="Specify one test case exclusion using ~">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
cfg.testSpec().matches( fakeTestCase( &quot;test1&quot; ) ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
cfg.testSpec().matches( fakeTestCase( &quot;alwaysIncluded&quot; ) )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Section name="reporter">
<Section name="-r/console">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.reporterName == &quot;console&quot;
</Original>
<Expanded>
&quot;console&quot; == &quot;console&quot;
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="reporter">
<Section name="-r/xml">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.reporterName == &quot;xml&quot;
</Original>
<Expanded>
&quot;xml&quot; == &quot;xml&quot;
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="reporter">
<Section name="--reporter/junit">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.reporterName == &quot;junit&quot;
</Original>
<Expanded>
&quot;junit&quot; == &quot;junit&quot;
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="debugger">
<Section name="-b">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.shouldDebugBreak == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="debugger">
<Section name="--break">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.shouldDebugBreak
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="abort">
<Section name="-a aborts after first failure">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.abortAfter == 1
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="abort">
<Section name="-x 2 aborts after two failures">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.abortAfter == 2
</Original>
<Expanded>
2 == 2
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="abort">
<Section name="-x must be greater than zero">
<Expression success="true" type="REQUIRE_THAT" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfigAndReturnError( argv, config ) Contains( &quot;greater than zero&quot; )
</Original>
<Expanded>
&quot;Value after -x or --abortAfter must be greater than zero
- while parsing: (-x, --abortx &lt;no. failures>)&quot; contains: &quot;greater than zero&quot;
</Expanded>
</Expression>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<Section name="abort">
<Section name="-x must be numeric">
<Expression success="true" type="REQUIRE_THAT" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfigAndReturnError( argv, config ) Contains( &quot;-x&quot; )
</Original>
<Expanded>
&quot;Unable to convert oops to destination type
- while parsing: (-x, --abortx &lt;no. failures>)&quot; contains: &quot;-x&quot;
</Expanded>
</Expression>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<Section name="nothrow">
<Section name="-e">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.noThrow == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="nothrow">
<Section name="--nothrow">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.noThrow == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="output filename">
<Section name="-o filename">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.outputFilename == &quot;filename.ext&quot;
</Original>
<Expanded>
&quot;filename.ext&quot; == &quot;filename.ext&quot;
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="output filename">
<Section name="--out">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.outputFilename == &quot;filename.ext&quot;
</Original>
<Expanded>
&quot;filename.ext&quot; == &quot;filename.ext&quot;
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="combinations">
<Section name="Single character flags can be combined">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.abortAfter == 1
</Original>
<Expanded>
1 == 1
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.shouldDebugBreak
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.noThrow == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="4" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="4" failures="0" expectedFailures="0"/>
</Section>
<Section name="force-colour">
<Section name="--force-colour">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
config.forceColour
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="force-colour">
<Section name="without --force-colour">
<Expression success="true" type="CHECK_NOTHROW" filename="projects/SelfTest/TestMain.cpp" >
<Original>
parseIntoConfig( argv, config )
</Original>
<Expanded>
parseIntoConfig( argv, config )
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
!config.forceColour
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Long strings can be wrapped">
<Section name="plain string">
<Section name="No wrapping">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 80 ) ).toString() == testString
</Original>
<Expanded>
&quot;one two three four&quot;
==
&quot;one two three four&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 18 ) ).toString() == testString
</Original>
<Expanded>
&quot;one two three four&quot;
==
&quot;one two three four&quot;
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="plain string">
<Section name="Wrapped once">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 17 ) ).toString() == &quot;one two three\nfour&quot;
</Original>
<Expanded>
&quot;one two three
four&quot;
==
&quot;one two three
four&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 16 ) ).toString() == &quot;one two three\nfour&quot;
</Original>
<Expanded>
&quot;one two three
four&quot;
==
&quot;one two three
four&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 14 ) ).toString() == &quot;one two three\nfour&quot;
</Original>
<Expanded>
&quot;one two three
four&quot;
==
&quot;one two three
four&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 13 ) ).toString() == &quot;one two three\nfour&quot;
</Original>
<Expanded>
&quot;one two three
four&quot;
==
&quot;one two three
four&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 12 ) ).toString() == &quot;one two\nthree four&quot;
</Original>
<Expanded>
&quot;one two
three four&quot;
==
&quot;one two
three four&quot;
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="plain string">
<Section name="Wrapped twice">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 9 ) ).toString() == &quot;one two\nthree\nfour&quot;
</Original>
<Expanded>
&quot;one two
three
four&quot;
==
&quot;one two
three
four&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 8 ) ).toString() == &quot;one two\nthree\nfour&quot;
</Original>
<Expanded>
&quot;one two
three
four&quot;
==
&quot;one two
three
four&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 7 ) ).toString() == &quot;one two\nthree\nfour&quot;
</Original>
<Expanded>
&quot;one two
three
four&quot;
==
&quot;one two
three
four&quot;
</Expanded>
</Expression>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Section name="plain string">
<Section name="Wrapped three times">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 6 ) ).toString() == &quot;one\ntwo\nthree\nfour&quot;
</Original>
<Expanded>
&quot;one
two
three
four&quot;
==
&quot;one
two
three
four&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 5 ) ).toString() == &quot;one\ntwo\nthree\nfour&quot;
</Original>
<Expanded>
&quot;one
two
three
four&quot;
==
&quot;one
two
three
four&quot;
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="plain string">
<Section name="Short wrap">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( &quot;abcdef&quot;, TextAttributes().setWidth( 4 ) ).toString() == &quot;abc-\ndef&quot;
</Original>
<Expanded>
&quot;abc-
def&quot;
==
&quot;abc-
def&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( &quot;abcdefg&quot;, TextAttributes().setWidth( 4 ) ).toString() == &quot;abc-\ndefg&quot;
</Original>
<Expanded>
&quot;abc-
defg&quot;
==
&quot;abc-
defg&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( &quot;abcdefgh&quot;, TextAttributes().setWidth( 4 ) ).toString() == &quot;abc-\ndef-\ngh&quot;
</Original>
<Expanded>
&quot;abc-
def-
gh&quot;
==
&quot;abc-
def-
gh&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 4 ) ).toString() == &quot;one\ntwo\nthr-\nee\nfour&quot;
</Original>
<Expanded>
&quot;one
two
thr-
ee
four&quot;
==
&quot;one
two
thr-
ee
four&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 3 ) ).toString() == &quot;one\ntwo\nth-\nree\nfo-\nur&quot;
</Original>
<Expanded>
&quot;one
two
th-
ree
fo-
ur&quot;
==
&quot;one
two
th-
ree
fo-
ur&quot;
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="plain string">
<Section name="As container">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
text.size() == 4
</Original>
<Expanded>
4 == 4
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
text[0] == &quot;one&quot;
</Original>
<Expanded>
&quot;one&quot; == &quot;one&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
text[1] == &quot;two&quot;
</Original>
<Expanded>
&quot;two&quot; == &quot;two&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
text[2] == &quot;three&quot;
</Original>
<Expanded>
&quot;three&quot; == &quot;three&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
text[3] == &quot;four&quot;
</Original>
<Expanded>
&quot;four&quot; == &quot;four&quot;
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="plain string">
<Section name="Indent first line differently">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
text.toString() == &quot; one two\n three\n four&quot;
</Original>
<Expanded>
&quot; one two
three
four&quot;
==
&quot; one two
three
four&quot;
</Expanded>
</Expression>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<Section name="With newlines">
<Section name="No wrapping">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 80 ) ).toString() == testString
</Original>
<Expanded>
&quot;one two
three four&quot;
==
&quot;one two
three four&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 18 ) ).toString() == testString
</Original>
<Expanded>
&quot;one two
three four&quot;
==
&quot;one two
three four&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 10 ) ).toString() == testString
</Original>
<Expanded>
&quot;one two
three four&quot;
==
&quot;one two
three four&quot;
</Expanded>
</Expression>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Section name="With newlines">
<Section name="Trailing newline">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( &quot;abcdef\n&quot;, TextAttributes().setWidth( 10 ) ).toString() == &quot;abcdef\n&quot;
</Original>
<Expanded>
&quot;abcdef
&quot;
==
&quot;abcdef
&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( &quot;abcdef&quot;, TextAttributes().setWidth( 6 ) ).toString() == &quot;abcdef&quot;
</Original>
<Expanded>
&quot;abcdef&quot; == &quot;abcdef&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( &quot;abcdef\n&quot;, TextAttributes().setWidth( 6 ) ).toString() == &quot;abcdef\n&quot;
</Original>
<Expanded>
&quot;abcdef
&quot;
==
&quot;abcdef
&quot;
</Expanded>
</Expression>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Section name="With newlines">
<Section name="Wrapped once">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 9 ) ).toString() == &quot;one two\nthree\nfour&quot;
</Original>
<Expanded>
&quot;one two
three
four&quot;
==
&quot;one two
three
four&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 8 ) ).toString() == &quot;one two\nthree\nfour&quot;
</Original>
<Expanded>
&quot;one two
three
four&quot;
==
&quot;one two
three
four&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 7 ) ).toString() == &quot;one two\nthree\nfour&quot;
</Original>
<Expanded>
&quot;one two
three
four&quot;
==
&quot;one two
three
four&quot;
</Expanded>
</Expression>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Section name="With newlines">
<Section name="Wrapped twice">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 6 ) ).toString() == &quot;one\ntwo\nthree\nfour&quot;
</Original>
<Expanded>
&quot;one
two
three
four&quot;
==
&quot;one
two
three
four&quot;
</Expanded>
</Expression>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<Section name="With tabs">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( testString, TextAttributes().setWidth( 15 ) ).toString() == &quot;one two three\n four\n five\n six&quot;
</Original>
<Expanded>
&quot;one two three
four
five
six&quot;
==
&quot;one two three
four
five
six&quot;
</Expanded>
</Expression>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<TestCase name="replaceInPlace">
<Section name="replace single char">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
replaceInPlace( letters, &quot;b&quot;, &quot;z&quot; )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
letters == &quot;azcdefcg&quot;
</Original>
<Expanded>
&quot;azcdefcg&quot; == &quot;azcdefcg&quot;
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="replace two chars">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
replaceInPlace( letters, &quot;c&quot;, &quot;z&quot; )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
letters == &quot;abzdefzg&quot;
</Original>
<Expanded>
&quot;abzdefzg&quot; == &quot;abzdefzg&quot;
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="replace first char">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
replaceInPlace( letters, &quot;a&quot;, &quot;z&quot; )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
letters == &quot;zbcdefcg&quot;
</Original>
<Expanded>
&quot;zbcdefcg&quot; == &quot;zbcdefcg&quot;
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="replace last char">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
replaceInPlace( letters, &quot;g&quot;, &quot;z&quot; )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
letters == &quot;abcdefcz&quot;
</Original>
<Expanded>
&quot;abcdefcz&quot; == &quot;abcdefcz&quot;
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="replace all chars">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
replaceInPlace( letters, letters, &quot;replaced&quot; )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
letters == &quot;replaced&quot;
</Original>
<Expanded>
&quot;replaced&quot; == &quot;replaced&quot;
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="replace no chars">
<Expression success="true" type="CHECK_FALSE" filename="projects/SelfTest/TestMain.cpp" >
<Original>
!replaceInPlace( letters, &quot;x&quot;, &quot;z&quot; )
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
letters == letters
</Original>
<Expanded>
&quot;abcdefcg&quot; == &quot;abcdefcg&quot;
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="escape '">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
replaceInPlace( s, &quot;'&quot;, &quot;|'&quot; )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
s == &quot;didn|'t&quot;
</Original>
<Expanded>
&quot;didn|'t&quot; == &quot;didn|'t&quot;
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Strings can be rendered with colour">
<OverallResult success="false"/>
</TestCase>
<TestCase name="Text can be formatted using the Text class">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( &quot;hi there&quot; ).toString() == &quot;hi there&quot;
</Original>
<Expanded>
&quot;hi there&quot; == &quot;hi there&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TestMain.cpp" >
<Original>
Text( &quot;hi there&quot;, narrow ).toString() == &quot;hi\nthere&quot;
</Original>
<Expanded>
&quot;hi
there&quot;
==
&quot;hi
there&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Long text is truncted">
<Expression success="true" type="CHECK_THAT" filename="projects/SelfTest/TestMain.cpp" >
<Original>
t.toString() EndsWith( &quot;... message truncated due to excessive size&quot; )
</Original>
<Expanded>
&quot;******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
******************************************************************************-
************************
******************************************************************************-
... message truncated due to excessive size&quot; ends with: &quot;... message truncated due to excessive size&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Parsing a std::pair">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
(std::pair&lt;int, int>( 1, 2 )) == aNicePair
</Original>
<Expanded>
std::pair( 1, 2 ) == std::pair( 1, 2 )
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Where there is more to the expression after the RHS">
<Warning>
Uncomment the code in this test to check that it gives a sensible compiler error
</Warning>
<OverallResult success="false"/>
</TestCase>
<TestCase name="Where the LHS is not a simple value">
<Warning>
Uncomment the code in this test to check that it gives a sensible compiler error
</Warning>
<OverallResult success="false"/>
</TestCase>
<TestCase name="A failing expression with a non streamable type is still captured">
<Expression success="false" type="CHECK" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
&amp;o1 == &amp;o2
</Original>
<Expanded>
0x<hex digits> == 0x<hex digits>
</Expanded>
</Expression>
<Expression success="false" type="CHECK" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
o1 == o2
</Original>
<Expanded>
{?} == {?}
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="string literals of different sizes can be compared">
<Expression success="false" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
std::string( &quot;first&quot; ) == &quot;second&quot;
</Original>
<Expanded>
&quot;first&quot; == &quot;second&quot;
</Expanded>
</Expression>
<OverallResult success="false"/>
</TestCase>
<TestCase name="An expression with side-effects should only be evaluated once">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
i++ == 7
</Original>
<Expanded>
7 == 7
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
i++ == 8
</Original>
<Expanded>
8 == 8
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Operators at different namespace levels not hijacked by Koenig lookup">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
0x<hex digits> == o
</Original>
<Expanded>
3221225472 (0x<hex digits>) == {?}
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Demonstrate that a non-const == is not used">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
t == 1u
</Original>
<Expanded>
{?} == 1
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Test enum bit values">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
0x<hex digits> == bit30and31
</Original>
<Expanded>
3221225472 (0x<hex digits>) == 3221225472
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="boolean member">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
obj.prop != nullptr
</Original>
<Expanded>
0x<hex digits> != nullptr
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="(unimplemented) static bools can be evaluated">
<Section name="compare to true">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
is_true&lt;true>::value == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
true == is_true&lt;true>::value
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="compare to false">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
is_true&lt;false>::value == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
false == is_true&lt;false>::value
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Section name="negation">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
!is_true&lt;false>::value
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<Section name="double negation">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
!!is_true&lt;true>::value
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<Section name="direct">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
is_true&lt;true>::value
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE_FALSE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
!is_true&lt;false>::value
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Objects that evaluated in boolean contexts can be checked">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
True
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
!False
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK_FALSE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
!False
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Assertions then sections">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
Catch::alwaysTrue()
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Section name="A section">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
Catch::alwaysTrue()
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Section name="Another section">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
Catch::alwaysTrue()
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
Catch::alwaysTrue()
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Section name="A section">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
Catch::alwaysTrue()
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Section name="Another other section">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
Catch::alwaysTrue()
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<TestCase name="non streamable - with conv. op">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
s == &quot;7&quot;
</Original>
<Expanded>
&quot;7&quot; == &quot;7&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Comparing function pointers">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
a
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
a == &amp;foo
</Original>
<Expanded>
0x<hex digits> == 0x<hex digits>
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Comparing member function pointers">
<Expression success="true" type="CHECK" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
m == &amp;S::f
</Original>
<Expanded>
0x<hex digits>
==
0x<hex digits>
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="pointer to class">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
p == 0
</Original>
<Expanded>
NULL == 0
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="null_ptr">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/TrickyTests.cpp" >
<Original>
ptr.get() == nullptr
</Original>
<Expanded>
NULL == nullptr
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="X/level/0/a">
<OverallResult success="true"/>
</TestCase>
<TestCase name="X/level/0/b">
<OverallResult success="true"/>
</TestCase>
<TestCase name="X/level/1/a">
<OverallResult success="true"/>
</TestCase>
<TestCase name="X/level/1/b">
<OverallResult success="true"/>
</TestCase>
<TestCase name="toString( has_toString )">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringWhich.cpp" >
<Original>
Catch::toString( item ) == &quot;toString( has_toString )&quot;
</Original>
<Expanded>
&quot;toString( has_toString )&quot;
==
&quot;toString( has_toString )&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="toString( has_maker )">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringWhich.cpp" >
<Original>
Catch::toString( item ) == &quot;StringMaker&lt;has_maker>&quot;
</Original>
<Expanded>
&quot;StringMaker&lt;has_maker>&quot;
==
&quot;StringMaker&lt;has_maker>&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="toString( has_maker_and_toString )">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringWhich.cpp" >
<Original>
Catch::toString( item ) == &quot;toString( has_maker_and_toString )&quot;
</Original>
<Expanded>
&quot;toString( has_maker_and_toString )&quot;
==
&quot;toString( has_maker_and_toString )&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="toString( vectors&lt;has_toString )">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringWhich.cpp" >
<Original>
Catch::toString( v ) == &quot;{ {?} }&quot;
</Original>
<Expanded>
&quot;{ {?} }&quot; == &quot;{ {?} }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="toString( vectors&lt;has_maker )">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringWhich.cpp" >
<Original>
Catch::toString( v ) == &quot;{ StringMaker&lt;has_maker> }&quot;
</Original>
<Expanded>
&quot;{ StringMaker&lt;has_maker> }&quot;
==
&quot;{ StringMaker&lt;has_maker> }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="toString( vectors&lt;has_maker_and_toString )">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringWhich.cpp" >
<Original>
Catch::toString( v ) == &quot;{ StringMaker&lt;has_maker_and_toString> }&quot;
</Original>
<Expanded>
&quot;{ StringMaker&lt;has_maker_and_toString> }&quot;
==
&quot;{ StringMaker&lt;has_maker_and_toString> }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="std::pair&lt;int,std::string> -> toString">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringPair.cpp" >
<Original>
Catch::toString( value ) == &quot;{ 34, \&quot;xyzzy\&quot; }&quot;
</Original>
<Expanded>
&quot;{ 34, &quot;xyzzy&quot; }&quot; == &quot;{ 34, &quot;xyzzy&quot; }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="std::pair&lt;int,const std::string> -> toString">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringPair.cpp" >
<Original>
Catch::toString(value) == &quot;{ 34, \&quot;xyzzy\&quot; }&quot;
</Original>
<Expanded>
&quot;{ 34, &quot;xyzzy&quot; }&quot; == &quot;{ 34, &quot;xyzzy&quot; }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="std::vector&lt;std::pair&lt;std::string,int> > -> toString">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringPair.cpp" >
<Original>
Catch::toString( pr ) == &quot;{ { \&quot;green\&quot;, 55 } }&quot;
</Original>
<Expanded>
&quot;{ { &quot;green&quot;, 55 } }&quot;
==
&quot;{ { &quot;green&quot;, 55 } }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="pair&lt;pair&lt;int,const char *,pair&lt;std::string,int> > -> toString">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringPair.cpp" >
<Original>
Catch::toString( pair ) == &quot;{ { 42, \&quot;Arthur\&quot; }, { \&quot;Ford\&quot;, 24 } }&quot;
</Original>
<Expanded>
&quot;{ { 42, &quot;Arthur&quot; }, { &quot;Ford&quot;, 24 } }&quot;
==
&quot;{ { 42, &quot;Arthur&quot; }, { &quot;Ford&quot;, 24 } }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="vector&lt;int> -> toString">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringVector.cpp" >
<Original>
Catch::toString(vv) == &quot;{ }&quot;
</Original>
<Expanded>
&quot;{ }&quot; == &quot;{ }&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringVector.cpp" >
<Original>
Catch::toString(vv) == &quot;{ 42 }&quot;
</Original>
<Expanded>
&quot;{ 42 }&quot; == &quot;{ 42 }&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringVector.cpp" >
<Original>
Catch::toString(vv) == &quot;{ 42, 250 }&quot;
</Original>
<Expanded>
&quot;{ 42, 250 }&quot; == &quot;{ 42, 250 }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="vector&lt;string> -> toString">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringVector.cpp" >
<Original>
Catch::toString(vv) == &quot;{ }&quot;
</Original>
<Expanded>
&quot;{ }&quot; == &quot;{ }&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringVector.cpp" >
<Original>
Catch::toString(vv) == &quot;{ \&quot;hello\&quot; }&quot;
</Original>
<Expanded>
&quot;{ &quot;hello&quot; }&quot; == &quot;{ &quot;hello&quot; }&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringVector.cpp" >
<Original>
Catch::toString(vv) == &quot;{ \&quot;hello\&quot;, \&quot;world\&quot; }&quot;
</Original>
<Expanded>
&quot;{ &quot;hello&quot;, &quot;world&quot; }&quot;
==
&quot;{ &quot;hello&quot;, &quot;world&quot; }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="vector&lt;int,allocator> -> toString">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringVector.cpp" >
<Original>
Catch::toString(vv) == &quot;{ }&quot;
</Original>
<Expanded>
&quot;{ }&quot; == &quot;{ }&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringVector.cpp" >
<Original>
Catch::toString(vv) == &quot;{ 42 }&quot;
</Original>
<Expanded>
&quot;{ 42 }&quot; == &quot;{ 42 }&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringVector.cpp" >
<Original>
Catch::toString(vv) == &quot;{ 42, 250 }&quot;
</Original>
<Expanded>
&quot;{ 42, 250 }&quot; == &quot;{ 42, 250 }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="vec&lt;vec&lt;string,alloc>> -> toString">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringVector.cpp" >
<Original>
Catch::toString(v) == &quot;{ }&quot;
</Original>
<Expanded>
&quot;{ }&quot; == &quot;{ }&quot;
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/ToStringVector.cpp" >
<Original>
Catch::toString(v) == &quot;{ { \&quot;hello\&quot; }, { \&quot;world\&quot; } }&quot;
</Original>
<Expanded>
&quot;{ { &quot;hello&quot; }, { &quot;world&quot; } }&quot;
==
&quot;{ { &quot;hello&quot; }, { &quot;world&quot; } }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Parse test names and tags">
<Section name="Empty test spec should have no filters">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Section name="Test spec from empty string should have no filters">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches(tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Section name="Test spec from just a comma should have no filters">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Section name="Test spec from name should have one filter">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Section name="Test spec from quoted name should have one filter">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Section name="Test spec from name should have one filter">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="4" failures="0" expectedFailures="0"/>
</Section>
<Section name="Wildcard at the start">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
parseTestSpec( &quot;*a&quot; ).matches( tcA ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="6" failures="0" expectedFailures="0"/>
</Section>
<Section name="Wildcard at the end">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
parseTestSpec( &quot;a*&quot; ).matches( tcA ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="6" failures="0" expectedFailures="0"/>
</Section>
<Section name="Wildcard at both ends">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
parseTestSpec( &quot;*a*&quot; ).matches( tcA ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="6" failures="0" expectedFailures="0"/>
</Section>
<Section name="Redundant wildcard at the start">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Section name="Redundant wildcard at the end">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Section name="Redundant wildcard at both ends">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<Section name="Wildcard at both ends, redundant at start">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="Just wildcard">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="Single tag">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="4" failures="0" expectedFailures="0"/>
</Section>
<Section name="Single tag, two matches">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="4" failures="0" expectedFailures="0"/>
</Section>
<Section name="Two tags">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="4" failures="0" expectedFailures="0"/>
</Section>
<Section name="Two tags, spare separated">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="4" failures="0" expectedFailures="0"/>
</Section>
<Section name="Wildcarded name and tag">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="Single tag exclusion">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="4" failures="0" expectedFailures="0"/>
</Section>
<Section name="One tag exclusion and one tag inclusion">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="4" failures="0" expectedFailures="0"/>
</Section>
<Section name="One tag exclusion and one wldcarded name inclusion">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="One tag exclusion, using exclude:, and one wldcarded name inclusion">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="name exclusion">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="wildcarded name exclusion">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="wildcarded name exclusion with tag inclusion">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="wildcarded name exclusion, using exclude:, with tag inclusion">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="two wildcarded names">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="empty tag">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="empty quoted name">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="quoted string followed by tag exclusion">
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.hasFilters() == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcA ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcB ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcC ) == false
</Original>
<Expanded>
false == false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/CmdLineTests.cpp" >
<Original>
spec.matches( tcD ) == true
</Original>
<Expanded>
true == true
</Expanded>
</Expression>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<TestCase name="tuple&lt;>">
<Expression success="true" type="CHECK" filename="projects/SelfTest/ToStringTuple.cpp" >
<Original>
&quot;{ }&quot; == Catch::toString(type{})
</Original>
<Expanded>
&quot;{ }&quot; == &quot;{ }&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/ToStringTuple.cpp" >
<Original>
&quot;{ }&quot; == Catch::toString(value)
</Original>
<Expanded>
&quot;{ }&quot; == &quot;{ }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="tuple&lt;int>">
<Expression success="true" type="CHECK" filename="projects/SelfTest/ToStringTuple.cpp" >
<Original>
&quot;{ 0 }&quot; == Catch::toString(type{0})
</Original>
<Expanded>
&quot;{ 0 }&quot; == &quot;{ 0 }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="tuple&lt;float,int>">
<Expression success="true" type="CHECK" filename="projects/SelfTest/ToStringTuple.cpp" >
<Original>
&quot;1.2f&quot; == Catch::toString(float(1.2))
</Original>
<Expanded>
&quot;1.2f&quot; == &quot;1.2f&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/ToStringTuple.cpp" >
<Original>
&quot;{ 1.2f, 0 }&quot; == Catch::toString(type{1.2,0})
</Original>
<Expanded>
&quot;{ 1.2f, 0 }&quot; == &quot;{ 1.2f, 0 }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="tuple&lt;string,string>">
<Expression success="true" type="CHECK" filename="projects/SelfTest/ToStringTuple.cpp" >
<Original>
&quot;{ \&quot;hello\&quot;, \&quot;world\&quot; }&quot; == Catch::toString(type{&quot;hello&quot;,&quot;world&quot;})
</Original>
<Expanded>
&quot;{ &quot;hello&quot;, &quot;world&quot; }&quot;
==
&quot;{ &quot;hello&quot;, &quot;world&quot; }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="tuple&lt;tuple&lt;int>,tuple&lt;>,float>">
<Expression success="true" type="CHECK" filename="projects/SelfTest/ToStringTuple.cpp" >
<Original>
&quot;{ { 42 }, { }, 1.2f }&quot; == Catch::toString(value)
</Original>
<Expanded>
&quot;{ { 42 }, { }, 1.2f }&quot;
==
&quot;{ { 42 }, { }, 1.2f }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="tuple&lt;nullptr,int,const char *>">
<Expression success="true" type="CHECK" filename="projects/SelfTest/ToStringTuple.cpp" >
<Original>
&quot;{ nullptr, 42, \&quot;Catch me\&quot; }&quot; == Catch::toString(value)
</Original>
<Expanded>
&quot;{ nullptr, 42, &quot;Catch me&quot; }&quot;
==
&quot;{ nullptr, 42, &quot;Catch me&quot; }&quot;
</Expanded>
</Expression>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Tag alias can be registered against tag patterns">
<Section name="The same tag alias can only be registered once">
<Expression success="true" type="CHECK_THAT" filename="projects/SelfTest/TagAliasTests.cpp" >
<Original>
what Contains( &quot;[@zzz]&quot; )
</Original>
<Expanded>
&quot;error: tag alias, &quot;[@zzz]&quot; already registered.
First seen at file:2
Redefined at file:10&quot; contains: &quot;[@zzz]&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK_THAT" filename="projects/SelfTest/TagAliasTests.cpp" >
<Original>
what Contains( &quot;file&quot; )
</Original>
<Expanded>
&quot;error: tag alias, &quot;[@zzz]&quot; already registered.
First seen at file:2
Redefined at file:10&quot; contains: &quot;file&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK_THAT" filename="projects/SelfTest/TagAliasTests.cpp" >
<Original>
what Contains( &quot;2&quot; )
</Original>
<Expanded>
&quot;error: tag alias, &quot;[@zzz]&quot; already registered.
First seen at file:2
Redefined at file:10&quot; contains: &quot;2&quot;
</Expanded>
</Expression>
<Expression success="true" type="CHECK_THAT" filename="projects/SelfTest/TagAliasTests.cpp" >
<Original>
what Contains( &quot;10&quot; )
</Original>
<Expanded>
&quot;error: tag alias, &quot;[@zzz]&quot; already registered.
First seen at file:2
Redefined at file:10&quot; contains: &quot;10&quot;
</Expanded>
</Expression>
<OverallResults successes="4" failures="0" expectedFailures="0"/>
</Section>
<Section name="Tag aliases must be of the form [@name]">
<Expression success="true" type="CHECK_THROWS" filename="projects/SelfTest/TagAliasTests.cpp" >
<Original>
registry.add( &quot;[no ampersat]&quot;, &quot;&quot;, Catch::SourceLineInfo( &quot;file&quot;, 3 ) )
</Original>
<Expanded>
registry.add( &quot;[no ampersat]&quot;, &quot;&quot;, Catch::SourceLineInfo( &quot;file&quot;, 3 ) )
</Expanded>
</Expression>
<Expression success="true" type="CHECK_THROWS" filename="projects/SelfTest/TagAliasTests.cpp" >
<Original>
registry.add( &quot;[the @ is not at the start]&quot;, &quot;&quot;, Catch::SourceLineInfo( &quot;file&quot;, 3 ) )
</Original>
<Expanded>
registry.add( &quot;[the @ is not at the start]&quot;, &quot;&quot;, Catch::SourceLineInfo( &quot;file&quot;, 3 ) )
</Expanded>
</Expression>
<Expression success="true" type="CHECK_THROWS" filename="projects/SelfTest/TagAliasTests.cpp" >
<Original>
registry.add( &quot;@no square bracket at start]&quot;, &quot;&quot;, Catch::SourceLineInfo( &quot;file&quot;, 3 ) )
</Original>
<Expanded>
registry.add( &quot;@no square bracket at start]&quot;, &quot;&quot;, Catch::SourceLineInfo( &quot;file&quot;, 3 ) )
</Expanded>
</Expression>
<Expression success="true" type="CHECK_THROWS" filename="projects/SelfTest/TagAliasTests.cpp" >
<Original>
registry.add( &quot;[@no square bracket at end&quot;, &quot;&quot;, Catch::SourceLineInfo( &quot;file&quot;, 3 ) )
</Original>
<Expanded>
registry.add( &quot;[@no square bracket at end&quot;, &quot;&quot;, Catch::SourceLineInfo( &quot;file&quot;, 3 ) )
</Expanded>
</Expression>
<OverallResults successes="4" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Anonymous test case 1">
<OverallResult success="true"/>
</TestCase>
<TestCase name="Test case with one argument">
<OverallResult success="true"/>
</TestCase>
<TestCase name="Variadic macros">
<Section name="Section with one argument">
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Scenario: Do that thing with the thing">
<Section name="Given: This stuff exists">
<Section name="When: I do this">
<Section name="Then: it should do this">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/BDDTests.cpp" >
<Original>
itDoesThis()
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Section name="And: do that">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/BDDTests.cpp" >
<Original>
itDoesThat()
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Scenario: Vector resizing affects size and capacity">
<Section name="Given: an empty vector">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/BDDTests.cpp" >
<Original>
v.size() == 0
</Original>
<Expanded>
0 == 0
</Expanded>
</Expression>
<Section name="When: it is made larger">
<Section name="Then: the size and capacity go up">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/BDDTests.cpp" >
<Original>
v.size() == 10
</Original>
<Expanded>
10 == 10
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/BDDTests.cpp" >
<Original>
v.capacity() >= 10
</Original>
<Expanded>
10 >= 10
</Expanded>
</Expression>
<Section name="And when: it is made smaller again">
<Section name="Then: the size goes down but the capacity stays the same">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/BDDTests.cpp" >
<Original>
v.size() == 5
</Original>
<Expanded>
5 == 5
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/BDDTests.cpp" >
<Original>
v.capacity() >= 10
</Original>
<Expanded>
10 >= 10
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="4" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="4" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="5" failures="0" expectedFailures="0"/>
</Section>
<Section name="Given: an empty vector">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/BDDTests.cpp" >
<Original>
v.size() == 0
</Original>
<Expanded>
0 == 0
</Expanded>
</Expression>
<Section name="When: we reserve more space">
<Section name="Then: The capacity is increased but the size remains the same">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/BDDTests.cpp" >
<Original>
v.capacity() >= 10
</Original>
<Expanded>
10 >= 10
</Expanded>
</Expression>
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/BDDTests.cpp" >
<Original>
v.size() == 0
</Original>
<Expanded>
0 == 0
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="3" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Scenario: This is a really long scenario name to see how the list command deals with wrapping">
<Section name="Given: A section name that is so long that it cannot fit in a single console width">
<Section name="When: The test headers are printed as part of the normal running of the scenario">
<Section name="Then: The, deliberately very long and overly verbose (you see what I did there?) section names must wrap, along with an indent">
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<TestCase name="Scenario: BDD tests requiring Fixtures to provide commonly-accessed data or methods">
<Section name="Given: No operations precede me">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/BDDTests.cpp" >
<Original>
before == 0
</Original>
<Expanded>
0 == 0
</Expanded>
</Expression>
<Section name="When: We get the count">
<Section name="Then: Subsequently values are higher">
<Expression success="true" type="REQUIRE" filename="projects/SelfTest/BDDTests.cpp" >
<Original>
after > before
</Original>
<Expanded>
1 > 0
</Expanded>
</Expression>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="1" failures="0" expectedFailures="0"/>
</Section>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<TestCase name="section tracking">
<Expression success="true" type="CHECK_FALSE" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
!testCaseTracker.isCompleted()
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<Section name="test case with no sections">
<Expression success="true" type="CHECK_FALSE" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
!testCaseTracker.isCompleted()
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
testCaseTracker.isCompleted()
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResults successes="2" failures="0" expectedFailures="0"/>
</Section>
<Expression success="true" type="CHECK_FALSE" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
!testCaseTracker.isCompleted()
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<Section name="test case with one section">
<Expression success="true" type="CHECK" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
testCaseTracker.enterSection( section1Name )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK_FALSE" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
!testCaseTracker.isCompleted()
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
testCaseTracker.isCompleted()
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK_FALSE" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
!testCaseTracker.enterSection( section1Name )
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<OverallResults successes="4" failures="0" expectedFailures="0"/>
</Section>
<Expression success="true" type="CHECK_FALSE" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
!testCaseTracker.isCompleted()
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<Section name="test case with two consecutive sections">
<Expression success="true" type="CHECK" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
testCaseTracker.enterSection( section1Name )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK_FALSE" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
!testCaseTracker.enterSection( section2Name )
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<Expression success="true" type="CHECK_FALSE" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
!testCaseTracker.isCompleted()
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<Expression success="true" type="CHECK_FALSE" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
!testCaseTracker.enterSection( section1Name )
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
testCaseTracker.enterSection( section2Name )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
testCaseTracker.isCompleted()
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResults successes="6" failures="0" expectedFailures="0"/>
</Section>
<Expression success="true" type="CHECK_FALSE" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
!testCaseTracker.isCompleted()
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<Section name="test case with one section within another">
<Expression success="true" type="CHECK" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
testCaseTracker.enterSection( section1Name )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
testCaseTracker.enterSection( section2Name )
</Original>
<Expanded>
true
</Expanded>
</Expression>
<Expression success="true" type="CHECK_FALSE" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
!testCaseTracker.isCompleted()
</Original>
<Expanded>
!false
</Expanded>
</Expression>
<Expression success="true" type="CHECK" filename="projects/SelfTest/SectionTrackerTests.cpp" >
<Original>
testCaseTracker.isCompleted()
</Original>
<Expanded>
true
</Expanded>
</Expression>
<OverallResults successes="4" failures="0" expectedFailures="0"/>
</Section>
<OverallResult success="true"/>
</TestCase>
<OverallResults successes="673" failures="99" expectedFailures="13"/>
</Group>
<OverallResults successes="673" failures="99" expectedFailures="13"/>
</Catch>