<?xml version="1.0" encoding="UTF-8"?>
<Catch name="<exe-name>" filters="~[!nonportable]~[!benchmark]~[approvals]">
  <Randomness seed="1"/>
  <Group name="<exe-name>">
    <TestCase name="# A test name that starts with a #" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="#1005: Comparing pointer to int and long (NULL can be either on various systems)" tags="[Decomposition]" filename="projects/<exe-name>/UsageTests/Decomposition.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Decomposition.tests.cpp" >
        <Original>
          fptr == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Decomposition.tests.cpp" >
        <Original>
          fptr == 0l
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="#1027" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          y.v == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          0 == y.v
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="#1027: Bitfields can be captured" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          y.v == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          0 == y.v
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="#1147" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          t1 == t2
        </Original>
        <Expanded>
          {?} == {?}
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          t1 != t2
        </Original>
        <Expanded>
          {?} != {?}
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          t1 &lt; t2
        </Original>
        <Expanded>
          {?} &lt; {?}
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          t1 > t2
        </Original>
        <Expanded>
          {?} > {?}
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          t1 &lt;= t2
        </Original>
        <Expanded>
          {?} &lt;= {?}
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          t1 >= t2
        </Original>
        <Expanded>
          {?} >= {?}
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="#1175 - Hidden Test" tags="[!hide][.]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="#1238" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
      <Info>
        uarr := "123"
      </Info>
      <Info>
        sarr := "456"
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          std::memcmp(uarr, "123", sizeof(uarr)) == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <Info>
        uarr := "123"
      </Info>
      <Info>
        sarr := "456"
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          std::memcmp(sarr, "456", sizeof(sarr)) == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="#1245" tags="[compilation]" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="#1403" tags="[compilation]" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          h1 == h2
        </Original>
        <Expanded>
          [1403 helper] == [1403 helper]
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="#1455 - INFO and WARN can start with a linebreak" tags="[!hide][.][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Info>

This info message starts with a linebreak
      </Info>
      <Warning>

This warning message starts with a linebreak
      </Warning>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="#1514: stderr/stdout is not captured in tests aborted by an exception" tags="[!hide][.][output-capture][regression]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Failure filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        1514
      </Failure>
      <OverallResult success="false">
        <StdOut>
This would not be caught previously
        </StdOut>
        <StdErr>
Nor would this
        </StdErr>
      </OverallResult>
    </TestCase>
    <TestCase name="#1548" tags="[compilation]" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          std::is_same&lt;TypeList&lt;int>, TypeList&lt;int>>::value
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="#748 - captures with unexpected exceptions" tags="[!hide][!shouldfail][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Section name="outside assertions" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Info>
          answer := 42
        </Info>
        <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          expected exception
        </Exception>
        <OverallResults successes="0" failures="0" expectedFailures="1"/>
      </Section>
      <Section name="inside REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Info>
          answer := 42
        </Info>
        <Expression success="false" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          <Original>
            thisThrows()
          </Original>
          <Expanded>
            thisThrows()
          </Expanded>
          <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
            expected exception
          </Exception>
        </Expression>
        <OverallResults successes="0" failures="0" expectedFailures="1"/>
      </Section>
      <Section name="inside REQUIRE_THROWS" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Info>
          answer := 42
        </Info>
        <Expression success="true" type="REQUIRE_THROWS" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          <Original>
            thisThrows()
          </Original>
          <Expanded>
            thisThrows()
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="#809" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          42 == f
        </Original>
        <Expanded>
          42 == {?}
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="#833" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          a == t
        </Original>
        <Expanded>
          3 == 3
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          a == t
        </Original>
        <Expanded>
          3 == 3
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_THROWS" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          throws_int(true)
        </Original>
        <Expanded>
          throws_int(true)
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_THROWS_AS" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          throws_int(true), int
        </Original>
        <Expanded>
          throws_int(true), int
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          throws_int(false)
        </Original>
        <Expanded>
          throws_int(false)
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          "aaa", Catch::EndsWith("aaa")
        </Original>
        <Expanded>
          "aaa" ends with: "aaa"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          templated_tests&lt;int>(3)
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="#835 -- errno should not be touched by Catch" tags="[!hide][!shouldfail][.][failing]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          f() == 0
        </Original>
        <Expanded>
          1 == 0
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          errno == 1
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="#872" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
      <Info>
        dummy := 0
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
        <Original>
          x == 4
        </Original>
        <Expanded>
          {?} == 4
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="#961 -- Dynamically created sections should all be reported" tags="[!hide][.]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Section name="Looped section 0" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Looped section 1" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Looped section 2" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Looped section 3" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Looped section 4" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="'Not' checks that should fail" tags="[!hide][.][failing]" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          false != false
        </Original>
        <Expanded>
          false != false
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          true != true
        </Original>
        <Expanded>
          true != true
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          !true
        </Original>
        <Expanded>
          false
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK_FALSE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          !(true)
        </Original>
        <Expanded>
          !true
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          !trueValue
        </Original>
        <Expanded>
          false
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK_FALSE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          !(trueValue)
        </Original>
        <Expanded>
          !true
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          !(1 == 1)
        </Original>
        <Expanded>
          false
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK_FALSE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          !(1 == 1)
        </Original>
        <Expanded>
          !(1 == 1)
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="'Not' checks that should succeed" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          false == false
        </Original>
        <Expanded>
          false == false
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          true == true
        </Original>
        <Expanded>
          true == true
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          !false
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          !(false)
        </Original>
        <Expanded>
          !false
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          !falseValue
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          !(falseValue)
        </Original>
        <Expanded>
          !false
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          !(1 == 2)
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          !(1 == 2)
        </Original>
        <Expanded>
          !(1 == 2)
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="(unimplemented) static bools can be evaluated" tags="[Tricky]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Section name="compare to true" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
          <Original>
            is_true&lt;true>::value == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.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" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
          <Original>
            is_true&lt;false>::value == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.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" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
          <Original>
            !is_true&lt;false>::value
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="double negation" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
          <Original>
            !!is_true&lt;true>::value
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="direct" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
          <Original>
            is_true&lt;true>::value
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/UsageTests/Tricky.tests.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="3x3x3 ints" tags="[generators]" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          1 &lt; 4
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          4 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          1 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          1 &lt; 4
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          4 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          1 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          1 &lt; 4
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          4 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          1 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          1 &lt; 5
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          5 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          1 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          1 &lt; 5
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          5 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          1 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          1 &lt; 5
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          5 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          1 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          1 &lt; 6
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          6 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          1 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          1 &lt; 6
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          6 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          1 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          1 &lt; 6
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          6 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          1 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          2 &lt; 4
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          4 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          2 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          2 &lt; 4
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          4 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          2 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          2 &lt; 4
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          4 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          2 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          2 &lt; 5
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          5 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          2 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          2 &lt; 5
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          5 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          2 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          2 &lt; 5
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          5 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          2 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          2 &lt; 6
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          6 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          2 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          2 &lt; 6
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          6 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          2 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          2 &lt; 6
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          6 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          2 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          3 &lt; 4
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          4 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          3 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          3 &lt; 4
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          4 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          3 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          3 &lt; 4
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          4 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          3 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          3 &lt; 5
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          5 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          3 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          3 &lt; 5
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          5 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          3 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          3 &lt; 5
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          5 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          3 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          3 &lt; 6
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          6 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          3 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          3 &lt; 6
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          6 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          3 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; y
        </Original>
        <Expanded>
          3 &lt; 6
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          y &lt; z
        </Original>
        <Expanded>
          6 &lt; 9
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          x &lt; z
        </Original>
        <Expanded>
          3 &lt; 9
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A METHOD_AS_TEST_CASE based test run that fails" tags="[!hide][.][class][failing]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          s == "world"
        </Original>
        <Expanded>
          "hello" == "world"
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A METHOD_AS_TEST_CASE based test run that succeeds" tags="[class]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          s == "hello"
        </Original>
        <Expanded>
          "hello" == "hello"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that fails - Template_Foo&lt;float>" tags="[!hide][.][class][failing][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>::m_a.size() == 1
        </Original>
        <Expanded>
          0 == 1
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that fails - Template_Foo&lt;int>" tags="[!hide][.][class][failing][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>::m_a.size() == 1
        </Original>
        <Expanded>
          0 == 1
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that fails - std::vector&lt;float>" tags="[!hide][.][class][failing][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>::m_a.size() == 1
        </Original>
        <Expanded>
          0 == 1
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that fails - std::vector&lt;int>" tags="[!hide][.][class][failing][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>::m_a.size() == 1
        </Original>
        <Expanded>
          0 == 1
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that succeeds - Template_Foo&lt;float>" tags="[class][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>::m_a.size() == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that succeeds - Template_Foo&lt;int>" tags="[class][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>::m_a.size() == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that succeeds - std::vector&lt;float>" tags="[class][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>::m_a.size() == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that succeeds - std::vector&lt;int>" tags="[class][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>::m_a.size() == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that fails - Template_Foo_2&lt;float, 6>" tags="[!hide][.][class][failing][nttp][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>{}.m_a.size() &lt; 2
        </Original>
        <Expanded>
          6 &lt; 2
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that fails - Template_Foo_2&lt;int, 2>" tags="[!hide][.][class][failing][nttp][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>{}.m_a.size() &lt; 2
        </Original>
        <Expanded>
          2 &lt; 2
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that fails - std::array&lt;float, 6>" tags="[!hide][.][class][failing][nttp][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>{}.m_a.size() &lt; 2
        </Original>
        <Expanded>
          6 &lt; 2
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that fails - std::array&lt;int, 2>" tags="[!hide][.][class][failing][nttp][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>{}.m_a.size() &lt; 2
        </Original>
        <Expanded>
          2 &lt; 2
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that succeeds - Template_Foo_2&lt;float,6>" tags="[class][nttp][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>{}.m_a.size() >= 2
        </Original>
        <Expanded>
          6 >= 2
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that succeeds - Template_Foo_2&lt;int,2>" tags="[class][nttp][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>{}.m_a.size() >= 2
        </Original>
        <Expanded>
          2 >= 2
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that succeeds - std::array&lt;float,6>" tags="[class][nttp][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>{}.m_a.size() >= 2
        </Original>
        <Expanded>
          6 >= 2
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that succeeds - std::array&lt;int,2>" tags="[class][nttp][product][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture_2&lt;TestType>{}.m_a.size() >= 2
        </Original>
        <Expanded>
          2 >= 2
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A TEMPLATE_TEST_CASE_METHOD based test run that fails - double" tags="[!hide][.][class][failing][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture&lt;TestType>::m_a == 2
        </Original>
        <Expanded>
          1.0 == 2
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A TEMPLATE_TEST_CASE_METHOD based test run that fails - float" tags="[!hide][.][class][failing][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture&lt;TestType>::m_a == 2
        </Original>
        <Expanded>
          1.0f == 2
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A TEMPLATE_TEST_CASE_METHOD based test run that fails - int" tags="[!hide][.][class][failing][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture&lt;TestType>::m_a == 2
        </Original>
        <Expanded>
          1 == 2
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A TEMPLATE_TEST_CASE_METHOD based test run that succeeds - double" tags="[class][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture&lt;TestType>::m_a == 1
        </Original>
        <Expanded>
          1.0 == 1
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A TEMPLATE_TEST_CASE_METHOD based test run that succeeds - float" tags="[class][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture&lt;TestType>::m_a == 1
        </Original>
        <Expanded>
          1.0f == 1
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A TEMPLATE_TEST_CASE_METHOD based test run that succeeds - int" tags="[class][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture&lt;TestType>::m_a == 1
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A TEMPLATE_TEST_CASE_METHOD_SIG based test run that fails - 1" tags="[!hide][.][class][failing][nttp][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Nttp_Fixture&lt;V>::value == 0
        </Original>
        <Expanded>
          1 == 0
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A TEMPLATE_TEST_CASE_METHOD_SIG based test run that fails - 3" tags="[!hide][.][class][failing][nttp][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Nttp_Fixture&lt;V>::value == 0
        </Original>
        <Expanded>
          3 == 0
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A TEMPLATE_TEST_CASE_METHOD_SIG based test run that fails - 6" tags="[!hide][.][class][failing][nttp][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Nttp_Fixture&lt;V>::value == 0
        </Original>
        <Expanded>
          6 == 0
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A TEMPLATE_TEST_CASE_METHOD_SIG based test run that succeeds - 1" tags="[class][nttp][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Nttp_Fixture&lt;V>::value > 0
        </Original>
        <Expanded>
          1 > 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A TEMPLATE_TEST_CASE_METHOD_SIG based test run that succeeds - 3" tags="[class][nttp][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Nttp_Fixture&lt;V>::value > 0
        </Original>
        <Expanded>
          3 > 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A TEMPLATE_TEST_CASE_METHOD_SIG based test run that succeeds - 6" tags="[class][nttp][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Nttp_Fixture&lt;V>::value > 0
        </Original>
        <Expanded>
          6 > 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A TEST_CASE_METHOD based test run that fails" tags="[!hide][.][class][failing]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          m_a == 2
        </Original>
        <Expanded>
          1 == 2
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A TEST_CASE_METHOD based test run that succeeds" tags="[class]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          m_a == 1
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A Template product test case - Foo&lt;float>" tags="[product][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          x.size() == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A Template product test case - Foo&lt;int>" tags="[product][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          x.size() == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A Template product test case - std::vector&lt;float>" tags="[product][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          x.size() == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A Template product test case - std::vector&lt;int>" tags="[product][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          x.size() == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A Template product test case with array signature - Bar&lt;float, 42>" tags="[nttp][product][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          x.size() > 0
        </Original>
        <Expanded>
          42 > 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A Template product test case with array signature - Bar&lt;int, 9>" tags="[nttp][product][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          x.size() > 0
        </Original>
        <Expanded>
          9 > 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A Template product test case with array signature - std::array&lt;float, 42>" tags="[nttp][product][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          x.size() > 0
        </Original>
        <Expanded>
          42 > 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A Template product test case with array signature - std::array&lt;int, 9>" tags="[nttp][product][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          x.size() > 0
        </Original>
        <Expanded>
          9 > 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A comparison that uses literals instead of the normal constructor" tags="[Approx]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d == 1.23_a
        </Original>
        <Expanded>
          1.23 == Approx( 1.23 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d != 1.22_a
        </Original>
        <Expanded>
          1.23 != Approx( 1.22 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          -d == -1.23_a
        </Original>
        <Expanded>
          -1.23 == Approx( -1.23 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d == 1.2_a .epsilon(.1)
        </Original>
        <Expanded>
          1.23 == Approx( 1.2 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d != 1.2_a .epsilon(.001)
        </Original>
        <Expanded>
          1.23 != Approx( 1.2 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d == 1_a .epsilon(.3)
        </Original>
        <Expanded>
          1.23 == Approx( 1.0 )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="A couple of nested sections followed by a failure" tags="[!hide][.][failing]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Section name="Outer" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Section name="Inner" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Failure filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        to infinity and beyond
      </Failure>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="A failing expression with a non streamable type is still captured" tags="[!hide][.][Tricky][failing]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          &amp;o1 == &amp;o2
        </Original>
        <Expanded>
          0x<hex digits> == 0x<hex digits>
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          o1 == o2
        </Original>
        <Expanded>
          {?} == {?}
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Absolute margin" tags="[Approx]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          104.0 != Approx(100.0)
        </Original>
        <Expanded>
          104.0 != Approx( 100.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          104.0 == Approx(100.0).margin(5)
        </Original>
        <Expanded>
          104.0 == Approx( 100.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          104.0 == Approx(100.0).margin(4)
        </Original>
        <Expanded>
          104.0 == Approx( 100.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          104.0 != Approx(100.0).margin(3)
        </Original>
        <Expanded>
          104.0 != Approx( 100.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          100.3 != Approx(100.0)
        </Original>
        <Expanded>
          100.3 != Approx( 100.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          100.3 == Approx(100.0).margin(0.5)
        </Original>
        <Expanded>
          100.3 == Approx( 100.0 )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="An empty test with no assertions" tags="[empty]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="An expression with side-effects should only be evaluated once" tags="[Tricky]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          i++ == 7
        </Original>
        <Expanded>
          7 == 7
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          i++ == 8
        </Original>
        <Expanded>
          8 == 8
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="An unchecked exception reports the line of the last assertion" tags="[!hide][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Original>
          1 == 1
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <Expression success="false" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Original>
          {Unknown expression after the reported line}
        </Original>
        <Expanded>
          {Unknown expression after the reported line}
        </Expanded>
        <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          unexpected exception
        </Exception>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Anonymous test case 1" filename="projects/<exe-name>/UsageTests/VariadicMacros.tests.cpp" >
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Approx setters validate their arguments" tags="[Approx]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx(0).margin(0)
        </Original>
        <Expanded>
          Approx(0).margin(0)
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx(0).margin(1234656)
        </Original>
        <Expanded>
          Approx(0).margin(1234656)
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_THROWS_AS" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx(0).margin(-2), std::domain_error
        </Original>
        <Expanded>
          Approx(0).margin(-2), std::domain_error
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx(0).epsilon(0)
        </Original>
        <Expanded>
          Approx(0).epsilon(0)
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx(0).epsilon(1)
        </Original>
        <Expanded>
          Approx(0).epsilon(1)
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_THROWS_AS" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx(0).epsilon(-0.001), std::domain_error
        </Original>
        <Expanded>
          Approx(0).epsilon(-0.001), std::domain_error
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_THROWS_AS" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx(0).epsilon(1.0001), std::domain_error
        </Original>
        <Expanded>
          Approx(0).epsilon(1.0001), std::domain_error
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Approx with exactly-representable margin" tags="[Approx]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          0.25f == Approx(0.0f).margin(0.25f)
        </Original>
        <Expanded>
          0.25f == Approx( 0.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          0.0f == Approx(0.25f).margin(0.25f)
        </Original>
        <Expanded>
          0.0f == Approx( 0.25 )
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          0.5f == Approx(0.25f).margin(0.25f)
        </Original>
        <Expanded>
          0.5f == Approx( 0.25 )
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          245.0f == Approx(245.25f).margin(0.25f)
        </Original>
        <Expanded>
          245.0f == Approx( 245.25 )
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          245.5f == Approx(245.25f).margin(0.25f)
        </Original>
        <Expanded>
          245.5f == Approx( 245.25 )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Approximate PI" tags="[Approx][PI]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.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/<exe-name>/UsageTests/Approx.tests.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="Approximate comparisons with different epsilons" tags="[Approx]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d != Approx( 1.231 )
        </Original>
        <Expanded>
          1.23 != Approx( 1.231 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.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" tags="[Approx]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          1.23f == Approx( 1.23f )
        </Original>
        <Expanded>
          1.23f == Approx( 1.2300000191 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.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" tags="[Approx]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          1 == Approx( 1 )
        </Original>
        <Expanded>
          1 == Approx( 1.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.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" tags="[Approx]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          1.0f == Approx( 1 )
        </Original>
        <Expanded>
          1.0f == Approx( 1.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          0 == Approx( dZero)
        </Original>
        <Expanded>
          0 == Approx( 0.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          0 == Approx( dSmall ).margin( 0.001 )
        </Original>
        <Expanded>
          0 == Approx( 0.00001 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          1.234f == Approx( dMedium )
        </Original>
        <Expanded>
          1.234f == Approx( 1.234 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          dMedium == Approx( 1.234f )
        </Original>
        <Expanded>
          1.234 == Approx( 1.2339999676 )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Arbitrary predicate matcher" tags="[generic][matchers]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Section name="Function pointer" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1, Predicate&lt;int>(alwaysTrue, "always true")
          </Original>
          <Expanded>
            1 matches predicate: "always true"
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1, !Predicate&lt;int>(alwaysFalse, "always false")
          </Original>
          <Expanded>
            1 not matches predicate: "always false"
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Lambdas + different type" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            "Hello olleH", Predicate&lt;std::string>( [] (std::string const&amp; str) -> bool { return str.front() == str.back(); }, "First and last character should be equal")
          </Original>
          <Expanded>
            "Hello olleH" matches predicate: "First and last character should be equal"
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            "This wouldn't pass", !Predicate&lt;std::string>( [] (std::string const&amp; str) -> bool { return str.front() == str.back(); } )
          </Original>
          <Expanded>
            "This wouldn't pass" not matches undescribed predicate
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Assertions then sections" tags="[Tricky]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          true
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Section name="A section" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
          <Original>
            true
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Section name="Another section" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
            <Original>
              true
            </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/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          true
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Section name="A section" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
          <Original>
            true
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Section name="Another other section" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
            <Original>
              true
            </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="CAPTURE can deal with complex expressions" tags="[capture][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Info>
        a := 1
      </Info>
      <Info>
        b := 2
      </Info>
      <Info>
        c := 3
      </Info>
      <Info>
        a + b := 3
      </Info>
      <Info>
        a+b := 3
      </Info>
      <Info>
        c > b := true
      </Info>
      <Info>
        a == 1 := true
      </Info>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="CAPTURE can deal with complex expressions involving commas" tags="[capture][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Info>
        std::vector&lt;int>{1, 2, 3}[0, 1, 2] := 3
      </Info>
      <Info>
        std::vector&lt;int>{1, 2, 3}[(0, 1)] := 2
      </Info>
      <Info>
        std::vector&lt;int>{1, 2, 3}[0] := 1
      </Info>
      <Info>
        (helper_1436&lt;int, int>{12, -12}) := { 12, -12 }
      </Info>
      <Info>
        (helper_1436&lt;int, int>(-12, 12)) := { -12, 12 }
      </Info>
      <Info>
        (1, 2) := 2
      </Info>
      <Info>
        (2, 3) := 3
      </Info>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="CAPTURE parses string and character constants" tags="[capture][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Info>
        ("comma, in string", "escaped, \", ") := "escaped, ", "
      </Info>
      <Info>
        "single quote in string,'," := "single quote in string,',"
      </Info>
      <Info>
        "some escapes, \\,\\\\" := "some escapes, \,\\"
      </Info>
      <Info>
        "some, ), unmatched, } prenheses {[&lt;" := "some, ), unmatched, } prenheses {[&lt;"
      </Info>
      <Info>
        '"' := '"'
      </Info>
      <Info>
        '\'' := '''
      </Info>
      <Info>
        ',' := ','
      </Info>
      <Info>
        '}' := '}'
      </Info>
      <Info>
        ')' := ')'
      </Info>
      <Info>
        '(' := '('
      </Info>
      <Info>
        '{' := '{'
      </Info>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Capture and info messages" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
      <Section name="Capture should stringify like assertions" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Info>
          i := 2
        </Info>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            true
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Info should NOT stringify the way assertions do" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Info>
          3
        </Info>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            true
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Character pretty printing" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
      <Section name="Specifically escaped" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            tab == '\t'
          </Original>
          <Expanded>
            '\t' == '\t'
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            newline == '\n'
          </Original>
          <Expanded>
            '\n' == '\n'
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            carr_return == '\r'
          </Original>
          <Expanded>
            '\r' == '\r'
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            form_feed == '\f'
          </Original>
          <Expanded>
            '\f' == '\f'
          </Expanded>
        </Expression>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="General chars" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            space == ' '
          </Original>
          <Expanded>
            ' ' == ' '
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            c == chars[i]
          </Original>
          <Expanded>
            'a' == 'a'
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            c == chars[i]
          </Original>
          <Expanded>
            'z' == 'z'
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            c == chars[i]
          </Original>
          <Expanded>
            'A' == 'A'
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            c == chars[i]
          </Original>
          <Expanded>
            'Z' == 'Z'
          </Expanded>
        </Expression>
        <OverallResults successes="5" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Low ASCII" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            null_terminator == '\0'
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            c == i
          </Original>
          <Expanded>
            2 == 2
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            c == i
          </Original>
          <Expanded>
            3 == 3
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            c == i
          </Original>
          <Expanded>
            4 == 4
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            c == i
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <OverallResults successes="5" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Commas in various macros are allowed" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Expression success="true" type="REQUIRE_THROWS" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          std::vector&lt;constructor_throws>{constructor_throws{}, constructor_throws{}}
        </Original>
        <Expanded>
          std::vector&lt;constructor_throws>{constructor_throws{}, constructor_throws{}}
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_THROWS" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          std::vector&lt;constructor_throws>{constructor_throws{}, constructor_throws{}}
        </Original>
        <Expanded>
          std::vector&lt;constructor_throws>{constructor_throws{}, constructor_throws{}}
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          std::vector&lt;int>{1, 2, 3} == std::vector&lt;int>{1, 2, 3}
        </Original>
        <Expanded>
          std::vector&lt;int>{1, 2, 3} == std::vector&lt;int>{1, 2, 3}
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_NOTHROW" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          std::vector&lt;int>{1, 2, 3} == std::vector&lt;int>{1, 2, 3}
        </Original>
        <Expanded>
          std::vector&lt;int>{1, 2, 3} == std::vector&lt;int>{1, 2, 3}
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          std::vector&lt;int>{1, 2} == std::vector&lt;int>{1, 2}
        </Original>
        <Expanded>
          { 1, 2 } == { 1, 2 }
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          std::vector&lt;int>{1, 2} == std::vector&lt;int>{1, 2}
        </Original>
        <Expanded>
          { 1, 2 } == { 1, 2 }
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          !(std::vector&lt;int>{1, 2} == std::vector&lt;int>{1, 2, 3})
        </Original>
        <Expanded>
          !({ 1, 2 } == { 1, 2, 3 })
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_FALSE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          !(std::vector&lt;int>{1, 2} == std::vector&lt;int>{1, 2, 3})
        </Original>
        <Expanded>
          !({ 1, 2 } == { 1, 2, 3 })
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_NOFAIL" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          std::vector&lt;int>{1, 2} == std::vector&lt;int>{1, 2}
        </Original>
        <Expanded>
          { 1, 2 } == { 1, 2 }
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECKED_IF" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          std::vector&lt;int>{1, 2} == std::vector&lt;int>{1, 2}
        </Original>
        <Expanded>
          { 1, 2 } == { 1, 2 }
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          true
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECKED_ELSE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          std::vector&lt;int>{1, 2} == std::vector&lt;int>{1, 2}
        </Original>
        <Expanded>
          { 1, 2 } == { 1, 2 }
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Comparing function pointers" tags="[Tricky][function pointer]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          a
        </Original>
        <Expanded>
          0x<hex digits>
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          a == &amp;foo
        </Original>
        <Expanded>
          0x<hex digits> == 0x<hex digits>
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Comparison ops" tags="[rng]" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
        <Original>
          SimplePcg32{} == SimplePcg32{}
        </Original>
        <Expanded>
          {?} == {?}
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
        <Original>
          SimplePcg32{ 0 } != SimplePcg32{}
        </Original>
        <Expanded>
          {?} != {?}
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
        <Original>
          !(SimplePcg32{ 1 } == SimplePcg32{ 2 })
        </Original>
        <Expanded>
          !({?} == {?})
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
        <Original>
          !(SimplePcg32{ 1 } != SimplePcg32{ 1 })
        </Original>
        <Expanded>
          !({?} != {?})
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Comparison with explicitly convertible types" tags="[Approx]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          td == Approx(10.0)
        </Original>
        <Expanded>
          StrongDoubleTypedef(10) == Approx( 10.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx(10.0) == td
        </Original>
        <Expanded>
          Approx( 10.0 ) == StrongDoubleTypedef(10)
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          td != Approx(11.0)
        </Original>
        <Expanded>
          StrongDoubleTypedef(10) != Approx( 11.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx(11.0) != td
        </Original>
        <Expanded>
          Approx( 11.0 ) != StrongDoubleTypedef(10)
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          td &lt;= Approx(10.0)
        </Original>
        <Expanded>
          StrongDoubleTypedef(10) &lt;= Approx( 10.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          td &lt;= Approx(11.0)
        </Original>
        <Expanded>
          StrongDoubleTypedef(10) &lt;= Approx( 11.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx(10.0) &lt;= td
        </Original>
        <Expanded>
          Approx( 10.0 ) &lt;= StrongDoubleTypedef(10)
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx(9.0) &lt;= td
        </Original>
        <Expanded>
          Approx( 9.0 ) &lt;= StrongDoubleTypedef(10)
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          td >= Approx(9.0)
        </Original>
        <Expanded>
          StrongDoubleTypedef(10) >= Approx( 9.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          td >= Approx(td)
        </Original>
        <Expanded>
          StrongDoubleTypedef(10) >= Approx( 10.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx(td) >= td
        </Original>
        <Expanded>
          Approx( 10.0 ) >= StrongDoubleTypedef(10)
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx(11.0) >= td
        </Original>
        <Expanded>
          Approx( 11.0 ) >= StrongDoubleTypedef(10)
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Comparisons between ints where one side is computed" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          54 == 6*9
        </Original>
        <Expanded>
          54 == 54
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Comparisons between unsigned ints and negative signed ints match c++ standard behaviour" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          ( -1 > 2u )
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          -1 > 2u
        </Original>
        <Expanded>
          -1 > 2
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          ( 2u &lt; -1 )
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          2u &lt; -1
        </Original>
        <Expanded>
          2 &lt; -1
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          ( minInt > 2u )
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          minInt > 2u
        </Original>
        <Expanded>
          -2147483648 > 2
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Comparisons with int literals don't warn when mixing signed/ unsigned" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          i == 1
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          ui == 2
        </Original>
        <Expanded>
          2 == 2
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          l == 3
        </Original>
        <Expanded>
          3 == 3
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          ul == 4
        </Original>
        <Expanded>
          4 == 4
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          c == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          uc == 6
        </Original>
        <Expanded>
          6 == 6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          1 == i
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          2 == ui
        </Original>
        <Expanded>
          2 == 2
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          3 == l
        </Original>
        <Expanded>
          3 == 3
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          4 == ul
        </Original>
        <Expanded>
          4 == 4
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          5 == c
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          6 == uc
        </Original>
        <Expanded>
          6 == 6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          (std::numeric_limits&lt;uint32_t>::max)() > ul
        </Original>
        <Expanded>
          4294967295 (0x<hex digits>) > 4
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Composed matchers are distinct" tags="[composed][matchers]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching2(), !composed1
        </Original>
        <Expanded>
          "some completely different text that contains one common word" not ( contains: "string" or contains: "random" )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching2(), composed2
        </Original>
        <Expanded>
          "some completely different text that contains one common word" ( contains: "string" or contains: "random" or contains: "different" )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Contains string matcher" tags="[!hide][.][failing][matchers]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), Contains("not there", Catch::CaseSensitive::No)
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" contains: "not there" (case insensitive)
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), Contains("STRING")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" contains: "STRING"
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Copy and then generate a range" tags="[generators]" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
      <Section name="from var and iterators" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            elem % 2 == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="from var and iterators" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            elem % 2 == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="from var and iterators" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            elem % 2 == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="from var and iterators" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            elem % 2 == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="from var and iterators" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            elem % 2 == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="from var and iterators" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            elem % 2 == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="From a temporary container" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            elem % 2 == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="From a temporary container" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            elem % 2 == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="From a temporary container" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            elem % 2 == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="From a temporary container" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            elem % 2 == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="From a temporary container" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            elem % 2 == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="From a temporary container" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            elem % 2 == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Final validation" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            call_count == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            make_data().size() == test_count
          </Original>
          <Expanded>
            6 == 6
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Custom exceptions can be translated when testing for nothrow" tags="[!hide][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Expression success="false" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Original>
          throwCustom()
        </Original>
        <Expanded>
          throwCustom()
        </Expanded>
        <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.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" tags="[!hide][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Expression success="false" type="REQUIRE_THROWS_AS" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Original>
          throwCustom(), std::exception
        </Original>
        <Expanded>
          throwCustom(), std::exception
        </Expanded>
        <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          custom exception - not std
        </Exception>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Custom std-exceptions can be custom translated" tags="[!hide][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        custom std exception
      </Exception>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Default scale is invisible to comparison" tags="[Approx]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          101.000001 != Approx(100).epsilon(0.01)
        </Original>
        <Expanded>
          101.000001 != Approx( 100.0 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          std::pow(10, -5) != Approx(std::pow(10, -7))
        </Original>
        <Expanded>
          0.00001 != Approx( 0.0000001 )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Directly creating an EnumInfo" filename="projects/<exe-name>/IntrospectiveTests/ToString.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/ToString.tests.cpp" >
        <Original>
          enumInfo->lookup(0) == "Value1"
        </Original>
        <Expanded>
          Value1 == "Value1"
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/ToString.tests.cpp" >
        <Original>
          enumInfo->lookup(1) == "Value2"
        </Original>
        <Expanded>
          Value2 == "Value2"
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/ToString.tests.cpp" >
        <Original>
          enumInfo->lookup(3) == "{** unexpected enum value **}"
        </Original>
        <Expanded>
          {** unexpected enum value **}
==
"{** unexpected enum value **}"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="EndsWith string matcher" tags="[!hide][.][failing][matchers]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), EndsWith("Substring")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" ends with: "Substring"
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), EndsWith("this", Catch::CaseSensitive::No)
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" ends with: "this" (case insensitive)
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Enums can quickly have stringification enabled using REGISTER_ENUM" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          stringify( EnumClass3::Value1 ) == "Value1"
        </Original>
        <Expanded>
          "Value1" == "Value1"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          stringify( EnumClass3::Value2 ) == "Value2"
        </Original>
        <Expanded>
          "Value2" == "Value2"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          stringify( EnumClass3::Value3 ) == "Value3"
        </Original>
        <Expanded>
          "Value3" == "Value3"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          stringify( EnumClass3::Value4 ) == "{** unexpected enum value **}"
        </Original>
        <Expanded>
          "{** unexpected enum value **}"
==
"{** unexpected enum value **}"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          stringify( ec3 ) == "Value2"
        </Original>
        <Expanded>
          "Value2" == "Value2"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Enums in namespaces can quickly have stringification enabled using REGISTER_ENUM" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          stringify( Bikeshed::Colours::Red ) == "Red"
        </Original>
        <Expanded>
          "Red" == "Red"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          stringify( Bikeshed::Colours::Blue ) == "Blue"
        </Original>
        <Expanded>
          "Blue" == "Blue"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Epsilon only applies to Approx's value" tags="[Approx]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          101.01 != Approx(100).epsilon(0.01)
        </Original>
        <Expanded>
          101.01 != Approx( 100.0 )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Equality checks that should fail" tags="[!hide][!mayfail][.][failing]" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven == 6
        </Original>
        <Expanded>
          7 == 6
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven == 8
        </Original>
        <Expanded>
          7 == 8
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven == 0
        </Original>
        <Expanded>
          7 == 0
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.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/<exe-name>/UsageTests/Condition.tests.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/<exe-name>/UsageTests/Condition.tests.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/<exe-name>/UsageTests/Condition.tests.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/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.double_pi == Approx( 3.1415 )
        </Original>
        <Expanded>
          3.1415926535 == Approx( 3.1415 )
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello == "goodbye"
        </Original>
        <Expanded>
          "hello" == "goodbye"
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello == "hell"
        </Original>
        <Expanded>
          "hello" == "hell"
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello == "hello1"
        </Original>
        <Expanded>
          "hello" == "hello1"
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello.size() == 6
        </Original>
        <Expanded>
          5 == 6
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          x == Approx( 1.301 )
        </Original>
        <Expanded>
          1.3 == Approx( 1.301 )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Equality checks that should succeed" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven == 7
        </Original>
        <Expanded>
          7 == 7
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.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/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.double_pi == Approx( 3.1415926535 )
        </Original>
        <Expanded>
          3.1415926535 == Approx( 3.1415926535 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello == "hello"
        </Original>
        <Expanded>
          "hello" == "hello"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          "hello" == data.str_hello
        </Original>
        <Expanded>
          "hello" == "hello"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          x == Approx( 1.3 )
        </Original>
        <Expanded>
          1.3 == Approx( 1.3 )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Equals" tags="[matchers]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), Equals("this string contains 'abc' as a substring")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" equals: "this string contains 'abc' as a substring"
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), Equals("this string contains 'ABC' as a substring", Catch::CaseSensitive::No)
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" equals: "this string contains 'abc' as a substring" (case insensitive)
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Equals string matcher" tags="[!hide][.][failing][matchers]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), Equals("this string contains 'ABC' as a substring")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" equals: "this string contains 'ABC' as a substring"
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), Equals("something else", Catch::CaseSensitive::No)
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" equals: "something else" (case insensitive)
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Exception as a value (e.g. in REQUIRE_THROWS_MATCHES) can be stringified" tags="[exception][toString]" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(WhatException{}) == "This exception has overridden what() method"
        </Original>
        <Expanded>
          "This exception has overridden what() method"
==
"This exception has overridden what() method"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(OperatorException{}) == "OperatorException"
        </Original>
        <Expanded>
          "OperatorException" == "OperatorException"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(StringMakerException{}) == "StringMakerException"
        </Original>
        <Expanded>
          "StringMakerException"
==
"StringMakerException"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Exception matchers that fail" tags="[!hide][!throws][.][exceptions][failing][matchers]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Section name="No exception" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="false" type="CHECK_THROWS_MATCHES" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            doesNotThrow(), SpecialException, ExceptionMatcher{1}
          </Original>
          <Expanded>
            doesNotThrow(), SpecialException, ExceptionMatcher{1}
          </Expanded>
        </Expression>
        <Expression success="false" type="REQUIRE_THROWS_MATCHES" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            doesNotThrow(), SpecialException, ExceptionMatcher{1}
          </Original>
          <Expanded>
            doesNotThrow(), SpecialException, ExceptionMatcher{1}
          </Expanded>
        </Expression>
        <OverallResults successes="0" failures="2" expectedFailures="0"/>
      </Section>
      <Section name="Type mismatch" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="false" type="CHECK_THROWS_MATCHES" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            throwsAsInt(1), SpecialException, ExceptionMatcher{1}
          </Original>
          <Expanded>
            throwsAsInt(1), SpecialException, ExceptionMatcher{1}
          </Expanded>
          <Exception filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
            Unknown exception
          </Exception>
        </Expression>
        <Expression success="false" type="REQUIRE_THROWS_MATCHES" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            throwsAsInt(1), SpecialException, ExceptionMatcher{1}
          </Original>
          <Expanded>
            throwsAsInt(1), SpecialException, ExceptionMatcher{1}
          </Expanded>
          <Exception filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
            Unknown exception
          </Exception>
        </Expression>
        <OverallResults successes="0" failures="2" expectedFailures="0"/>
      </Section>
      <Section name="Contents are wrong" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="false" type="CHECK_THROWS_MATCHES" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            throwsSpecialException(3), SpecialException, ExceptionMatcher{1}
          </Original>
          <Expanded>
            SpecialException::what special exception has value of 1
          </Expanded>
        </Expression>
        <Expression success="false" type="REQUIRE_THROWS_MATCHES" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            throwsSpecialException(4), SpecialException, ExceptionMatcher{1}
          </Original>
          <Expanded>
            SpecialException::what special exception has value of 1
          </Expanded>
        </Expression>
        <OverallResults successes="0" failures="2" expectedFailures="0"/>
      </Section>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Exception matchers that succeed" tags="[!throws][exceptions][matchers]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="true" type="CHECK_THROWS_MATCHES" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          throwsSpecialException(1), SpecialException, ExceptionMatcher{1}
        </Original>
        <Expanded>
          SpecialException::what special exception has value of 1
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_THROWS_MATCHES" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          throwsSpecialException(2), SpecialException, ExceptionMatcher{2}
        </Original>
        <Expanded>
          SpecialException::what special exception has value of 2
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Exception messages can be tested for" tags="[!throws]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Section name="exact match" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Expression success="true" type="REQUIRE_THROWS_WITH" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          <Original>
            thisThrows(), "expected exception"
          </Original>
          <Expanded>
            "expected exception" equals: "expected exception"
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="different case" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Expression success="true" type="REQUIRE_THROWS_WITH" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          <Original>
            thisThrows(), Equals( "expecteD Exception", Catch::CaseSensitive::No )
          </Original>
          <Expanded>
            "expected exception" equals: "expected exception" (case insensitive)
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="wildcarded" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Expression success="true" type="REQUIRE_THROWS_WITH" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          <Original>
            thisThrows(), StartsWith( "expected" )
          </Original>
          <Expanded>
            "expected exception" starts with: "expected"
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THROWS_WITH" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          <Original>
            thisThrows(), EndsWith( "exception" )
          </Original>
          <Expanded>
            "expected exception" ends with: "exception"
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THROWS_WITH" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          <Original>
            thisThrows(), Contains( "except" )
          </Original>
          <Expanded>
            "expected exception" contains: "except"
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THROWS_WITH" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          <Original>
            thisThrows(), Contains( "exCept", Catch::CaseSensitive::No )
          </Original>
          <Expanded>
            "expected exception" contains: "except" (case insensitive)
          </Expanded>
        </Expression>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Exceptions matchers" tags="[!throws][exceptions][matchers]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="true" type="REQUIRE_THROWS_MATCHES" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          throwsDerivedException(), DerivedException, Message("DerivedException::what")
        </Original>
        <Expanded>
          DerivedException::what exception message matches "DerivedException::what"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_THROWS_MATCHES" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          throwsDerivedException(), DerivedException, !Message("derivedexception::what")
        </Original>
        <Expanded>
          DerivedException::what not exception message matches "derivedexception::what"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_THROWS_MATCHES" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          throwsSpecialException(2), SpecialException, !Message("DerivedException::what")
        </Original>
        <Expanded>
          SpecialException::what not exception message matches "DerivedException::what"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_THROWS_MATCHES" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          throwsSpecialException(2), SpecialException, Message("SpecialException::what")
        </Original>
        <Expanded>
          SpecialException::what exception message matches "SpecialException::what"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Expected exceptions that don't throw or unexpected exceptions fail the test" tags="[!hide][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Expression success="false" type="CHECK_THROWS_AS" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Original>
          thisThrows(), std::string
        </Original>
        <Expanded>
          thisThrows(), std::string
        </Expanded>
        <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          expected exception
        </Exception>
      </Expression>
      <Expression success="false" type="CHECK_THROWS_AS" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Original>
          thisDoesntThrow(), std::domain_error
        </Original>
        <Expanded>
          thisDoesntThrow(), std::domain_error
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK_NOTHROW" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Original>
          thisThrows()
        </Original>
        <Expanded>
          thisThrows()
        </Expanded>
        <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          expected exception
        </Exception>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="FAIL aborts the test" tags="[!hide][.][failing][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Failure filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        This is a failure
      </Failure>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="FAIL does not require an argument" tags="[!hide][.][failing][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Failure filename="projects/<exe-name>/UsageTests/Message.tests.cpp" />
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="FAIL_CHECK does not abort the test" tags="[!hide][.][failing][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Failure filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        This is a failure
      </Failure>
      <Warning>
        This message appears in the output
      </Warning>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Factorials are computed" tags="[factorial]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          Factorial(0) == 1
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          Factorial(1) == 1
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          Factorial(2) == 2
        </Original>
        <Expanded>
          2 == 2
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          Factorial(3) == 6
        </Original>
        <Expanded>
          6 == 6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          Factorial(10) == 3628800
        </Original>
        <Expanded>
          3628800 (0x<hex digits>) == 3628800 (0x<hex digits>)
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Floating point matchers: double" tags="[floating-point][matchers]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Section name="Relative" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            10., WithinRel(11.1, 0.1)
          </Original>
          <Expanded>
            10.0 and 11.1 are within 10% of each other
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            10., !WithinRel(11.2, 0.1)
          </Original>
          <Expanded>
            10.0 not and 11.2 are within 10% of each other
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1., !WithinRel(0., 0.99)
          </Original>
          <Expanded>
            1.0 not and 0 are within 99% of each other
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            -0., WithinRel(0.)
          </Original>
          <Expanded>
            -0.0 and 0 are within 2.22045e-12% of each other
          </Expanded>
        </Expression>
        <Section name="Some subnormal values" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
            <Original>
              v1, WithinRel(v2)
            </Original>
            <Expanded>
              0.0 and 2.22507e-308 are within 2.22045e-12% of each other
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="5" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Margin" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1., WithinAbs(1., 0)
          </Original>
          <Expanded>
            1.0 is within 0.0 of 1.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            0., WithinAbs(1., 1)
          </Original>
          <Expanded>
            0.0 is within 1.0 of 1.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            0., !WithinAbs(1., 0.99)
          </Original>
          <Expanded>
            0.0 not is within 0.99 of 1.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            0., !WithinAbs(1., 0.99)
          </Original>
          <Expanded>
            0.0 not is within 0.99 of 1.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            11., !WithinAbs(10., 0.5)
          </Original>
          <Expanded>
            11.0 not is within 0.5 of 10.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            10., !WithinAbs(11., 0.5)
          </Original>
          <Expanded>
            10.0 not is within 0.5 of 11.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            -10., WithinAbs(-10., 0.5)
          </Original>
          <Expanded>
            -10.0 is within 0.5 of -10.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            -10., WithinAbs(-9.6, 0.5)
          </Original>
          <Expanded>
            -10.0 is within 0.5 of -9.6
          </Expanded>
        </Expression>
        <OverallResults successes="8" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="ULPs" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1., WithinULP(1., 0)
          </Original>
          <Expanded>
            1.0 is within 0 ULPs of 1.0000000000000000e+00 ([1.0000000000000000e+00, 1.0000000000000000e+00])
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            nextafter(1., 2.), WithinULP(1., 1)
          </Original>
          <Expanded>
            1.0 is within 1 ULPs of 1.0000000000000000e+00 ([9.9999999999999989e-01, 1.0000000000000002e+00])
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            0., WithinULP(nextafter(0., 1.), 1)
          </Original>
          <Expanded>
            0.0 is within 1 ULPs of 4.9406564584124654e-324 ([0.0000000000000000e+00, 9.8813129168249309e-324])
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1., WithinULP(nextafter(1., 0.), 1)
          </Original>
          <Expanded>
            1.0 is within 1 ULPs of 9.9999999999999989e-01 ([9.9999999999999978e-01, 1.0000000000000000e+00])
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1., !WithinULP(nextafter(1., 2.), 0)
          </Original>
          <Expanded>
            1.0 not is within 0 ULPs of 1.0000000000000002e+00 ([1.0000000000000002e+00, 1.0000000000000002e+00])
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1., WithinULP(1., 0)
          </Original>
          <Expanded>
            1.0 is within 0 ULPs of 1.0000000000000000e+00 ([1.0000000000000000e+00, 1.0000000000000000e+00])
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            -0., WithinULP(0., 0)
          </Original>
          <Expanded>
            -0.0 is within 0 ULPs of 0.0000000000000000e+00 ([0.0000000000000000e+00, 0.0000000000000000e+00])
          </Expanded>
        </Expression>
        <OverallResults successes="7" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Composed" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1., WithinAbs(1., 0.5) || WithinULP(2., 1)
          </Original>
          <Expanded>
            1.0 ( is within 0.5 of 1.0 or is within 1 ULPs of 2.0000000000000000e+00 ([1.9999999999999998e+00, 2.0000000000000004e+00]) )
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1., WithinAbs(2., 0.5) || WithinULP(1., 0)
          </Original>
          <Expanded>
            1.0 ( is within 0.5 of 2.0 or is within 0 ULPs of 1.0000000000000000e+00 ([1.0000000000000000e+00, 1.0000000000000000e+00]) )
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            0.0001, WithinAbs(0., 0.001) || WithinRel(0., 0.1)
          </Original>
          <Expanded>
            0.0001 ( is within 0.001 of 0.0 or and 0 are within 10% of each other )
          </Expanded>
        </Expression>
        <OverallResults successes="3" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Constructor validation" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            WithinAbs(1., 0.)
          </Original>
          <Expanded>
            WithinAbs(1., 0.)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THROWS_AS" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            WithinAbs(1., -1.), std::domain_error
          </Original>
          <Expanded>
            WithinAbs(1., -1.), std::domain_error
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            WithinULP(1., 0)
          </Original>
          <Expanded>
            WithinULP(1., 0)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            WithinRel(1., 0.)
          </Original>
          <Expanded>
            WithinRel(1., 0.)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THROWS_AS" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            WithinRel(1., -0.2), std::domain_error
          </Original>
          <Expanded>
            WithinRel(1., -0.2), std::domain_error
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THROWS_AS" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            WithinRel(1., 1.), std::domain_error
          </Original>
          <Expanded>
            WithinRel(1., 1.), std::domain_error
          </Expanded>
        </Expression>
        <OverallResults successes="6" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Floating point matchers: float" tags="[floating-point][matchers]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Section name="Relative" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            10.f, WithinRel(11.1f, 0.1f)
          </Original>
          <Expanded>
            10.0f and 11.1 are within 10% of each other
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            10.f, !WithinRel(11.2f, 0.1f)
          </Original>
          <Expanded>
            10.0f not and 11.2 are within 10% of each other
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1.f, !WithinRel(0.f, 0.99f)
          </Original>
          <Expanded>
            1.0f not and 0 are within 99% of each other
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            -0.f, WithinRel(0.f)
          </Original>
          <Expanded>
            -0.0f and 0 are within 0.00119209% of each other
          </Expanded>
        </Expression>
        <Section name="Some subnormal values" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
            <Original>
              v1, WithinRel(v2)
            </Original>
            <Expanded>
              0.0f and 1.17549e-38 are within 0.00119209% of each other
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="5" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Margin" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1.f, WithinAbs(1.f, 0)
          </Original>
          <Expanded>
            1.0f is within 0.0 of 1.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            0.f, WithinAbs(1.f, 1)
          </Original>
          <Expanded>
            0.0f is within 1.0 of 1.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            0.f, !WithinAbs(1.f, 0.99f)
          </Original>
          <Expanded>
            0.0f not is within 0.9900000095 of 1.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            0.f, !WithinAbs(1.f, 0.99f)
          </Original>
          <Expanded>
            0.0f not is within 0.9900000095 of 1.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            0.f, WithinAbs(-0.f, 0)
          </Original>
          <Expanded>
            0.0f is within 0.0 of -0.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            11.f, !WithinAbs(10.f, 0.5f)
          </Original>
          <Expanded>
            11.0f not is within 0.5 of 10.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            10.f, !WithinAbs(11.f, 0.5f)
          </Original>
          <Expanded>
            10.0f not is within 0.5 of 11.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            -10.f, WithinAbs(-10.f, 0.5f)
          </Original>
          <Expanded>
            -10.0f is within 0.5 of -10.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            -10.f, WithinAbs(-9.6f, 0.5f)
          </Original>
          <Expanded>
            -10.0f is within 0.5 of -9.6000003815
          </Expanded>
        </Expression>
        <OverallResults successes="9" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="ULPs" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1.f, WithinULP(1.f, 0)
          </Original>
          <Expanded>
            1.0f is within 0 ULPs of 1.00000000e+00f ([1.00000000e+00, 1.00000000e+00])
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            nextafter(1.f, 2.f), WithinULP(1.f, 1)
          </Original>
          <Expanded>
            1.0f is within 1 ULPs of 1.00000000e+00f ([9.99999940e-01, 1.00000012e+00])
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            0.f, WithinULP(nextafter(0.f, 1.f), 1)
          </Original>
          <Expanded>
            0.0f is within 1 ULPs of 1.40129846e-45f ([0.00000000e+00, 2.80259693e-45])
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1.f, WithinULP(nextafter(1.f, 0.f), 1)
          </Original>
          <Expanded>
            1.0f is within 1 ULPs of 9.99999940e-01f ([9.99999881e-01, 1.00000000e+00])
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1.f, !WithinULP(nextafter(1.f, 2.f), 0)
          </Original>
          <Expanded>
            1.0f not is within 0 ULPs of 1.00000012e+00f ([1.00000012e+00, 1.00000012e+00])
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1.f, WithinULP(1.f, 0)
          </Original>
          <Expanded>
            1.0f is within 0 ULPs of 1.00000000e+00f ([1.00000000e+00, 1.00000000e+00])
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            -0.f, WithinULP(0.f, 0)
          </Original>
          <Expanded>
            -0.0f is within 0 ULPs of 0.00000000e+00f ([0.00000000e+00, 0.00000000e+00])
          </Expanded>
        </Expression>
        <OverallResults successes="7" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Composed" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1.f, WithinAbs(1.f, 0.5) || WithinULP(1.f, 1)
          </Original>
          <Expanded>
            1.0f ( is within 0.5 of 1.0 or is within 1 ULPs of 1.00000000e+00f ([9.99999940e-01, 1.00000012e+00]) )
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            1.f, WithinAbs(2.f, 0.5) || WithinULP(1.f, 0)
          </Original>
          <Expanded>
            1.0f ( is within 0.5 of 2.0 or is within 0 ULPs of 1.00000000e+00f ([1.00000000e+00, 1.00000000e+00]) )
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            0.0001f, WithinAbs(0.f, 0.001f) || WithinRel(0.f, 0.1f)
          </Original>
          <Expanded>
            0.0001f ( is within 0.001 of 0.0 or and 0 are within 10% of each other )
          </Expanded>
        </Expression>
        <OverallResults successes="3" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Constructor validation" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            WithinAbs(1.f, 0.f)
          </Original>
          <Expanded>
            WithinAbs(1.f, 0.f)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THROWS_AS" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            WithinAbs(1.f, -1.f), std::domain_error
          </Original>
          <Expanded>
            WithinAbs(1.f, -1.f), std::domain_error
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            WithinULP(1.f, 0)
          </Original>
          <Expanded>
            WithinULP(1.f, 0)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THROWS_AS" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            WithinULP(1.f, static_cast&lt;uint64_t>(-1)), std::domain_error
          </Original>
          <Expanded>
            WithinULP(1.f, static_cast&lt;uint64_t>(-1)), std::domain_error
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            WithinRel(1.f, 0.f)
          </Original>
          <Expanded>
            WithinRel(1.f, 0.f)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THROWS_AS" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            WithinRel(1.f, -0.2f), std::domain_error
          </Original>
          <Expanded>
            WithinRel(1.f, -0.2f), std::domain_error
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THROWS_AS" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            WithinRel(1.f, 1.f), std::domain_error
          </Original>
          <Expanded>
            WithinRel(1.f, 1.f), std::domain_error
          </Expanded>
        </Expression>
        <OverallResults successes="7" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Generators -- adapters" tags="[generators][generic]" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
      <Section name="Filtering by predicate" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Basic usage" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              i % 2 == 0
            </Original>
            <Expanded>
              0 == 0
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Filtering by predicate" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Basic usage" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              i % 2 == 0
            </Original>
            <Expanded>
              0 == 0
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Filtering by predicate" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Basic usage" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              i % 2 == 0
            </Original>
            <Expanded>
              0 == 0
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Filtering by predicate" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Throws if there are no matching values" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE_THROWS_AS" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              filter([] (int) {return false; }, value(1)), Catch::GeneratorException
            </Original>
            <Expanded>
              filter([] (int) {return false; }, value(1)), Catch::GeneratorException
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Shortening a range" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            i &lt; 4
          </Original>
          <Expanded>
            1 &lt; 4
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Shortening a range" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            i &lt; 4
          </Original>
          <Expanded>
            2 &lt; 4
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Shortening a range" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            i &lt; 4
          </Original>
          <Expanded>
            3 &lt; 4
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Transforming elements" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Same type" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              i % 2 == 0
            </Original>
            <Expanded>
              0 == 0
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Transforming elements" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Same type" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              i % 2 == 0
            </Original>
            <Expanded>
              0 == 0
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Transforming elements" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Same type" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              i % 2 == 0
            </Original>
            <Expanded>
              0 == 0
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Transforming elements" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Different type" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              i.size() == 1
            </Original>
            <Expanded>
              1 == 1
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Transforming elements" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Different type" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              i.size() == 1
            </Original>
            <Expanded>
              1 == 1
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Transforming elements" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Different type" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              i.size() == 1
            </Original>
            <Expanded>
              1 == 1
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Transforming elements" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Different deduced type" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              i.size() == 1
            </Original>
            <Expanded>
              1 == 1
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Transforming elements" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Different deduced type" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              i.size() == 1
            </Original>
            <Expanded>
              1 == 1
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Transforming elements" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Different deduced type" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              i.size() == 1
            </Original>
            <Expanded>
              1 == 1
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Repeating a generator" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            j > 0
          </Original>
          <Expanded>
            1 > 0
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Repeating a generator" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            j > 0
          </Original>
          <Expanded>
            2 > 0
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Repeating a generator" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            j > 0
          </Original>
          <Expanded>
            3 > 0
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Repeating a generator" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            j > 0
          </Original>
          <Expanded>
            1 > 0
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Repeating a generator" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            j > 0
          </Original>
          <Expanded>
            2 > 0
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Repeating a generator" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            j > 0
          </Original>
          <Expanded>
            3 > 0
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Chunking a generator into sized pieces" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Number of elements in source is divisible by chunk size" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk2.size() == 2
            </Original>
            <Expanded>
              2 == 2
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk2.front() == chunk2.back()
            </Original>
            <Expanded>
              1 == 1
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Chunking a generator into sized pieces" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Number of elements in source is divisible by chunk size" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk2.size() == 2
            </Original>
            <Expanded>
              2 == 2
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk2.front() == chunk2.back()
            </Original>
            <Expanded>
              2 == 2
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Chunking a generator into sized pieces" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Number of elements in source is divisible by chunk size" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk2.size() == 2
            </Original>
            <Expanded>
              2 == 2
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk2.front() == chunk2.back()
            </Original>
            <Expanded>
              3 == 3
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Chunking a generator into sized pieces" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Number of elements in source is not divisible by chunk size" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk2.size() == 2
            </Original>
            <Expanded>
              2 == 2
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk2.front() == chunk2.back()
            </Original>
            <Expanded>
              1 == 1
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk2.front() &lt; 3
            </Original>
            <Expanded>
              1 &lt; 3
            </Expanded>
          </Expression>
          <OverallResults successes="3" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="3" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Chunking a generator into sized pieces" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Number of elements in source is not divisible by chunk size" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk2.size() == 2
            </Original>
            <Expanded>
              2 == 2
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk2.front() == chunk2.back()
            </Original>
            <Expanded>
              2 == 2
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk2.front() &lt; 3
            </Original>
            <Expanded>
              2 &lt; 3
            </Expanded>
          </Expression>
          <OverallResults successes="3" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="3" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Chunking a generator into sized pieces" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Chunk size of zero" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk2.size() == 0
            </Original>
            <Expanded>
              0 == 0
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Chunking a generator into sized pieces" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Chunk size of zero" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk2.size() == 0
            </Original>
            <Expanded>
              0 == 0
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Chunking a generator into sized pieces" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Chunk size of zero" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk2.size() == 0
            </Original>
            <Expanded>
              0 == 0
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Chunking a generator into sized pieces" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Section name="Throws on too small generators" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Expression success="true" type="REQUIRE_THROWS_AS" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
            <Original>
              chunk(2, value(1)), Catch::GeneratorException
            </Original>
            <Expanded>
              chunk(2, value(1)), Catch::GeneratorException
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Generators -- simple" tags="[generators]" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
      <Section name="one" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            j &lt; i
          </Original>
          <Expanded>
            -3 &lt; 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="one" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            j &lt; i
          </Original>
          <Expanded>
            -2 &lt; 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="one" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            j &lt; i
          </Original>
          <Expanded>
            -1 &lt; 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="two" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            4u * i > str.size()
          </Original>
          <Expanded>
            4 > 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="two" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            4u * i > str.size()
          </Original>
          <Expanded>
            4 > 2
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="two" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            4u * i > str.size()
          </Original>
          <Expanded>
            4 > 3
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="one" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            j &lt; i
          </Original>
          <Expanded>
            -3 &lt; 2
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="one" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            j &lt; i
          </Original>
          <Expanded>
            -2 &lt; 2
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="one" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            j &lt; i
          </Original>
          <Expanded>
            -1 &lt; 2
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="two" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            4u * i > str.size()
          </Original>
          <Expanded>
            8 > 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="two" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            4u * i > str.size()
          </Original>
          <Expanded>
            8 > 2
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="two" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            4u * i > str.size()
          </Original>
          <Expanded>
            8 > 3
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="one" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            j &lt; i
          </Original>
          <Expanded>
            -3 &lt; 3
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="one" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            j &lt; i
          </Original>
          <Expanded>
            -2 &lt; 3
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="one" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            j &lt; i
          </Original>
          <Expanded>
            -1 &lt; 3
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="two" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            4u * i > str.size()
          </Original>
          <Expanded>
            12 > 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="two" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            4u * i > str.size()
          </Original>
          <Expanded>
            12 > 2
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="two" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
          <Original>
            4u * i > str.size()
          </Original>
          <Expanded>
            12 > 3
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Generators internals" tags="[generators][internals]" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
      <Section name="Single value" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 123
          </Original>
          <Expanded>
            123 == 123
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            !(gen.next())
          </Original>
          <Expanded>
            !false
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Preset values" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.next()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 3
          </Original>
          <Expanded>
            3 == 3
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.next()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 5
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            !(gen.next())
          </Original>
          <Expanded>
            !false
          </Expanded>
        </Expression>
        <OverallResults successes="6" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Generator combinator" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.next()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 5
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.next()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 2
          </Original>
          <Expanded>
            2 == 2
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.next()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 4
          </Original>
          <Expanded>
            4 == 4
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.next()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            !(gen.next())
          </Original>
          <Expanded>
            !false
          </Expanded>
        </Expression>
        <OverallResults successes="10" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Explicitly typed generator sequence" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get().size() == 2
          </Original>
          <Expanded>
            2 == 2
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == "aa"
          </Original>
          <Expanded>
            "aa" == "aa"
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.next()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == "bb"
          </Original>
          <Expanded>
            "bb" == "bb"
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.next()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == "cc"
          </Original>
          <Expanded>
            "cc" == "cc"
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            !(gen.next())
          </Original>
          <Expanded>
            !false
          </Expanded>
        </Expression>
        <OverallResults successes="7" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Filter generator" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 1
          </Original>
          <Expanded>
            1 == 1
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.next()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 3
          </Original>
          <Expanded>
            3 == 3
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            !(gen.next())
          </Original>
          <Expanded>
            !false
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THROWS_AS" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            filter([] (int) { return false; }, value(1)), Catch::GeneratorException
          </Original>
          <Expanded>
            filter([] (int) { return false; }, value(1)), Catch::GeneratorException
          </Expanded>
        </Expression>
        <OverallResults successes="5" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Take generator" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Section name="Take less" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.get() == 1
            </Original>
            <Expanded>
              1 == 1
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.next()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.get() == 2
            </Original>
            <Expanded>
              2 == 2
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              !(gen.next())
            </Original>
            <Expanded>
              !false
            </Expanded>
          </Expression>
          <OverallResults successes="4" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Take generator" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Section name="Take more" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.get() == 1
            </Original>
            <Expanded>
              1 == 1
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              !(gen.next())
            </Original>
            <Expanded>
              !false
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Map with explicit return type" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 2.0
          </Original>
          <Expanded>
            2.0 == 2.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.next()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 4.0
          </Original>
          <Expanded>
            4.0 == 4.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.next()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 6.0
          </Original>
          <Expanded>
            6.0 == 6.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            !(gen.next())
          </Original>
          <Expanded>
            !false
          </Expanded>
        </Expression>
        <OverallResults successes="6" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Map with deduced return type" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 2.0
          </Original>
          <Expanded>
            2.0 == 2.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.next()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 4.0
          </Original>
          <Expanded>
            4.0 == 4.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.next()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            gen.get() == 6.0
          </Original>
          <Expanded>
            6.0 == 6.0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Original>
            !(gen.next())
          </Original>
          <Expanded>
            !false
          </Expanded>
        </Expression>
        <OverallResults successes="6" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Repeat" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Section name="Singular repeat" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.get() == 3
            </Original>
            <Expanded>
              3 == 3
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              !(gen.next())
            </Original>
            <Expanded>
              !false
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Repeat" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Section name="Actual repeat" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.get() == 1
            </Original>
            <Expanded>
              1 == 1
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.next()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.get() == 2
            </Original>
            <Expanded>
              2 == 2
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.next()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.get() == 3
            </Original>
            <Expanded>
              3 == 3
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.next()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.get() == 1
            </Original>
            <Expanded>
              1 == 1
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.next()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.get() == 2
            </Original>
            <Expanded>
              2 == 2
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.next()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              gen.get() == 3
            </Original>
            <Expanded>
              3 == 3
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Original>
              !(gen.next())
            </Original>
            <Expanded>
              !false
            </Expanded>
          </Expression>
          <OverallResults successes="12" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="12" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Range" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Section name="Positive auto step" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Section name="Integer" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                gen.get() == -2
              </Original>
              <Expanded>
                -2 == -2
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                gen.next()
              </Original>
              <Expanded>
                true
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                gen.get() == -1
              </Original>
              <Expanded>
                -1 == -1
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                gen.next()
              </Original>
              <Expanded>
                true
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                gen.get() == 0
              </Original>
              <Expanded>
                0 == 0
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                gen.next()
              </Original>
              <Expanded>
                true
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                gen.get() == 1
              </Original>
              <Expanded>
                1 == 1
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                !(gen.next())
              </Original>
              <Expanded>
                !false
              </Expanded>
            </Expression>
            <OverallResults successes="8" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="8" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="8" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Range" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Section name="Negative auto step" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Section name="Integer" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                gen.get() == 2
              </Original>
              <Expanded>
                2 == 2
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                gen.next()
              </Original>
              <Expanded>
                true
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                gen.get() == 1
              </Original>
              <Expanded>
                1 == 1
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                gen.next()
              </Original>
              <Expanded>
                true
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                gen.get() == 0
              </Original>
              <Expanded>
                0 == 0
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                gen.next()
              </Original>
              <Expanded>
                true
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                gen.get() == -1
              </Original>
              <Expanded>
                -1 == -1
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Original>
                !(gen.next())
              </Original>
              <Expanded>
                !false
              </Expanded>
            </Expression>
            <OverallResults successes="8" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="8" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="8" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Range" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Section name="Positive manual step" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Section name="Integer" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Section name="Exact" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -7
                </Original>
                <Expanded>
                  -7 == -7
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -4
                </Original>
                <Expanded>
                  -4 == -4
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -1
                </Original>
                <Expanded>
                  -1 == -1
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == 2
                </Original>
                <Expanded>
                  2 == 2
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  !(gen.next())
                </Original>
                <Expanded>
                  !false
                </Expanded>
              </Expression>
              <OverallResults successes="8" failures="0" expectedFailures="0"/>
            </Section>
            <OverallResults successes="8" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="8" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="8" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Range" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Section name="Positive manual step" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Section name="Integer" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Section name="Slightly over end" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -7
                </Original>
                <Expanded>
                  -7 == -7
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -4
                </Original>
                <Expanded>
                  -4 == -4
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -1
                </Original>
                <Expanded>
                  -1 == -1
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == 2
                </Original>
                <Expanded>
                  2 == 2
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  !(gen.next())
                </Original>
                <Expanded>
                  !false
                </Expanded>
              </Expression>
              <OverallResults successes="8" failures="0" expectedFailures="0"/>
            </Section>
            <OverallResults successes="8" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="8" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="8" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Range" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Section name="Positive manual step" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Section name="Integer" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Section name="Slightly under end" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -7
                </Original>
                <Expanded>
                  -7 == -7
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -4
                </Original>
                <Expanded>
                  -4 == -4
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -1
                </Original>
                <Expanded>
                  -1 == -1
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == 2
                </Original>
                <Expanded>
                  2 == 2
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == 5
                </Original>
                <Expanded>
                  5 == 5
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  !(gen.next())
                </Original>
                <Expanded>
                  !false
                </Expanded>
              </Expression>
              <OverallResults successes="10" failures="0" expectedFailures="0"/>
            </Section>
            <OverallResults successes="10" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="10" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="10" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Range" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Section name="Positive manual step" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Section name="Floating Point" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Section name="Exact" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Info>
                Current expected value is -1
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -1.0 == Approx( -1.0 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -1
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.9
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.9 == Approx( -0.9 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.9
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.8
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.8 == Approx( -0.8 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.8
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.7
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.7 == Approx( -0.7 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.7
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.6
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.6 == Approx( -0.6 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.6
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.5
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.5 == Approx( -0.5 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.5
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.4
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.4 == Approx( -0.4 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.4
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.3
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.3 == Approx( -0.3 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.3
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.2
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.2 == Approx( -0.2 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.2
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.1
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.1 == Approx( -0.1 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.1
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -1.38778e-16
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.0 == Approx( -0.0 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -1.38778e-16
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.1
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  0.1 == Approx( 0.1 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.1
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.2
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  0.2 == Approx( 0.2 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.2
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.3
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  0.3 == Approx( 0.3 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.3
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.4
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  0.4 == Approx( 0.4 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.4
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.5
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  0.5 == Approx( 0.5 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.5
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.6
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  0.6 == Approx( 0.6 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.6
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.7
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  0.7 == Approx( 0.7 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.7
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.8
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  0.8 == Approx( 0.8 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.8
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.9
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  0.9 == Approx( 0.9 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.9
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx( rangeEnd )
                </Original>
                <Expanded>
                  1.0 == Approx( 1.0 )
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  !(gen.next())
                </Original>
                <Expanded>
                  !false
                </Expanded>
              </Expression>
              <OverallResults successes="42" failures="0" expectedFailures="0"/>
            </Section>
            <OverallResults successes="42" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="42" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="42" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Range" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Section name="Positive manual step" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Section name="Floating Point" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Section name="Slightly over end" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Info>
                Current expected value is -1
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -1.0 == Approx( -1.0 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -1
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.7
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.7 == Approx( -0.7 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.7
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.4
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.4 == Approx( -0.4 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.4
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.1
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.1 == Approx( -0.1 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.1
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.2
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  0.2 == Approx( 0.2 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.2
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.5
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  0.5 == Approx( 0.5 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.5
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  !(gen.next())
                </Original>
                <Expanded>
                  !false
                </Expanded>
              </Expression>
              <OverallResults successes="13" failures="0" expectedFailures="0"/>
            </Section>
            <OverallResults successes="13" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="13" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="13" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Range" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Section name="Positive manual step" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Section name="Floating Point" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Section name="Slightly under end" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Info>
                Current expected value is -1
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -1.0 == Approx( -1.0 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -1
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.7
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.7 == Approx( -0.7 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.7
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.4
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.4 == Approx( -0.4 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.4
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.1
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  -0.1 == Approx( -0.1 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is -0.1
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.2
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  0.2 == Approx( 0.2 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.2
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.5
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == Approx(expected)
                </Original>
                <Expanded>
                  0.5 == Approx( 0.5 )
                </Expanded>
              </Expression>
              <Info>
                Current expected value is 0.5
              </Info>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  !(gen.next())
                </Original>
                <Expanded>
                  !false
                </Expanded>
              </Expression>
              <OverallResults successes="13" failures="0" expectedFailures="0"/>
            </Section>
            <OverallResults successes="13" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="13" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="13" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Range" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Section name="Negative manual step" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Section name="Integer" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Section name="Exact" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == 5
                </Original>
                <Expanded>
                  5 == 5
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == 2
                </Original>
                <Expanded>
                  2 == 2
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -1
                </Original>
                <Expanded>
                  -1 == -1
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -4
                </Original>
                <Expanded>
                  -4 == -4
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  !(gen.next())
                </Original>
                <Expanded>
                  !false
                </Expanded>
              </Expression>
              <OverallResults successes="8" failures="0" expectedFailures="0"/>
            </Section>
            <OverallResults successes="8" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="8" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="8" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Range" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Section name="Negative manual step" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Section name="Integer" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Section name="Slightly over end" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == 5
                </Original>
                <Expanded>
                  5 == 5
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == 2
                </Original>
                <Expanded>
                  2 == 2
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -1
                </Original>
                <Expanded>
                  -1 == -1
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -4
                </Original>
                <Expanded>
                  -4 == -4
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  !(gen.next())
                </Original>
                <Expanded>
                  !false
                </Expanded>
              </Expression>
              <OverallResults successes="8" failures="0" expectedFailures="0"/>
            </Section>
            <OverallResults successes="8" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="8" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="8" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Range" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
        <Section name="Negative manual step" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
          <Section name="Integer" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
            <Section name="Slightly under end" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == 5
                </Original>
                <Expanded>
                  5 == 5
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == 2
                </Original>
                <Expanded>
                  2 == 2
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -1
                </Original>
                <Expanded>
                  -1 == -1
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -4
                </Original>
                <Expanded>
                  -4 == -4
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.next()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  gen.get() == -7
                </Original>
                <Expanded>
                  -7 == -7
                </Expanded>
              </Expression>
              <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/GeneratorsImpl.tests.cpp" >
                <Original>
                  !(gen.next())
                </Original>
                <Expanded>
                  !false
                </Expanded>
              </Expression>
              <OverallResults successes="10" failures="0" expectedFailures="0"/>
            </Section>
            <OverallResults successes="10" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="10" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="10" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Greater-than inequalities with different epsilons" tags="[Approx]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d >= Approx( 1.22 )
        </Original>
        <Expanded>
          1.23 >= Approx( 1.22 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d >= Approx( 1.23 )
        </Original>
        <Expanded>
          1.23 >= Approx( 1.23 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          !(d >= Approx( 1.24 ))
        </Original>
        <Expanded>
          !(1.23 >= Approx( 1.24 ))
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d >= Approx( 1.24 ).epsilon(0.1)
        </Original>
        <Expanded>
          1.23 >= Approx( 1.24 )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="INFO and WARN do not abort tests" tags="[!hide][.][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Info>
        this is a message
      </Info>
      <Warning>
        this is a warning
      </Warning>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="INFO gets logged on failure" tags="[!hide][.][failing][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Info>
        this message should be logged
      </Info>
      <Info>
        so should this
      </Info>
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.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" tags="[!hide][.][failing][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Info>
        this message may be logged later
      </Info>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          a == 2
        </Original>
        <Expanded>
          2 == 2
        </Expanded>
      </Expression>
      <Info>
        this message may be logged later
      </Info>
      <Info>
        this message should be logged
      </Info>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          a == 1
        </Original>
        <Expanded>
          2 == 1
        </Expanded>
      </Expression>
      <Info>
        this message may be logged later
      </Info>
      <Info>
        this message should be logged
      </Info>
      <Info>
        and this, but later
      </Info>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          a == 0
        </Original>
        <Expanded>
          2 == 0
        </Expanded>
      </Expression>
      <Info>
        this message may be logged later
      </Info>
      <Info>
        this message should be logged
      </Info>
      <Info>
        and this, but later
      </Info>
      <Info>
        but not this
      </Info>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          a == 2
        </Original>
        <Expanded>
          2 == 2
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="INFO is reset for each loop" tags="[!hide][.][failing][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Info>
        current counter 0
      </Info>
      <Info>
        i := 0
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          i &lt; 10
        </Original>
        <Expanded>
          0 &lt; 10
        </Expanded>
      </Expression>
      <Info>
        current counter 1
      </Info>
      <Info>
        i := 1
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          i &lt; 10
        </Original>
        <Expanded>
          1 &lt; 10
        </Expanded>
      </Expression>
      <Info>
        current counter 2
      </Info>
      <Info>
        i := 2
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          i &lt; 10
        </Original>
        <Expanded>
          2 &lt; 10
        </Expanded>
      </Expression>
      <Info>
        current counter 3
      </Info>
      <Info>
        i := 3
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          i &lt; 10
        </Original>
        <Expanded>
          3 &lt; 10
        </Expanded>
      </Expression>
      <Info>
        current counter 4
      </Info>
      <Info>
        i := 4
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          i &lt; 10
        </Original>
        <Expanded>
          4 &lt; 10
        </Expanded>
      </Expression>
      <Info>
        current counter 5
      </Info>
      <Info>
        i := 5
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          i &lt; 10
        </Original>
        <Expanded>
          5 &lt; 10
        </Expanded>
      </Expression>
      <Info>
        current counter 6
      </Info>
      <Info>
        i := 6
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          i &lt; 10
        </Original>
        <Expanded>
          6 &lt; 10
        </Expanded>
      </Expression>
      <Info>
        current counter 7
      </Info>
      <Info>
        i := 7
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          i &lt; 10
        </Original>
        <Expanded>
          7 &lt; 10
        </Expanded>
      </Expression>
      <Info>
        current counter 8
      </Info>
      <Info>
        i := 8
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          i &lt; 10
        </Original>
        <Expanded>
          8 &lt; 10
        </Expanded>
      </Expression>
      <Info>
        current counter 9
      </Info>
      <Info>
        i := 9
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.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/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          i &lt; 10
        </Original>
        <Expanded>
          10 &lt; 10
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Inequality checks that should fail" tags="[!hide][!shouldfail][.][failing]" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven != 7
        </Original>
        <Expanded>
          7 != 7
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.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/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.double_pi != Approx( 3.1415926535 )
        </Original>
        <Expanded>
          3.1415926535 != Approx( 3.1415926535 )
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello != "hello"
        </Original>
        <Expanded>
          "hello" != "hello"
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello.size() != 5
        </Original>
        <Expanded>
          5 != 5
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Inequality checks that should succeed" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven != 6
        </Original>
        <Expanded>
          7 != 6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven != 8
        </Original>
        <Expanded>
          7 != 8
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.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/<exe-name>/UsageTests/Condition.tests.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/<exe-name>/UsageTests/Condition.tests.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/<exe-name>/UsageTests/Condition.tests.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/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.double_pi != Approx( 3.1415 )
        </Original>
        <Expanded>
          3.1415926535 != Approx( 3.1415 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello != "goodbye"
        </Original>
        <Expanded>
          "hello" != "goodbye"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello != "hell"
        </Original>
        <Expanded>
          "hello" != "hell"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello != "hello1"
        </Original>
        <Expanded>
          "hello" != "hello1"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello.size() != 6
        </Original>
        <Expanded>
          5 != 6
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Less-than inequalities with different epsilons" tags="[Approx]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d &lt;= Approx( 1.24 )
        </Original>
        <Expanded>
          1.23 &lt;= Approx( 1.24 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d &lt;= Approx( 1.23 )
        </Original>
        <Expanded>
          1.23 &lt;= Approx( 1.23 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          !(d &lt;= Approx( 1.22 ))
        </Original>
        <Expanded>
          !(1.23 &lt;= Approx( 1.22 ))
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d &lt;= Approx( 1.22 ).epsilon(0.1)
        </Original>
        <Expanded>
          1.23 &lt;= Approx( 1.22 )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="ManuallyRegistered" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Matchers can be (AllOf) composed with the &amp;&amp; operator" tags="[matchers][operator&amp;&amp;][operators]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), Contains("string") &amp;&amp; Contains("abc") &amp;&amp; Contains("substring") &amp;&amp; Contains("contains")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" ( contains: "string" and contains: "abc" and contains: "substring" and contains: "contains" )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Matchers can be (AnyOf) composed with the || operator" tags="[matchers][operators][operator||]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), Contains("string") || Contains("different") || Contains("random")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" ( contains: "string" or contains: "different" or contains: "random" )
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching2(), Contains("string") || Contains("different") || Contains("random")
        </Original>
        <Expanded>
          "some completely different text that contains one common word" ( contains: "string" or contains: "different" or contains: "random" )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Matchers can be composed with both &amp;&amp; and ||" tags="[matchers][operator&amp;&amp;][operators][operator||]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), (Contains("string") || Contains("different")) &amp;&amp; Contains("substring")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" ( ( contains: "string" or contains: "different" ) and contains: "substring" )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Matchers can be composed with both &amp;&amp; and || - failing" tags="[!hide][.][failing][matchers][operator&amp;&amp;][operators][operator||]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), (Contains("string") || Contains("different")) &amp;&amp; Contains("random")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" ( ( contains: "string" or contains: "different" ) and contains: "random" )
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Matchers can be negated (Not) with the ! operator" tags="[matchers][not][operators]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), !Contains("different")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" not contains: "different"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Matchers can be negated (Not) with the ! operator - failing" tags="[!hide][.][failing][matchers][not][operators]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), !Contains("substring")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" not contains: "substring"
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Mismatching exception messages failing the test" tags="[!hide][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Expression success="true" type="REQUIRE_THROWS_WITH" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Original>
          thisThrows(), "expected exception"
        </Original>
        <Expanded>
          "expected exception" equals: "expected exception"
        </Expanded>
      </Expression>
      <Expression success="false" type="REQUIRE_THROWS_WITH" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Original>
          thisThrows(), "should fail"
        </Original>
        <Expanded>
          "expected exception" equals: "should fail"
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Nested generators and captured variables" tags="[generators]" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          3 > -6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          4 > -6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          5 > -6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          6 > -6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          -5 > -6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          -4 > -6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          90 > -6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          91 > -6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          92 > -6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          93 > -6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          94 > -6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          95 > -6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          96 > -6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          97 > -6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          98 > -6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          values > -6
        </Original>
        <Expanded>
          99 > -6
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Nice descriptive name" tags="[!hide][.][tag1][tag2][tag3]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Warning>
        This one ran
      </Warning>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Non-std exceptions can be translated" tags="[!hide][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        custom exception
      </Exception>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Objects that evaluated in boolean contexts can be checked" tags="[SafeBool][Tricky]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          True
        </Original>
        <Expanded>
          {?}
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          !False
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_FALSE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          !(False)
        </Original>
        <Expanded>
          !{?}
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Optionally static assertions" tags="[compilation]" filename="projects/<exe-name>/UsageTests/Compilation.tests.cpp" >
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Ordering comparison checks that should fail" tags="[!hide][.][failing]" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven > 7
        </Original>
        <Expanded>
          7 > 7
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven &lt; 7
        </Original>
        <Expanded>
          7 &lt; 7
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven > 8
        </Original>
        <Expanded>
          7 > 8
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven &lt; 6
        </Original>
        <Expanded>
          7 &lt; 6
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven &lt; 0
        </Original>
        <Expanded>
          7 &lt; 0
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven &lt; -1
        </Original>
        <Expanded>
          7 &lt; -1
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven >= 8
        </Original>
        <Expanded>
          7 >= 8
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven &lt;= 6
        </Original>
        <Expanded>
          7 &lt;= 6
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.float_nine_point_one &lt; 9
        </Original>
        <Expanded>
          9.1f &lt; 9
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.float_nine_point_one > 10
        </Original>
        <Expanded>
          9.1f > 10
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.float_nine_point_one > 9.2
        </Original>
        <Expanded>
          9.1f > 9.2
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello > "hello"
        </Original>
        <Expanded>
          "hello" > "hello"
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello &lt; "hello"
        </Original>
        <Expanded>
          "hello" &lt; "hello"
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello > "hellp"
        </Original>
        <Expanded>
          "hello" > "hellp"
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello > "z"
        </Original>
        <Expanded>
          "hello" > "z"
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello &lt; "hellm"
        </Original>
        <Expanded>
          "hello" &lt; "hellm"
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello &lt; "a"
        </Original>
        <Expanded>
          "hello" &lt; "a"
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello >= "z"
        </Original>
        <Expanded>
          "hello" >= "z"
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello &lt;= "a"
        </Original>
        <Expanded>
          "hello" &lt;= "a"
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Ordering comparison checks that should succeed" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven &lt; 8
        </Original>
        <Expanded>
          7 &lt; 8
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven > 6
        </Original>
        <Expanded>
          7 > 6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven > 0
        </Original>
        <Expanded>
          7 > 0
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven > -1
        </Original>
        <Expanded>
          7 > -1
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven >= 7
        </Original>
        <Expanded>
          7 >= 7
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven >= 6
        </Original>
        <Expanded>
          7 >= 6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven &lt;= 7
        </Original>
        <Expanded>
          7 &lt;= 7
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.int_seven &lt;= 8
        </Original>
        <Expanded>
          7 &lt;= 8
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.float_nine_point_one > 9
        </Original>
        <Expanded>
          9.1f > 9
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.float_nine_point_one &lt; 10
        </Original>
        <Expanded>
          9.1f &lt; 10
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.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/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello &lt;= "hello"
        </Original>
        <Expanded>
          "hello" &lt;= "hello"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello >= "hello"
        </Original>
        <Expanded>
          "hello" >= "hello"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello &lt; "hellp"
        </Original>
        <Expanded>
          "hello" &lt; "hellp"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello &lt; "zebra"
        </Original>
        <Expanded>
          "hello" &lt; "zebra"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello > "hellm"
        </Original>
        <Expanded>
          "hello" > "hellm"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          data.str_hello > "a"
        </Original>
        <Expanded>
          "hello" > "a"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Our PCG implementation provides expected results for known seeds" tags="[rng]" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
      <Section name="Default seeded" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
          <Original>
            rng() == 0x<hex digits>
          </Original>
          <Expanded>
            4242248763 (0x<hex digits>)
==
4242248763 (0x<hex digits>)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
          <Original>
            rng() == 0x<hex digits>
          </Original>
          <Expanded>
            1867888929 (0x<hex digits>)
==
1867888929 (0x<hex digits>)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
          <Original>
            rng() == 0x<hex digits>
          </Original>
          <Expanded>
            1276619030 (0x<hex digits>)
==
1276619030 (0x<hex digits>)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
          <Original>
            rng() == 0x<hex digits>
          </Original>
          <Expanded>
            1911218783 (0x<hex digits>)
==
1911218783 (0x<hex digits>)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
          <Original>
            rng() == 0x<hex digits>
          </Original>
          <Expanded>
            1827115164 (0x<hex digits>)
==
1827115164 (0x<hex digits>)
          </Expanded>
        </Expression>
        <OverallResults successes="5" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Specific seed" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
          <Original>
            rng() == 0x<hex digits>
          </Original>
          <Expanded>
            1472234645 (0x<hex digits>)
==
1472234645 (0x<hex digits>)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
          <Original>
            rng() == 0x<hex digits>
          </Original>
          <Expanded>
            868832940 (0x<hex digits>)
==
868832940 (0x<hex digits>)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
          <Original>
            rng() == 0x<hex digits>
          </Original>
          <Expanded>
            570883446 (0x<hex digits>)
==
570883446 (0x<hex digits>)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
          <Original>
            rng() == 0x<hex digits>
          </Original>
          <Expanded>
            889299803 (0x<hex digits>)
==
889299803 (0x<hex digits>)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
          <Original>
            rng() == 0x<hex digits>
          </Original>
          <Expanded>
            4261393167 (0x<hex digits>)
==
4261393167 (0x<hex digits>)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
          <Original>
            rng() == 0x<hex digits>
          </Original>
          <Expanded>
            1472234645 (0x<hex digits>)
==
1472234645 (0x<hex digits>)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
          <Original>
            rng() == 0x<hex digits>
          </Original>
          <Expanded>
            868832940 (0x<hex digits>)
==
868832940 (0x<hex digits>)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
          <Original>
            rng() == 0x<hex digits>
          </Original>
          <Expanded>
            570883446 (0x<hex digits>)
==
570883446 (0x<hex digits>)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
          <Original>
            rng() == 0x<hex digits>
          </Original>
          <Expanded>
            889299803 (0x<hex digits>)
==
889299803 (0x<hex digits>)
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/RandomNumberGeneration.tests.cpp" >
          <Original>
            rng() == 0x<hex digits>
          </Original>
          <Expanded>
            4261393167 (0x<hex digits>)
==
4261393167 (0x<hex digits>)
          </Expanded>
        </Expression>
        <OverallResults successes="10" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Output from all sections is reported" tags="[!hide][.][failing][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Section name="one" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Failure filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
          Message from section one
        </Failure>
        <OverallResults successes="0" failures="1" expectedFailures="0"/>
      </Section>
      <Section name="two" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Failure filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
          Message from section two
        </Failure>
        <OverallResults successes="0" failures="1" expectedFailures="0"/>
      </Section>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Parse test names and tags" tags="[command-line][test-spec]" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
      <Section name="Empty test spec should have no filters" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches(tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcD ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            parseTestSpec( "*a" ).matches( tcA ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <OverallResults successes="6" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Wildcard at the end" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcD ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            parseTestSpec( "a*" ).matches( tcA ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <OverallResults successes="6" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Wildcard at both ends" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcD ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            parseTestSpec( "*a*" ).matches( tcA ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <OverallResults successes="6" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Redundant wildcard at the start" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcD ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <OverallResults successes="5" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Just wildcard" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcD ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <OverallResults successes="5" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Single tag" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Two tags" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcD ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <OverallResults successes="5" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="name exclusion" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcD ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <OverallResults successes="5" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="empty tag" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.hasFilters() == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcA ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcB ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcC ) == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( tcD ) == true
          </Original>
          <Expanded>
            true == true
          </Expanded>
        </Expression>
        <OverallResults successes="5" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Leading and trailing spaces in test spec" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( fakeTestCase( "  aardvark " ) )
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( fakeTestCase( "  aardvark" ) )
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( fakeTestCase( " aardvark " ) )
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( fakeTestCase( "aardvark " ) )
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( fakeTestCase( "aardvark" ) )
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <OverallResults successes="5" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Leading and trailing spaces in test name" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( fakeTestCase( "  aardvark " ) )
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( fakeTestCase( "  aardvark" ) )
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( fakeTestCase( " aardvark " ) )
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( fakeTestCase( "aardvark " ) )
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches( fakeTestCase( "aardvark" ) )
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <OverallResults successes="5" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Shortened hide tags are split apart when parsing" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches(fakeTestCase("hidden and foo", "[.][foo]"))
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_FALSE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            !(spec.matches(fakeTestCase("only foo", "[foo]")))
          </Original>
          <Expanded>
            !false
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Shortened hide tags also properly handle exclusion" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK_FALSE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            !(spec.matches(fakeTestCase("hidden and foo", "[.][foo]")))
          </Original>
          <Expanded>
            !false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_FALSE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            !(spec.matches(fakeTestCase("only foo", "[foo]")))
          </Original>
          <Expanded>
            !false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_FALSE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            !(spec.matches(fakeTestCase("only hidden", "[.]")))
          </Original>
          <Expanded>
            !false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            spec.matches(fakeTestCase("neither foo nor hidden", "[bar]"))
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Pointers can be compared to null" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          p == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          p == pNULL
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          p != 0
        </Original>
        <Expanded>
          0x<hex digits> != 0
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          cp != 0
        </Original>
        <Expanded>
          0x<hex digits> != 0
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          cpc != 0
        </Original>
        <Expanded>
          0x<hex digits> != 0
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          returnsNull() == 0
        </Original>
        <Expanded>
          {null string} == 0
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          returnsConstNull() == 0
        </Original>
        <Expanded>
          {null string} == 0
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          0 != p
        </Original>
        <Expanded>
          0 != 0x<hex digits>
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Precision of floating point stringification can be set" tags="[floatingPoint][toString]" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
      <Section name="Floats" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            str1.size() == 3 + 5
          </Original>
          <Expanded>
            8 == 8
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            str2.size() == 3 + 10
          </Original>
          <Expanded>
            13 == 13
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Double" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            str1.size() == 2 + 5
          </Original>
          <Expanded>
            7 == 7
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            str2.size() == 2 + 15
          </Original>
          <Expanded>
            17 == 17
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Predicate matcher can accept const char*" tags="[compilation][matchers]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          "foo", Predicate&lt;const char*>([] (const char* const&amp;) { return true; })
        </Original>
        <Expanded>
          "foo" matches undescribed predicate
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Process can be configured on command line" tags="[command-line][config]" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
      <Section name="empty args don't cause a crash" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            result
          </Original>
          <Expanded>
            {?}
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            config.processName == ""
          </Original>
          <Expanded>
            "" == ""
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="default - no arguments" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            result
          </Original>
          <Expanded>
            {?}
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            config.processName == "test"
          </Original>
          <Expanded>
            "test" == "test"
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            config.shouldDebugBreak == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            config.abortAfter == -1
          </Original>
          <Expanded>
            -1 == -1
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            config.noThrow == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            config.reporterName == "console"
          </Original>
          <Expanded>
            "console" == "console"
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_FALSE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Original>
            !(cfg.hasTestFilters())
          </Original>
          <Expanded>
            !false
          </Expanded>
        </Expression>
        <OverallResults successes="7" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="test lists" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="Specify one test case using" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              result
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cfg.hasTestFilters()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cfg.testSpec().matches(fakeTestCase("notIncluded")) == false
            </Original>
            <Expanded>
              false == false
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cfg.testSpec().matches(fakeTestCase("test1"))
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <OverallResults successes="4" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="test lists" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="Specify one test case exclusion using exclude:" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              result
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cfg.hasTestFilters()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cfg.testSpec().matches(fakeTestCase("test1")) == false
            </Original>
            <Expanded>
              false == false
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cfg.testSpec().matches(fakeTestCase("alwaysIncluded"))
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <OverallResults successes="4" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="test lists" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="Specify one test case exclusion using ~" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              result
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cfg.hasTestFilters()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cfg.testSpec().matches(fakeTestCase("test1")) == false
            </Original>
            <Expanded>
              false == false
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cfg.testSpec().matches(fakeTestCase("alwaysIncluded"))
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <OverallResults successes="4" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="reporter" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="-r/console" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test", "-r", "console"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.reporterName == "console"
            </Original>
            <Expanded>
              "console" == "console"
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="reporter" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="-r/xml" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test", "-r", "xml"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.reporterName == "xml"
            </Original>
            <Expanded>
              "xml" == "xml"
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="reporter" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="--reporter/junit" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test", "--reporter", "junit"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.reporterName == "junit"
            </Original>
            <Expanded>
              "junit" == "junit"
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="reporter" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="Only one reporter is accepted" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              !(cli.parse({ "test", "-r", "xml", "-r", "junit" }))
            </Original>
            <Expanded>
              !{?}
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="reporter" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="must match one of the available ones" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              !result
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              result.errorMessage(), Contains("Unrecognized reporter")
            </Original>
            <Expanded>
              "Unrecognized reporter, 'unsupported'. Check available with --list-reporters" contains: "Unrecognized reporter"
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="debugger" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="-b" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test", "-b"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="--break" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test", "--break"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="-a aborts after first failure" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test", "-a"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="-x 2 aborts after two failures" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test", "-x", "2"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="-x must be numeric" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              !result
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              result.errorMessage(), Contains("convert") &amp;&amp; Contains("oops")
            </Original>
            <Expanded>
              "Unable to convert 'oops' to destination type" ( contains: "convert" and contains: "oops" )
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="abort" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="wait-for-keypress" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Section name="Accepted options" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
              <Original>
                cli.parse({"test", "--wait-for-keypress", std::get&lt;0>(input)})
              </Original>
              <Expanded>
                {?}
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
              <Original>
                config.waitForKeypress == std::get&lt;1>(input)
              </Original>
              <Expanded>
                0 == 0
              </Expanded>
            </Expression>
            <OverallResults successes="2" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="abort" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="wait-for-keypress" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Section name="Accepted options" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
              <Original>
                cli.parse({"test", "--wait-for-keypress", std::get&lt;0>(input)})
              </Original>
              <Expanded>
                {?}
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
              <Original>
                config.waitForKeypress == std::get&lt;1>(input)
              </Original>
              <Expanded>
                1 == 1
              </Expanded>
            </Expression>
            <OverallResults successes="2" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="abort" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="wait-for-keypress" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Section name="Accepted options" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
              <Original>
                cli.parse({"test", "--wait-for-keypress", std::get&lt;0>(input)})
              </Original>
              <Expanded>
                {?}
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
              <Original>
                config.waitForKeypress == std::get&lt;1>(input)
              </Original>
              <Expanded>
                2 == 2
              </Expanded>
            </Expression>
            <OverallResults successes="2" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="abort" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="wait-for-keypress" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Section name="Accepted options" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
              <Original>
                cli.parse({"test", "--wait-for-keypress", std::get&lt;0>(input)})
              </Original>
              <Expanded>
                {?}
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
              <Original>
                config.waitForKeypress == std::get&lt;1>(input)
              </Original>
              <Expanded>
                3 == 3
              </Expanded>
            </Expression>
            <OverallResults successes="2" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="abort" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="wait-for-keypress" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Section name="invalid options are reported" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
              <Original>
                !result
              </Original>
              <Expanded>
                true
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
              <Original>
                result.errorMessage(), Contains("never") &amp;&amp; Contains("both")
              </Original>
              <Expanded>
                "keypress argument must be one of: never, start, exit or both. 'sometimes' not recognised" ( contains: "never" and contains: "both" )
              </Expanded>
            </Expression>
            <OverallResults successes="2" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="nothrow" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="-e" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test", "-e"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.noThrow
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="nothrow" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="--nothrow" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test", "--nothrow"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.noThrow
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="output filename" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="-o filename" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test", "-o", "filename.ext"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.outputFilename == "filename.ext"
            </Original>
            <Expanded>
              "filename.ext" == "filename.ext"
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="output filename" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="--out" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test", "--out", "filename.ext"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.outputFilename == "filename.ext"
            </Original>
            <Expanded>
              "filename.ext" == "filename.ext"
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="combinations" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="Single character flags can be combined" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test", "-abe"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.abortAfter == 1
            </Original>
            <Expanded>
              1 == 1
            </Expanded>
          </Expression>
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.shouldDebugBreak
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.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="use-colour" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="without option" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.useColour == UseColour::Auto
            </Original>
            <Expanded>
              0 == 0
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="use-colour" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="auto" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test", "--use-colour", "auto"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.useColour == UseColour::Auto
            </Original>
            <Expanded>
              0 == 0
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="use-colour" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="yes" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test", "--use-colour", "yes"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.useColour == UseColour::Yes
            </Original>
            <Expanded>
              1 == 1
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="use-colour" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="no" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({"test", "--use-colour", "no"})
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.useColour == UseColour::No
            </Original>
            <Expanded>
              2 == 2
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="use-colour" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="error" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              !result
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              result.errorMessage(), Contains( "colour mode must be one of" )
            </Original>
            <Expanded>
              "colour mode must be one of: auto, yes or no. 'wrong' not recognised" contains: "colour mode must be one of"
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Benchmark options" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="samples" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({ "test", "--benchmark-samples=200" })
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.benchmarkSamples == 200
            </Original>
            <Expanded>
              200 == 200
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Benchmark options" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="resamples" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({ "test", "--benchmark-resamples=20000" })
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.benchmarkResamples == 20000
            </Original>
            <Expanded>
              20000 (0x<hex digits>) == 20000 (0x<hex digits>)
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Benchmark options" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="confidence-interval" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({ "test", "--benchmark-confidence-interval=0.99" })
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.benchmarkConfidenceInterval == Catch::Detail::Approx(0.99)
            </Original>
            <Expanded>
              0.99 == Approx( 0.99 )
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Benchmark options" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="no-analysis" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({ "test", "--benchmark-no-analysis" })
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.benchmarkNoAnalysis
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Benchmark options" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
        <Section name="warmup-time" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
          <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              cli.parse({ "test", "--benchmark-warmup-time=10" })
            </Original>
            <Expanded>
              {?}
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
            <Original>
              config.benchmarkWarmupTime == 10
            </Original>
            <Expanded>
              10 == 10
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Product with differing arities - std::tuple&lt;int, double, float>" tags="[product][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          std::tuple_size&lt;TestType>::value >= 1
        </Original>
        <Expanded>
          3 >= 1
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Product with differing arities - std::tuple&lt;int, double>" tags="[product][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          std::tuple_size&lt;TestType>::value >= 1
        </Original>
        <Expanded>
          2 >= 1
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Product with differing arities - std::tuple&lt;int>" tags="[product][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          std::tuple_size&lt;TestType>::value >= 1
        </Original>
        <Expanded>
          1 >= 1
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Reconstruction should be based on stringification: #914" tags="[!hide][.][Decomposition][failing]" filename="projects/<exe-name>/UsageTests/Decomposition.tests.cpp" >
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Decomposition.tests.cpp" >
        <Original>
          truthy(false)
        </Original>
        <Expanded>
          Hey, its truthy!
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Regex string matcher" tags="[!hide][.][failing][matchers]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), Matches("this STRING contains 'abc' as a substring")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" matches "this STRING contains 'abc' as a substring" case sensitively
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), Matches("contains 'abc' as a substring")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" matches "contains 'abc' as a substring" case sensitively
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), Matches("this string contains 'abc' as a")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" matches "this string contains 'abc' as a" case sensitively
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Regression test #1" tags="[matchers][vector]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          actual, !UnorderedEquals(expected)
        </Original>
        <Expanded>
          { 'a', 'b' } not UnorderedEquals: { 'c', 'b' }
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="SUCCEED counts as a test pass" tags="[messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="SUCCEED does not require an argument" tags="[!hide][.][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Scenario: BDD tests requiring Fixtures to provide commonly-accessed data or methods" tags="[bdd][fixtures]" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
      <Section name="Given: No operations precede me" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
          <Original>
            before == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Section name="When: We get the count" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
          <Section name="Then: Subsequently values are higher" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/BDD.tests.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="Scenario: Do that thing with the thing" tags="[Tags]" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
      <Section name="Given: This stuff exists" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
        <Section name="And given: And some assumption" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
          <Section name="When: I do this" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
            <Section name="Then: it should do this" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
              <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
                <Original>
                  itDoesThis()
                </Original>
                <Expanded>
                  true
                </Expanded>
              </Expression>
              <Section name="And: do that" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
                <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/BDD.tests.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>
        <OverallResults successes="2" 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" tags="[anotherReallyLongTagNameButThisOneHasNoObviousWrapPointsSoShouldSplitWithinAWordUsingADashCharacter][long][lots][one very long tag name that should cause line wrapping writing out using the list command][tags][verbose][very long tags]" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
      <Section name="Given: A section name that is so long that it cannot fit in a single console width" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
        <Section name="When: The test headers are printed as part of the normal running of the scenario" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
          <Section name="Then: The, deliberately very long and overly verbose (you see what I did there?) section names must wrap, along with an indent" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
            <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: Vector resizing affects size and capacity" tags="[bdd][capacity][size][vector]" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
      <Section name="Given: an empty vector" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
          <Original>
            v.size() == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Section name="When: it is made larger" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
          <Section name="Then: the size and capacity go up" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
              <Original>
                v.size() == 10
              </Original>
              <Expanded>
                10 == 10
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
              <Original>
                v.capacity() >= 10
              </Original>
              <Expanded>
                10 >= 10
              </Expanded>
            </Expression>
            <Section name="And when: it is made smaller again" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
              <Section name="Then: the size goes down but the capacity stays the same" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
                <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
                  <Original>
                    v.size() == 5
                  </Original>
                  <Expanded>
                    5 == 5
                  </Expanded>
                </Expression>
                <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/BDD.tests.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" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
          <Original>
            v.size() == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Section name="When: we reserve more space" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
          <Section name="Then: The capacity is increased but the size remains the same" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/BDD.tests.cpp" >
              <Original>
                v.capacity() >= 10
              </Original>
              <Expanded>
                10 >= 10
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/BDD.tests.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="Sends stuff to stdout and stderr" tags="[!hide][.]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <OverallResult success="false">
        <StdOut>
A string sent directly to stdout
        </StdOut>
        <StdErr>
A string sent directly to stderr
A string sent to stderr via clog
        </StdErr>
      </OverallResult>
    </TestCase>
    <TestCase name="Some simple comparisons between doubles" tags="[Approx]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d == Approx( 1.23 )
        </Original>
        <Expanded>
          1.23 == Approx( 1.23 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d != Approx( 1.22 )
        </Original>
        <Expanded>
          1.23 != Approx( 1.22 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d != Approx( 1.24 )
        </Original>
        <Expanded>
          1.23 != Approx( 1.24 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d == 1.23_a
        </Original>
        <Expanded>
          1.23 == Approx( 1.23 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d != 1.22_a
        </Original>
        <Expanded>
          1.23 != Approx( 1.22 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx( d ) == 1.23
        </Original>
        <Expanded>
          Approx( 1.23 ) == 1.23
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx( d ) != 1.22
        </Original>
        <Expanded>
          Approx( 1.23 ) != 1.22
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          Approx( d ) != 1.24
        </Original>
        <Expanded>
          Approx( 1.23 ) != 1.24
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Standard output from all sections is reported" tags="[!hide][.][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Section name="one" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <OverallResults successes="0" failures="1" expectedFailures="0"/>
      </Section>
      <Section name="two" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <OverallResults successes="0" failures="1" expectedFailures="0"/>
      </Section>
      <OverallResult success="false">
        <StdOut>
Message from section one
Message from section two
        </StdOut>
      </OverallResult>
    </TestCase>
    <TestCase name="StartsWith string matcher" tags="[!hide][.][failing][matchers]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), StartsWith("This String")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" starts with: "This String"
        </Expanded>
      </Expression>
      <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), StartsWith("string", Catch::CaseSensitive::No)
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" starts with: "string" (case insensitive)
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Static arrays are convertible to string" tags="[toString]" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
      <Section name="Single item" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            Catch::Detail::stringify(singular) == "{ 1 }"
          </Original>
          <Expanded>
            "{ 1 }" == "{ 1 }"
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Multiple" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            Catch::Detail::stringify(arr) == "{ 3, 2, 1 }"
          </Original>
          <Expanded>
            "{ 3, 2, 1 }" == "{ 3, 2, 1 }"
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Non-trivial inner items" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            Catch::Detail::stringify(arr) == R"({ { "1:1", "1:2", "1:3" }, { "2:1", "2:2" } })"
          </Original>
          <Expanded>
            "{ { "1:1", "1:2", "1:3" }, { "2:1", "2:2" } }"
==
"{ { "1:1", "1:2", "1:3" }, { "2:1", "2:2" } }"
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="String matchers" tags="[matchers]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), Contains("string")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" contains: "string"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), Contains("string", Catch::CaseSensitive::No)
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" contains: "string" (case insensitive)
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), Contains("abc")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" contains: "abc"
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), Contains("aBC", Catch::CaseSensitive::No)
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" contains: "abc" (case insensitive)
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), StartsWith("this")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" starts with: "this"
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), StartsWith("THIS", Catch::CaseSensitive::No)
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" starts with: "this" (case insensitive)
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), EndsWith("substring")
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" ends with: "substring"
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Original>
          testStringForMatching(), EndsWith(" SuBsTrInG", Catch::CaseSensitive::No)
        </Original>
        <Expanded>
          "this string contains 'abc' as a substring" ends with: " substring" (case insensitive)
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="StringRef" tags="[StringRef][Strings]" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
      <Section name="Empty string" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            empty.empty()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            empty.size() == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            empty.isNullTerminated()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            std::strcmp( empty.c_str(), "" ) == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="From string literal" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            s.empty() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            s.size() == 5
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            s.isNullTerminated()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            std::strcmp( rawChars, "hello" ) == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            s.c_str()
          </Original>
          <Expanded>
            s.c_str()
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            s.c_str() == rawChars
          </Original>
          <Expanded>
            "hello" == "hello"
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            s.data() == rawChars
          </Original>
          <Expanded>
            "hello" == "hello"
          </Expanded>
        </Expression>
        <OverallResults successes="7" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="From sub-string" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            original == "original"
          </Original>
          <Expanded>
            original == "original"
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_FALSE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            !(original.isNullTerminated())
          </Original>
          <Expanded>
            !false
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THROWS" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            original.c_str()
          </Original>
          <Expanded>
            original.c_str()
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            original.data()
          </Original>
          <Expanded>
            original.data()
          </Expanded>
        </Expression>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Substrings" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <Section name="zero-based substring" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              ss.empty() == false
            </Original>
            <Expanded>
              false == false
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              ss.size() == 5
            </Original>
            <Expanded>
              5 == 5
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              std::strncmp( ss.data(), "hello", 5 ) == 0
            </Original>
            <Expanded>
              0 == 0
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              ss == "hello"
            </Original>
            <Expanded>
              hello == "hello"
            </Expanded>
          </Expression>
          <OverallResults successes="4" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Substrings" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <Section name="non-zero-based substring" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              ss.size() == 6
            </Original>
            <Expanded>
              6 == 6
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              std::strcmp( ss.c_str(), "world!" ) == 0
            </Original>
            <Expanded>
              0 == 0
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Substrings" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <Section name="Pointer values of full refs should match" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              s.data() == s2.data()
            </Original>
            <Expanded>
              "hello world!" == "hello world!"
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Substrings" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <Section name="Pointer values of substring refs should also match" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              s.data() == ss.data()
            </Original>
            <Expanded>
              "hello world!" == "hello world!"
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Substrings" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <Section name="Past the end substring" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              s.substr(s.size() + 1, 123).empty()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Substrings" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <Section name="Substring off the end are trimmed" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              std::strcmp(ss.c_str(), "world!") == 0
            </Original>
            <Expanded>
              0 == 0
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Comparisons are deep" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            (char*)buffer1 != (char*)buffer2
          </Original>
          <Expanded>
            "Hello" != "Hello"
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            left == right
          </Original>
          <Expanded>
            Hello == Hello
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Original>
            left != left.substr(0, 3)
          </Original>
          <Expanded>
            Hello != Hel
          </Expanded>
        </Expression>
        <OverallResults successes="3" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="from std::string" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <Section name="implicitly constructed" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              sr == "a standard string"
            </Original>
            <Expanded>
              a standard string == "a standard string"
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              sr.size() == stdStr.size()
            </Original>
            <Expanded>
              17 == 17
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="from std::string" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <Section name="explicitly constructed" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              sr == "a standard string"
            </Original>
            <Expanded>
              a standard string == "a standard string"
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              sr.size() == stdStr.size()
            </Original>
            <Expanded>
              17 == 17
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="from std::string" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <Section name="assigned" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              sr == "a standard string"
            </Original>
            <Expanded>
              a standard string == "a standard string"
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              sr.size() == stdStr.size()
            </Original>
            <Expanded>
              17 == 17
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="to std::string" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <Section name="explicitly constructed" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              stdStr == "a stringref"
            </Original>
            <Expanded>
              "a stringref" == "a stringref"
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              stdStr.size() == sr.size()
            </Original>
            <Expanded>
              11 == 11
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="to std::string" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <Section name="assigned" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              stdStr == "a stringref"
            </Original>
            <Expanded>
              "a stringref" == "a stringref"
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
            <Original>
              stdStr.size() == sr.size()
            </Original>
            <Expanded>
              11 == 11
            </Expanded>
          </Expression>
          <OverallResults successes="2" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="StringRef at compilation time" tags="[StringRef][Strings][constexpr]" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
      <Section name="Simple constructors" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <OverallResults successes="5" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="UDL construction" filename="projects/<exe-name>/IntrospectiveTests/String.tests.cpp" >
        <OverallResults successes="6" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Stringifying std::chrono::duration helpers" tags="[chrono][toString]" filename="projects/<exe-name>/UsageTests/ToStringChrono.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringChrono.tests.cpp" >
        <Original>
          minute == seconds
        </Original>
        <Expanded>
          1 m == 60 s
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringChrono.tests.cpp" >
        <Original>
          hour != seconds
        </Original>
        <Expanded>
          1 h != 60 s
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringChrono.tests.cpp" >
        <Original>
          micro != milli
        </Original>
        <Expanded>
          1 us != 1 ms
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringChrono.tests.cpp" >
        <Original>
          nano != micro
        </Original>
        <Expanded>
          1 ns != 1 us
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Stringifying std::chrono::duration with weird ratios" tags="[chrono][toString]" filename="projects/<exe-name>/UsageTests/ToStringChrono.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringChrono.tests.cpp" >
        <Original>
          half_minute != femto_second
        </Original>
        <Expanded>
          1 [30/1]s != 1 fs
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringChrono.tests.cpp" >
        <Original>
          pico_second != atto_second
        </Original>
        <Expanded>
          1 ps != 1 as
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Stringifying std::chrono::time_point&lt;system_clock>" tags="[chrono][toString]" filename="projects/<exe-name>/UsageTests/ToStringChrono.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringChrono.tests.cpp" >
        <Original>
          now != later
        </Original>
        <Expanded>
          {iso8601-timestamp}
!=
{iso8601-timestamp}
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Tabs and newlines show in output" tags="[!hide][.][failing][whitespace]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          s1 == s2
        </Original>
        <Expanded>
          "if ($b == 10) {
		$a	= 20;
}"
==
"if ($b == 10) {
	$a = 20;
}
"
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Tag alias can be registered against tag patterns" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
      <Section name="The same tag alias can only be registered once" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
          <Original>
            what, Contains( "[@zzz]" )
          </Original>
          <Expanded>
            "error: tag alias, '[@zzz]' already registered.
	First seen at: file:2
	Redefined at: file:10" contains: "[@zzz]"
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
          <Original>
            what, Contains( "file" )
          </Original>
          <Expanded>
            "error: tag alias, '[@zzz]' already registered.
	First seen at: file:2
	Redefined at: file:10" contains: "file"
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
          <Original>
            what, Contains( "2" )
          </Original>
          <Expanded>
            "error: tag alias, '[@zzz]' already registered.
	First seen at: file:2
	Redefined at: file:10" contains: "2"
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
          <Original>
            what, Contains( "10" )
          </Original>
          <Expanded>
            "error: tag alias, '[@zzz]' already registered.
	First seen at: file:2
	Redefined at: file:10" contains: "10"
          </Expanded>
        </Expression>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Tag aliases must be of the form [@name]" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
        <Expression success="true" type="CHECK_THROWS" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
          <Original>
            registry.add( "[no ampersat]", "", Catch::SourceLineInfo( "file", 3 ) )
          </Original>
          <Expanded>
            registry.add( "[no ampersat]", "", Catch::SourceLineInfo( "file", 3 ) )
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THROWS" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
          <Original>
            registry.add( "[the @ is not at the start]", "", Catch::SourceLineInfo( "file", 3 ) )
          </Original>
          <Expanded>
            registry.add( "[the @ is not at the start]", "", Catch::SourceLineInfo( "file", 3 ) )
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THROWS" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
          <Original>
            registry.add( "@no square bracket at start]", "", Catch::SourceLineInfo( "file", 3 ) )
          </Original>
          <Expanded>
            registry.add( "@no square bracket at start]", "", Catch::SourceLineInfo( "file", 3 ) )
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THROWS" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
          <Original>
            registry.add( "[@no square bracket at end", "", Catch::SourceLineInfo( "file", 3 ) )
          </Original>
          <Expanded>
            registry.add( "[@no square bracket at end", "", Catch::SourceLineInfo( "file", 3 ) )
          </Expanded>
        </Expression>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Template test case method with test types specified inside std::tuple - MyTypes - 0" tags="[class][list][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture&lt;TestType>::m_a == 1
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Template test case method with test types specified inside std::tuple - MyTypes - 1" tags="[class][list][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture&lt;TestType>::m_a == 1
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Template test case method with test types specified inside std::tuple - MyTypes - 2" tags="[class][list][template]" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Class.tests.cpp" >
        <Original>
          Template_Fixture&lt;TestType>::m_a == 1
        </Original>
        <Expanded>
          1.0 == 1
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Template test case with test types specified inside non-copyable and non-movable std::tuple - NonCopyableAndNonMovableTypes - 0" tags="[list][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          sizeof(TestType) > 0
        </Original>
        <Expanded>
          1 > 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Template test case with test types specified inside non-copyable and non-movable std::tuple - NonCopyableAndNonMovableTypes - 1" tags="[list][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          sizeof(TestType) > 0
        </Original>
        <Expanded>
          4 > 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Template test case with test types specified inside non-default-constructible std::tuple - MyNonDefaultConstructibleTypes - 0" tags="[list][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          sizeof(TestType) > 0
        </Original>
        <Expanded>
          1 > 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Template test case with test types specified inside non-default-constructible std::tuple - MyNonDefaultConstructibleTypes - 1" tags="[list][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          sizeof(TestType) > 0
        </Original>
        <Expanded>
          4 > 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Template test case with test types specified inside std::tuple - MyTypes - 0" tags="[list][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          sizeof(TestType) > 0
        </Original>
        <Expanded>
          4 > 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Template test case with test types specified inside std::tuple - MyTypes - 1" tags="[list][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          sizeof(TestType) > 0
        </Original>
        <Expanded>
          1 > 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Template test case with test types specified inside std::tuple - MyTypes - 2" tags="[list][template]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          sizeof(TestType) > 0
        </Original>
        <Expanded>
          4 > 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="TemplateTest: vectors can be sized and resized - float" tags="[template][vector]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="resizing bigger changes size and capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 10
          </Original>
          <Expanded>
            10 == 10
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="resizing smaller changes size but not capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= 5
          </Original>
          <Expanded>
            5 >= 5
          </Expanded>
        </Expression>
        <Section name="We can use the 'swap trick' to reset the capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="reserving bigger changes capacity but not size" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 5
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="reserving smaller does not change size or capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 5
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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="TemplateTest: vectors can be sized and resized - int" tags="[template][vector]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="resizing bigger changes size and capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 10
          </Original>
          <Expanded>
            10 == 10
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="resizing smaller changes size but not capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= 5
          </Original>
          <Expanded>
            5 >= 5
          </Expanded>
        </Expression>
        <Section name="We can use the 'swap trick' to reset the capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="reserving bigger changes capacity but not size" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 5
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="reserving smaller does not change size or capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 5
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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="TemplateTest: vectors can be sized and resized - std::string" tags="[template][vector]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="resizing bigger changes size and capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 10
          </Original>
          <Expanded>
            10 == 10
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="resizing smaller changes size but not capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= 5
          </Original>
          <Expanded>
            5 >= 5
          </Expanded>
        </Expression>
        <Section name="We can use the 'swap trick' to reset the capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="reserving bigger changes capacity but not size" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 5
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="reserving smaller does not change size or capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 5
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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="TemplateTest: vectors can be sized and resized - std::tuple&lt;int,float>" tags="[template][vector]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="resizing bigger changes size and capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 10
          </Original>
          <Expanded>
            10 == 10
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="resizing smaller changes size but not capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= 5
          </Original>
          <Expanded>
            5 >= 5
          </Expanded>
        </Expression>
        <Section name="We can use the 'swap trick' to reset the capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="reserving bigger changes capacity but not size" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 5
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="reserving smaller does not change size or capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 5
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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="TemplateTestSig: vectors can be sized and resized - (std::tuple&lt;int, float>), 6" tags="[nttp][template][vector]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          6 == 6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          6 >= 6
        </Expanded>
      </Expression>
      <Section name="resizing bigger changes size and capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 2 * V
          </Original>
          <Expanded>
            12 == 12
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= 2 * V
          </Original>
          <Expanded>
            12 >= 12
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          6 == 6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          6 >= 6
        </Expanded>
      </Expression>
      <Section name="resizing smaller changes size but not capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= V
          </Original>
          <Expanded>
            6 >= 6
          </Expanded>
        </Expression>
        <Section name="We can use the 'swap trick' to reset the capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          6 == 6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          6 >= 6
        </Expanded>
      </Expression>
      <Section name="reserving bigger changes capacity but not size" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == V
          </Original>
          <Expanded>
            6 == 6
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= 2 * V
          </Original>
          <Expanded>
            12 >= 12
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          6 == 6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          6 >= 6
        </Expanded>
      </Expression>
      <Section name="reserving smaller does not change size or capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == V
          </Original>
          <Expanded>
            6 == 6
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= V
          </Original>
          <Expanded>
            6 >= 6
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="TemplateTestSig: vectors can be sized and resized - float,4" tags="[nttp][template][vector]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          4 == 4
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          4 >= 4
        </Expanded>
      </Expression>
      <Section name="resizing bigger changes size and capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 2 * V
          </Original>
          <Expanded>
            8 == 8
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= 2 * V
          </Original>
          <Expanded>
            8 >= 8
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          4 == 4
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          4 >= 4
        </Expanded>
      </Expression>
      <Section name="resizing smaller changes size but not capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= V
          </Original>
          <Expanded>
            4 >= 4
          </Expanded>
        </Expression>
        <Section name="We can use the 'swap trick' to reset the capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          4 == 4
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          4 >= 4
        </Expanded>
      </Expression>
      <Section name="reserving bigger changes capacity but not size" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == V
          </Original>
          <Expanded>
            4 == 4
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= 2 * V
          </Original>
          <Expanded>
            8 >= 8
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          4 == 4
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          4 >= 4
        </Expanded>
      </Expression>
      <Section name="reserving smaller does not change size or capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == V
          </Original>
          <Expanded>
            4 == 4
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= V
          </Original>
          <Expanded>
            4 >= 4
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="TemplateTestSig: vectors can be sized and resized - int,5" tags="[nttp][template][vector]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="resizing bigger changes size and capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 2 * V
          </Original>
          <Expanded>
            10 == 10
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= 2 * V
          </Original>
          <Expanded>
            10 >= 10
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="resizing smaller changes size but not capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= V
          </Original>
          <Expanded>
            5 >= 5
          </Expanded>
        </Expression>
        <Section name="We can use the 'swap trick' to reset the capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="reserving bigger changes capacity but not size" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == V
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= 2 * V
          </Original>
          <Expanded>
            10 >= 10
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="reserving smaller does not change size or capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == V
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= V
          </Original>
          <Expanded>
            5 >= 5
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="TemplateTestSig: vectors can be sized and resized - std::string,15" tags="[nttp][template][vector]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          15 == 15
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          15 >= 15
        </Expanded>
      </Expression>
      <Section name="resizing bigger changes size and capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 2 * V
          </Original>
          <Expanded>
            30 == 30
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= 2 * V
          </Original>
          <Expanded>
            30 >= 30
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          15 == 15
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          15 >= 15
        </Expanded>
      </Expression>
      <Section name="resizing smaller changes size but not capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= V
          </Original>
          <Expanded>
            15 >= 15
          </Expanded>
        </Expression>
        <Section name="We can use the 'swap trick' to reset the capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          15 == 15
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          15 >= 15
        </Expanded>
      </Expression>
      <Section name="reserving bigger changes capacity but not size" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == V
          </Original>
          <Expanded>
            15 == 15
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= 2 * V
          </Original>
          <Expanded>
            30 >= 30
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == V
        </Original>
        <Expanded>
          15 == 15
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= V
        </Original>
        <Expanded>
          15 >= 15
        </Expanded>
      </Expression>
      <Section name="reserving smaller does not change size or capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == V
          </Original>
          <Expanded>
            15 == 15
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= V
          </Original>
          <Expanded>
            15 >= 15
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Test case with one argument" filename="projects/<exe-name>/UsageTests/VariadicMacros.tests.cpp" >
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Test enum bit values" tags="[Tricky]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          0x<hex digits> == bit30and31
        </Original>
        <Expanded>
          3221225472 (0x<hex digits>) == 3221225472
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Test with special, characters &quot;in name" tags="[cli][regression]" filename="projects/<exe-name>/IntrospectiveTests/CmdLine.tests.cpp" >
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="The NO_FAIL macro reports a failure but does not fail the test" tags="[messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Expression success="false" type="CHECK_NOFAIL" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          1 == 2
        </Original>
        <Expanded>
          1 == 2
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="This test 'should' fail but doesn't" tags="[!hide][!shouldfail][.][failing]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Thrown string literals are translated" tags="[!hide][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        For some reason someone is throwing a string literal!
      </Exception>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Tracker" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Original>
          testCase.isOpen()
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Original>
          s1.isOpen()
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Section name="successfully close one section" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            s1.isSuccessfullyCompleted()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            testCase.isComplete() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            ctx.completedCycle()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            testCase.isSuccessfullyCompleted()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Original>
          testCase.isOpen()
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Original>
          s1.isOpen()
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Section name="fail one section" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            s1.isComplete()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            s1.isSuccessfullyCompleted() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            testCase.isComplete() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            ctx.completedCycle()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            testCase.isSuccessfullyCompleted() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Section name="re-enter after failed section" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              testCase2.isOpen()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              s1b.isOpen() == false
            </Original>
            <Expanded>
              false == false
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              ctx.completedCycle()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              testCase.isComplete()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              testCase.isSuccessfullyCompleted()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <OverallResults successes="5" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="10" failures="0" expectedFailures="0"/>
      </Section>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Original>
          testCase.isOpen()
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Original>
          s1.isOpen()
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Section name="fail one section" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            s1.isComplete()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            s1.isSuccessfullyCompleted() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            testCase.isComplete() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            ctx.completedCycle()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            testCase.isSuccessfullyCompleted() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Section name="re-enter after failed section and find next section" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              testCase2.isOpen()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              s1b.isOpen() == false
            </Original>
            <Expanded>
              false == false
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              s2.isOpen()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              ctx.completedCycle()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              testCase.isComplete()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              testCase.isSuccessfullyCompleted()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <OverallResults successes="6" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="11" failures="0" expectedFailures="0"/>
      </Section>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Original>
          testCase.isOpen()
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Original>
          s1.isOpen()
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Section name="successfully close one section, then find another" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            s2.isOpen() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            testCase.isComplete() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Section name="Re-enter - skips S1 and enters S2" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              testCase2.isOpen()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              s1b.isOpen() == false
            </Original>
            <Expanded>
              false == false
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              s2b.isOpen()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              ctx.completedCycle() == false
            </Original>
            <Expanded>
              false == false
            </Expanded>
          </Expression>
          <Section name="Successfully close S2" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
              <Original>
                ctx.completedCycle()
              </Original>
              <Expanded>
                true
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
              <Original>
                s2b.isSuccessfullyCompleted()
              </Original>
              <Expanded>
                true
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
              <Original>
                testCase2.isComplete() == false
              </Original>
              <Expanded>
                false == false
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
              <Original>
                testCase2.isSuccessfullyCompleted()
              </Original>
              <Expanded>
                true
              </Expanded>
            </Expression>
            <OverallResults successes="4" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="8" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="10" failures="0" expectedFailures="0"/>
      </Section>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Original>
          testCase.isOpen()
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Original>
          s1.isOpen()
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Section name="successfully close one section, then find another" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            s2.isOpen() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            testCase.isComplete() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Section name="Re-enter - skips S1 and enters S2" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              testCase2.isOpen()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              s1b.isOpen() == false
            </Original>
            <Expanded>
              false == false
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              s2b.isOpen()
            </Original>
            <Expanded>
              true
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Original>
              ctx.completedCycle() == false
            </Original>
            <Expanded>
              false == false
            </Expanded>
          </Expression>
          <Section name="fail S2" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
              <Original>
                ctx.completedCycle()
              </Original>
              <Expanded>
                true
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
              <Original>
                s2b.isComplete()
              </Original>
              <Expanded>
                true
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
              <Original>
                s2b.isSuccessfullyCompleted() == false
              </Original>
              <Expanded>
                false == false
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
              <Original>
                testCase2.isSuccessfullyCompleted() == false
              </Original>
              <Expanded>
                false == false
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
              <Original>
                testCase3.isOpen()
              </Original>
              <Expanded>
                true
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
              <Original>
                s1c.isOpen() == false
              </Original>
              <Expanded>
                false == false
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
              <Original>
                s2c.isOpen() == false
              </Original>
              <Expanded>
                false == false
              </Expanded>
            </Expression>
            <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
              <Original>
                testCase3.isSuccessfullyCompleted()
              </Original>
              <Expanded>
                true
              </Expanded>
            </Expression>
            <OverallResults successes="8" failures="0" expectedFailures="0"/>
          </Section>
          <OverallResults successes="12" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="14" failures="0" expectedFailures="0"/>
      </Section>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Original>
          testCase.isOpen()
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Original>
          s1.isOpen()
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Section name="open a nested section" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            s2.isOpen()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            s2.isComplete()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            s1.isComplete() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            s1.isComplete()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            testCase.isComplete() == false
          </Original>
          <Expanded>
            false == false
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/PartTracker.tests.cpp" >
          <Original>
            testCase.isComplete()
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <OverallResults successes="6" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Trim strings" tags="[string-manip]" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Original>
          trim(std::string(no_whitespace)) == no_whitespace
        </Original>
        <Expanded>
          "There is no extra whitespace here"
==
"There is no extra whitespace here"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Original>
          trim(std::string(leading_whitespace)) == no_whitespace
        </Original>
        <Expanded>
          "There is no extra whitespace here"
==
"There is no extra whitespace here"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Original>
          trim(std::string(trailing_whitespace)) == no_whitespace
        </Original>
        <Expanded>
          "There is no extra whitespace here"
==
"There is no extra whitespace here"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Original>
          trim(std::string(whitespace_at_both_ends)) == no_whitespace
        </Original>
        <Expanded>
          "There is no extra whitespace here"
==
"There is no extra whitespace here"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Original>
          trim(StringRef(no_whitespace)) == StringRef(no_whitespace)
        </Original>
        <Expanded>
          There is no extra whitespace here
==
There is no extra whitespace here
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Original>
          trim(StringRef(leading_whitespace)) == StringRef(no_whitespace)
        </Original>
        <Expanded>
          There is no extra whitespace here
==
There is no extra whitespace here
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Original>
          trim(StringRef(trailing_whitespace)) == StringRef(no_whitespace)
        </Original>
        <Expanded>
          There is no extra whitespace here
==
There is no extra whitespace here
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Original>
          trim(StringRef(whitespace_at_both_ends)) == StringRef(no_whitespace)
        </Original>
        <Expanded>
          There is no extra whitespace here
==
There is no extra whitespace here
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Unexpected exceptions can be translated" tags="[!hide][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        3.14
      </Exception>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Use a custom approx" tags="[Approx][custom]" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d == approx( 1.23 )
        </Original>
        <Expanded>
          1.23 == Approx( 1.23 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d == approx( 1.22 )
        </Original>
        <Expanded>
          1.23 == Approx( 1.22 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d == approx( 1.24 )
        </Original>
        <Expanded>
          1.23 == Approx( 1.24 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          d != approx( 1.25 )
        </Original>
        <Expanded>
          1.23 != Approx( 1.25 )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          approx( d ) == 1.23
        </Original>
        <Expanded>
          Approx( 1.23 ) == 1.23
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          approx( d ) == 1.22
        </Original>
        <Expanded>
          Approx( 1.23 ) == 1.22
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          approx( d ) == 1.24
        </Original>
        <Expanded>
          Approx( 1.23 ) == 1.24
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Approx.tests.cpp" >
        <Original>
          approx( d ) != 1.25
        </Original>
        <Expanded>
          Approx( 1.23 ) != 1.25
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Variadic macros" tags="[sections][variadic]" filename="projects/<exe-name>/UsageTests/VariadicMacros.tests.cpp" >
      <Section name="Section with one argument" filename="projects/<exe-name>/UsageTests/VariadicMacros.tests.cpp" >
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Vector Approx matcher" tags="[approx][matchers][vector]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Section name="Empty vector is roughly equal to an empty vector" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            empty, Approx(empty)
          </Original>
          <Expanded>
            {  } is approx: {  }
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Vectors with elements" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Section name="A vector is approx equal to itself" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
            <Original>
              v1, Approx(v1)
            </Original>
            <Expanded>
              { 1.0, 2.0, 3.0 } is approx: { 1.0, 2.0, 3.0 }
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Vectors with elements" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Section name="Different length" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
            <Original>
              v1, !Approx(temp)
            </Original>
            <Expanded>
              { 1.0, 2.0, 3.0 } not is approx: { 1.0, 2.0, 3.0, 4.0 }
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Vectors with elements" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Section name="Same length, different elements" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
            <Original>
              v1, !Approx(v2)
            </Original>
            <Expanded>
              { 1.0, 2.0, 3.0 } not is approx: { 1.5, 2.5, 3.5 }
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
            <Original>
              v1, Approx(v2).margin(0.5)
            </Original>
            <Expanded>
              { 1.0, 2.0, 3.0 } is approx: { 1.5, 2.5, 3.5 }
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
            <Original>
              v1, Approx(v2).epsilon(0.5)
            </Original>
            <Expanded>
              { 1.0, 2.0, 3.0 } is approx: { 1.5, 2.5, 3.5 }
            </Expanded>
          </Expression>
          <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
            <Original>
              v1, Approx(v2).epsilon(0.1).scale(500)
            </Original>
            <Expanded>
              { 1.0, 2.0, 3.0 } is approx: { 1.5, 2.5, 3.5 }
            </Expanded>
          </Expression>
          <OverallResults successes="4" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Vector Approx matcher -- failing" tags="[!hide][.][approx][failing][matchers][vector]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Section name="Empty and non empty vectors are not approx equal" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            empty, Approx(t1)
          </Original>
          <Expanded>
            {  } is approx: { 1.0, 2.0 }
          </Expanded>
        </Expression>
        <OverallResults successes="0" failures="1" expectedFailures="0"/>
      </Section>
      <Section name="Just different vectors" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v1, Approx(v2)
          </Original>
          <Expanded>
            { 2.0, 4.0, 6.0 } is approx: { 1.0, 3.0, 5.0 }
          </Expanded>
        </Expression>
        <OverallResults successes="0" failures="1" expectedFailures="0"/>
      </Section>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Vector matchers" tags="[matchers][vector]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Section name="Contains (element)" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v, VectorContains(1)
          </Original>
          <Expanded>
            { 1, 2, 3 } Contains: 1
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v, VectorContains(2)
          </Original>
          <Expanded>
            { 1, 2, 3 } Contains: 2
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Contains (vector)" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v, Contains(v2)
          </Original>
          <Expanded>
            { 1, 2, 3 } Contains: { 1, 2 }
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v, Contains(v2)
          </Original>
          <Expanded>
            { 1, 2, 3 } Contains: { 1, 2, 3 }
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v, Contains(empty)
          </Original>
          <Expanded>
            { 1, 2, 3 } Contains: {  }
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            empty, Contains(empty)
          </Original>
          <Expanded>
            {  } Contains: {  }
          </Expanded>
        </Expression>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Contains (element), composed" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v, VectorContains(1) &amp;&amp; VectorContains(2)
          </Original>
          <Expanded>
            { 1, 2, 3 } ( Contains: 1 and Contains: 2 )
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Equals" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v, Equals(v)
          </Original>
          <Expanded>
            { 1, 2, 3 } Equals: { 1, 2, 3 }
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            empty, Equals(empty)
          </Original>
          <Expanded>
            {  } Equals: {  }
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v, Equals(v2)
          </Original>
          <Expanded>
            { 1, 2, 3 } Equals: { 1, 2, 3 }
          </Expanded>
        </Expression>
        <OverallResults successes="3" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="UnorderedEquals" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v, UnorderedEquals(v)
          </Original>
          <Expanded>
            { 1, 2, 3 } UnorderedEquals: { 1, 2, 3 }
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            empty, UnorderedEquals(empty)
          </Original>
          <Expanded>
            {  } UnorderedEquals: {  }
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            permuted, UnorderedEquals(v)
          </Original>
          <Expanded>
            { 1, 3, 2 } UnorderedEquals: { 1, 2, 3 }
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            permuted, UnorderedEquals(v)
          </Original>
          <Expanded>
            { 2, 3, 1 } UnorderedEquals: { 1, 2, 3 }
          </Expanded>
        </Expression>
        <OverallResults successes="4" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="Vector matchers that fail" tags="[!hide][.][failing][matchers][vector]" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
      <Section name="Contains (element)" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v, VectorContains(-1)
          </Original>
          <Expanded>
            { 1, 2, 3 } Contains: -1
          </Expanded>
        </Expression>
        <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            empty, VectorContains(1)
          </Original>
          <Expanded>
            {  } Contains: 1
          </Expanded>
        </Expression>
        <OverallResults successes="0" failures="2" expectedFailures="0"/>
      </Section>
      <Section name="Contains (vector)" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            empty, Contains(v)
          </Original>
          <Expanded>
            {  } Contains: { 1, 2, 3 }
          </Expanded>
        </Expression>
        <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v, Contains(v2)
          </Original>
          <Expanded>
            { 1, 2, 3 } Contains: { 1, 2, 4 }
          </Expanded>
        </Expression>
        <OverallResults successes="0" failures="2" expectedFailures="0"/>
      </Section>
      <Section name="Equals" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v, Equals(v2)
          </Original>
          <Expanded>
            { 1, 2, 3 } Equals: { 1, 2 }
          </Expanded>
        </Expression>
        <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v2, Equals(v)
          </Original>
          <Expanded>
            { 1, 2 } Equals: { 1, 2, 3 }
          </Expanded>
        </Expression>
        <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            empty, Equals(v)
          </Original>
          <Expanded>
            {  } Equals: { 1, 2, 3 }
          </Expanded>
        </Expression>
        <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v, Equals(empty)
          </Original>
          <Expanded>
            { 1, 2, 3 } Equals: {  }
          </Expanded>
        </Expression>
        <OverallResults successes="0" failures="4" expectedFailures="0"/>
      </Section>
      <Section name="UnorderedEquals" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
        <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            v, UnorderedEquals(empty)
          </Original>
          <Expanded>
            { 1, 2, 3 } UnorderedEquals: {  }
          </Expanded>
        </Expression>
        <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            empty, UnorderedEquals(v)
          </Original>
          <Expanded>
            {  } UnorderedEquals: { 1, 2, 3 }
          </Expanded>
        </Expression>
        <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            permuted, UnorderedEquals(v)
          </Original>
          <Expanded>
            { 1, 3 } UnorderedEquals: { 1, 2, 3 }
          </Expanded>
        </Expression>
        <Expression success="false" type="CHECK_THAT" filename="projects/<exe-name>/UsageTests/Matchers.tests.cpp" >
          <Original>
            permuted, UnorderedEquals(v)
          </Original>
          <Expanded>
            { 3, 1 } UnorderedEquals: { 1, 2, 3 }
          </Expanded>
        </Expression>
        <OverallResults successes="0" failures="4" expectedFailures="0"/>
      </Section>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="When checked exceptions are thrown they can be expected or unexpected" tags="[!throws]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Expression success="true" type="REQUIRE_THROWS_AS" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Original>
          thisThrows(), std::domain_error
        </Original>
        <Expanded>
          thisThrows(), std::domain_error
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_NOTHROW" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Original>
          thisDoesntThrow()
        </Original>
        <Expanded>
          thisDoesntThrow()
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_THROWS" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Original>
          thisThrows()
        </Original>
        <Expanded>
          thisThrows()
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="When unchecked exceptions are thrown directly they are always failures" tags="[!hide][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        unexpected exception
      </Exception>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="When unchecked exceptions are thrown during a CHECK the test should continue" tags="[!hide][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Original>
          thisThrows() == 0
        </Original>
        <Expanded>
          thisThrows() == 0
        </Expanded>
        <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          expected exception
        </Exception>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="When unchecked exceptions are thrown during a REQUIRE the test should abort fail" tags="[!hide][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Original>
          thisThrows() == 0
        </Original>
        <Expanded>
          thisThrows() == 0
        </Expanded>
        <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          expected exception
        </Exception>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="When unchecked exceptions are thrown from functions they are always failures" tags="[!hide][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Original>
          thisThrows() == 0
        </Original>
        <Expanded>
          thisThrows() == 0
        </Expanded>
        <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          expected exception
        </Exception>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="When unchecked exceptions are thrown from sections they are always failures" tags="[!hide][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Section name="section name" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
          unexpected exception
        </Exception>
        <OverallResults successes="0" failures="1" expectedFailures="0"/>
      </Section>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="When unchecked exceptions are thrown, but caught, they do not affect the test" tags="[!throws]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Where the LHS is not a simple value" tags="[!hide][.][Tricky][failing]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Warning>
        Uncomment the code in this test to check that it gives a sensible compiler error
      </Warning>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="Where there is more to the expression after the RHS" tags="[!hide][.][Tricky][failing]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Warning>
        Uncomment the code in this test to check that it gives a sensible compiler error
      </Warning>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="X/level/0/a" tags="[Tricky]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="X/level/0/b" tags="[Tricky][fizz]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="X/level/1/a" tags="[Tricky]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="X/level/1/b" tags="[Tricky]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="XmlEncode" tags="[XML]" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
      <Section name="normal string" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
          <Original>
            encode( "normal string" ) == "normal string"
          </Original>
          <Expanded>
            "normal string" == "normal string"
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="empty string" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
          <Original>
            encode( "" ) == ""
          </Original>
          <Expanded>
            "" == ""
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="string with ampersand" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
          <Original>
            encode( "smith &amp; jones" ) == "smith &amp;amp; jones"
          </Original>
          <Expanded>
            "smith &amp;amp; jones" == "smith &amp;amp; jones"
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="string with less-than" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
          <Original>
            encode( "smith &lt; jones" ) == "smith &amp;lt; jones"
          </Original>
          <Expanded>
            "smith &amp;lt; jones" == "smith &amp;lt; jones"
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="string with greater-than" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
          <Original>
            encode( "smith > jones" ) == "smith > jones"
          </Original>
          <Expanded>
            "smith > jones" == "smith > jones"
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
          <Original>
            encode( "smith ]]&gt; jones" ) == "smith ]]&amp;gt; jones"
          </Original>
          <Expanded>
            "smith ]]&amp;gt; jones"
==
"smith ]]&amp;gt; jones"
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="string with quotes" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
          <Original>
            encode( stringWithQuotes ) == stringWithQuotes
          </Original>
          <Expanded>
            "don't "quote" me on that"
==
"don't "quote" me on that"
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
          <Original>
            encode( stringWithQuotes, Catch::XmlEncode::ForAttributes ) == "don't &amp;quot;quote&amp;quot; me on that"
          </Original>
          <Expanded>
            "don't &amp;quot;quote&amp;quot; me on that"
==
"don't &amp;quot;quote&amp;quot; me on that"
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="string with control char (1)" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
          <Original>
            encode( "[\x01]" ) == "[\\x01]"
          </Original>
          <Expanded>
            "[\x01]" == "[\x01]"
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="string with control char (x7F)" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/IntrospectiveTests/Xml.tests.cpp" >
          <Original>
            encode( "[\x7F]" ) == "[\\x7F]"
          </Original>
          <Expanded>
            "[\x7F]" == "[\x7F]"
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="adding a hide tag implicitly enables all others" tags="[tags]" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
      <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
        <Original>
          testcase.tags, VectorContains(std::string(".")) &amp;&amp; VectorContains(std::string("!hide"))
        </Original>
        <Expanded>
          { "!hide", "." } ( Contains: "." and Contains: "!hide" )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
        <Original>
          testcase.tags, VectorContains(std::string(".")) &amp;&amp; VectorContains(std::string("!hide"))
        </Original>
        <Expanded>
          { "!hide", "." } ( Contains: "." and Contains: "!hide" )
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
        <Original>
          testcase.tags, VectorContains(std::string(".")) &amp;&amp; VectorContains(std::string("!hide"))
        </Original>
        <Expanded>
          { "!hide", ".", "foo" } ( Contains: "." and Contains: "!hide" )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="array&lt;int, N> -> toString" tags="[array][containers][toString]" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          Catch::Detail::stringify( empty ) == "{  }"
        </Original>
        <Expanded>
          "{  }" == "{  }"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          Catch::Detail::stringify( oneValue ) == "{ 42 }"
        </Original>
        <Expanded>
          "{ 42 }" == "{ 42 }"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          Catch::Detail::stringify( twoValues ) == "{ 42, 250 }"
        </Original>
        <Expanded>
          "{ 42, 250 }" == "{ 42, 250 }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="atomic if" tags="[0][failing]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          x == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="boolean member" tags="[Tricky]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          obj.prop != 0
        </Original>
        <Expanded>
          0x<hex digits> != 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="checkedElse" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="CHECKED_ELSE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          flag
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          testCheckedElse( true )
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="checkedElse, failing" tags="[!hide][.][failing]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="false" type="CHECKED_ELSE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          flag
        </Original>
        <Expanded>
          false
        </Expanded>
      </Expression>
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          testCheckedElse( false )
        </Original>
        <Expanded>
          false
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="checkedIf" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="CHECKED_IF" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          flag
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          testCheckedIf( true )
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="checkedIf, failing" tags="[!hide][.][failing]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="false" type="CHECKED_IF" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          flag
        </Original>
        <Expanded>
          false
        </Expanded>
      </Expression>
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          testCheckedIf( false )
        </Original>
        <Expanded>
          false
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="comparisons between const int variables" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          unsigned_char_var == 1
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          unsigned_short_var == 1
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          unsigned_int_var == 1
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          unsigned_long_var == 1
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="comparisons between int variables" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          long_var == unsigned_char_var
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          long_var == unsigned_short_var
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          long_var == unsigned_int_var
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Condition.tests.cpp" >
        <Original>
          long_var == unsigned_long_var
        </Original>
        <Expanded>
          1 == 1
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="even more nested SECTION tests" tags="[sections]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Section name="c" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Section name="d (leaf)" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="c" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Section name="e (leaf)" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="f (leaf)" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="first tag" tags="[tag1]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="has printf" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
loose text artifact
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="just failure" tags="[!hide][.][fail][isolated info][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Failure filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        Previous info should not be seen
      </Failure>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="just failure after unscoped info" tags="[!hide][.][failing][info][unscoped]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Failure filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        previous unscoped info SHOULD not be seen
      </Failure>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="just info" tags="[info][isolated info][messages]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="just unscoped info" tags="[info][unscoped]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="long long" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          l == std::numeric_limits&lt;long long>::max()
        </Original>
        <Expanded>
          9223372036854775807 (0x<hex digits>)
==
9223372036854775807 (0x<hex digits>)
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="looped SECTION tests" tags="[!hide][.][failing][sections]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Section name="b is currently: 0" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            b > a
          </Original>
          <Expanded>
            0 > 1
          </Expanded>
        </Expression>
        <OverallResults successes="0" failures="1" expectedFailures="0"/>
      </Section>
      <Section name="b is currently: 1" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            b > a
          </Original>
          <Expanded>
            1 > 1
          </Expanded>
        </Expression>
        <OverallResults successes="0" failures="1" expectedFailures="0"/>
      </Section>
      <Section name="b is currently: 2" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            b > a
          </Original>
          <Expanded>
            2 > 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="b is currently: 3" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            b > a
          </Original>
          <Expanded>
            3 > 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="b is currently: 4" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            b > a
          </Original>
          <Expanded>
            4 > 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="b is currently: 5" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            b > a
          </Original>
          <Expanded>
            5 > 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="b is currently: 6" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            b > a
          </Original>
          <Expanded>
            6 > 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="b is currently: 7" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            b > a
          </Original>
          <Expanded>
            7 > 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="b is currently: 8" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            b > a
          </Original>
          <Expanded>
            8 > 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="b is currently: 9" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            b > a
          </Original>
          <Expanded>
            9 > 1
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="looped tests" tags="[!hide][.][failing]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Info>
        Testing if fib[0] (1) is even
      </Info>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          ( fib[i] % 2 ) == 0
        </Original>
        <Expanded>
          1 == 0
        </Expanded>
      </Expression>
      <Info>
        Testing if fib[2] (2) is even
      </Info>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          ( fib[i] % 2 ) == 0
        </Original>
        <Expanded>
          1 == 0
        </Expanded>
      </Expression>
      <Info>
        Testing if fib[5] (8) is even
      </Info>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          ( fib[i] % 2 ) == 0
        </Original>
        <Expanded>
          1 == 0
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="mix info, unscoped info and warning" tags="[info][unscoped]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Info>
        info
      </Info>
      <Info>
        unscoped info
      </Info>
      <Warning>
        and warn may mix
      </Warning>
      <Info>
        info
      </Info>
      <Info>
        unscoped info
      </Info>
      <Warning>
        they are not cleared after warnings
      </Warning>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="more nested SECTION tests" tags="[!hide][.][failing][sections]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Section name="doesn't equal" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Section name="equal" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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>
      <Section name="doesn't equal" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Section name="not equal" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
            <Original>
              a != b
            </Original>
            <Expanded>
              1 != 2
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="doesn't equal" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Section name="less than" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
            <Original>
              a &lt; b
            </Original>
            <Expanded>
              1 &lt; 2
            </Expanded>
          </Expression>
          <OverallResults successes="1" failures="0" expectedFailures="0"/>
        </Section>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="nested SECTION tests" tags="[!hide][.][failing][sections]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Section name="doesn't equal" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            a != b
          </Original>
          <Expanded>
            1 != 2
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            b != a
          </Original>
          <Expanded>
            2 != 1
          </Expanded>
        </Expression>
        <Section name="not equal" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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="non streamable - with conv. op" tags="[Tricky]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          s == "7"
        </Original>
        <Expanded>
          "7" == "7"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="non-copyable objects" tags="[!hide][.][failing]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          ti == typeid(int)
        </Original>
        <Expanded>
          {?} == {?}
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="not allowed" tags="[!throws]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="not prints unscoped info from previous failures" tags="[!hide][.][failing][info][unscoped]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Info>
        this MAY be seen only for the FIRST assertion IF info is printed for passing assertions
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          true
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Info>
        this MAY be seen only for the SECOND assertion IF info is printed for passing assertions
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          true
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Info>
        this SHOULD be seen
      </Info>
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          false
        </Original>
        <Expanded>
          false
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="null strings" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          makeString( false ) != static_cast&lt;char*>(0)
        </Original>
        <Expanded>
          "valid string" != {null string}
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          makeString( true ) == static_cast&lt;char*>(0)
        </Original>
        <Expanded>
          {null string} == {null string}
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="null_ptr" tags="[Tricky]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          ptr.get() == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="pair&lt;pair&lt;int,const char *,pair&lt;std::string,int> > -> toString" tags="[pair][toString]" filename="projects/<exe-name>/UsageTests/ToStringPair.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringPair.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify( pair ) == "{ { 42, \"Arthur\" }, { \"Ford\", 24 } }"
        </Original>
        <Expanded>
          "{ { 42, "Arthur" }, { "Ford", 24 } }"
==
"{ { 42, "Arthur" }, { "Ford", 24 } }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="parseEnums" tags="[Strings][enums]" filename="projects/<exe-name>/IntrospectiveTests/ToString.tests.cpp" >
      <Section name="No enums" filename="projects/<exe-name>/IntrospectiveTests/ToString.tests.cpp" >
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/IntrospectiveTests/ToString.tests.cpp" >
          <Original>
            parseEnums( "" ), Equals( std::vector&lt;Catch::StringRef>{} )
          </Original>
          <Expanded>
            {  } Equals: {  }
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="One enum value" filename="projects/<exe-name>/IntrospectiveTests/ToString.tests.cpp" >
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/IntrospectiveTests/ToString.tests.cpp" >
          <Original>
            parseEnums( "ClassName::EnumName::Value1" ), Equals(std::vector&lt;Catch::StringRef>{"Value1"} )
          </Original>
          <Expanded>
            { Value1 } Equals: { Value1 }
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/IntrospectiveTests/ToString.tests.cpp" >
          <Original>
            parseEnums( "Value1" ), Equals( std::vector&lt;Catch::StringRef>{"Value1"} )
          </Original>
          <Expanded>
            { Value1 } Equals: { Value1 }
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/IntrospectiveTests/ToString.tests.cpp" >
          <Original>
            parseEnums( "EnumName::Value1" ), Equals(std::vector&lt;Catch::StringRef>{"Value1"} )
          </Original>
          <Expanded>
            { Value1 } Equals: { Value1 }
          </Expanded>
        </Expression>
        <OverallResults successes="3" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="Multiple enum values" filename="projects/<exe-name>/IntrospectiveTests/ToString.tests.cpp" >
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/IntrospectiveTests/ToString.tests.cpp" >
          <Original>
            parseEnums( "ClassName::EnumName::Value1, ClassName::EnumName::Value2" ), Equals( std::vector&lt;Catch::StringRef>{"Value1", "Value2"} )
          </Original>
          <Expanded>
            { Value1, Value2 } Equals: { Value1, Value2 }
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/IntrospectiveTests/ToString.tests.cpp" >
          <Original>
            parseEnums( "ClassName::EnumName::Value1, ClassName::EnumName::Value2, ClassName::EnumName::Value3" ), Equals( std::vector&lt;Catch::StringRef>{"Value1", "Value2", "Value3"} )
          </Original>
          <Expanded>
            { Value1, Value2, Value3 } Equals: { Value1, Value2, Value3 }
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/IntrospectiveTests/ToString.tests.cpp" >
          <Original>
            parseEnums( "ClassName::EnumName::Value1,ClassName::EnumName::Value2 , ClassName::EnumName::Value3" ), Equals( std::vector&lt;Catch::StringRef>{"Value1", "Value2", "Value3"} )
          </Original>
          <Expanded>
            { Value1, Value2, Value3 } Equals: { Value1, Value2, Value3 }
          </Expanded>
        </Expression>
        <OverallResults successes="3" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="pointer to class" tags="[Tricky]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          p == 0
        </Original>
        <Expanded>
          0 == 0
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="print unscoped info if passing unscoped info is printed" tags="[info][unscoped]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Info>
        this MAY be seen IF info is printed for passing assertions
      </Info>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          true
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="prints unscoped info on failure" tags="[!hide][.][failing][info][unscoped]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Info>
        this SHOULD be seen
      </Info>
      <Info>
        this SHOULD also be seen
      </Info>
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          false
        </Original>
        <Expanded>
          false
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="prints unscoped info only for the first assertion" tags="[!hide][.][failing][info][unscoped]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Info>
        this SHOULD be seen only ONCE
      </Info>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          false
        </Original>
        <Expanded>
          false
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          true
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Info>
        this MAY also be seen only ONCE IF info is printed for passing assertions
      </Info>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          true
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          true
        </Original>
        <Expanded>
          true
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="random SECTION tests" tags="[!hide][.][failing][sections]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Section name="doesn't equal" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            a != b
          </Original>
          <Expanded>
            1 != 2
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            b != a
          </Original>
          <Expanded>
            2 != 1
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="not equal" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            a != b
          </Original>
          <Expanded>
            1 != 2
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="replaceInPlace" tags="[string-manip]" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
      <Section name="replace single char" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
          <Original>
            Catch::replaceInPlace(letters, "b", "z")
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
          <Original>
            letters == "azcdefcg"
          </Original>
          <Expanded>
            "azcdefcg" == "azcdefcg"
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="replace two chars" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
          <Original>
            Catch::replaceInPlace(letters, "c", "z")
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
          <Original>
            letters == "abzdefzg"
          </Original>
          <Expanded>
            "abzdefzg" == "abzdefzg"
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="replace first char" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
          <Original>
            Catch::replaceInPlace(letters, "a", "z")
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
          <Original>
            letters == "zbcdefcg"
          </Original>
          <Expanded>
            "zbcdefcg" == "zbcdefcg"
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="replace last char" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
          <Original>
            Catch::replaceInPlace(letters, "g", "z")
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
          <Original>
            letters == "abcdefcz"
          </Original>
          <Expanded>
            "abcdefcz" == "abcdefcz"
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="replace all chars" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
          <Original>
            Catch::replaceInPlace(letters, letters, "replaced")
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
          <Original>
            letters == "replaced"
          </Original>
          <Expanded>
            "replaced" == "replaced"
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="replace no chars" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Expression success="true" type="CHECK_FALSE" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
          <Original>
            !(Catch::replaceInPlace(letters, "x", "z"))
          </Original>
          <Expanded>
            !false
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
          <Original>
            letters == letters
          </Original>
          <Expanded>
            "abcdefcg" == "abcdefcg"
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="escape '" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
          <Original>
            Catch::replaceInPlace(s, "'", "|'")
          </Original>
          <Expanded>
            true
          </Expanded>
        </Expression>
        <Expression success="true" type="CHECK" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
          <Original>
            s == "didn|'t"
          </Original>
          <Expanded>
            "didn|'t" == "didn|'t"
          </Expanded>
        </Expression>
        <OverallResults successes="2" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="second tag" tags="[tag2]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="send a single char to INFO" tags="[!hide][.][failing]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Info>
        3
      </Info>
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          false
        </Original>
        <Expanded>
          false
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="sends information to INFO" tags="[!hide][.][failing]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Info>
        hi
      </Info>
      <Info>
        i := 7
      </Info>
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          false
        </Original>
        <Expanded>
          false
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="shortened hide tags are split apart" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
      <Expression success="true" type="REQUIRE_THAT" filename="projects/<exe-name>/IntrospectiveTests/Tag.tests.cpp" >
        <Original>
          testcase.tags, Catch::VectorContains(std::string("magic-tag")) &amp;&amp; Catch::VectorContains(std::string("."))
        </Original>
        <Expanded>
          { "!hide", ".", "magic-tag" } ( Contains: "magic-tag" and Contains: "." )
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="splitString" tags="[string-manip]" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Original>
          splitStringRef("", ','), Equals(std::vector&lt;StringRef>())
        </Original>
        <Expanded>
          {  } Equals: {  }
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Original>
          splitStringRef("abc", ','), Equals(std::vector&lt;StringRef>{"abc"})
        </Original>
        <Expanded>
          { abc } Equals: { abc }
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK_THAT" filename="projects/<exe-name>/IntrospectiveTests/StringManip.tests.cpp" >
        <Original>
          splitStringRef("abc,def", ','), Equals(std::vector&lt;StringRef>{"abc", "def"})
        </Original>
        <Expanded>
          { abc, def } Equals: { abc, def }
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="stacks unscoped info in loops" tags="[!hide][.][failing][info][unscoped]" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
      <Info>
        Count 1 to 3...
      </Info>
      <Info>
        1
      </Info>
      <Info>
        2
      </Info>
      <Info>
        3
      </Info>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          false
        </Original>
        <Expanded>
          false
        </Expanded>
      </Expression>
      <Info>
        Count 4 to 6...
      </Info>
      <Info>
        4
      </Info>
      <Info>
        5
      </Info>
      <Info>
        6
      </Info>
      <Expression success="false" type="CHECK" filename="projects/<exe-name>/UsageTests/Message.tests.cpp" >
        <Original>
          false
        </Original>
        <Expanded>
          false
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="std::map is convertible string" tags="[toString]" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
      <Section name="empty" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            Catch::Detail::stringify( emptyMap ) == "{  }"
          </Original>
          <Expanded>
            "{  }" == "{  }"
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="single item" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            Catch::Detail::stringify( map ) == "{ { \"one\", 1 } }"
          </Original>
          <Expanded>
            "{ { "one", 1 } }" == "{ { "one", 1 } }"
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="several items" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            Catch::Detail::stringify( map ) == "{ { \"abc\", 1 }, { \"def\", 2 }, { \"ghi\", 3 } }"
          </Original>
          <Expanded>
            "{ { "abc", 1 }, { "def", 2 }, { "ghi", 3 } }"
==
"{ { "abc", 1 }, { "def", 2 }, { "ghi", 3 } }"
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="std::pair&lt;int,const std::string> -> toString" tags="[pair][toString]" filename="projects/<exe-name>/UsageTests/ToStringPair.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringPair.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(value) == "{ 34, \"xyzzy\" }"
        </Original>
        <Expanded>
          "{ 34, "xyzzy" }" == "{ 34, "xyzzy" }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="std::pair&lt;int,std::string> -> toString" tags="[pair][toString]" filename="projects/<exe-name>/UsageTests/ToStringPair.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringPair.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify( value ) == "{ 34, \"xyzzy\" }"
        </Original>
        <Expanded>
          "{ 34, "xyzzy" }" == "{ 34, "xyzzy" }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="std::set is convertible string" tags="[toString]" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
      <Section name="empty" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            Catch::Detail::stringify( emptySet ) == "{  }"
          </Original>
          <Expanded>
            "{  }" == "{  }"
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="single item" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            Catch::Detail::stringify( set ) == "{ \"one\" }"
          </Original>
          <Expanded>
            "{ "one" }" == "{ "one" }"
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="several items" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringGeneral.tests.cpp" >
          <Original>
            Catch::Detail::stringify( set ) == "{ \"abc\", \"def\", \"ghi\" }"
          </Original>
          <Expanded>
            "{ "abc", "def", "ghi" }"
==
"{ "abc", "def", "ghi" }"
          </Expanded>
        </Expression>
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="std::vector&lt;std::pair&lt;std::string,int> > -> toString" tags="[pair][toString]" filename="projects/<exe-name>/UsageTests/ToStringPair.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringPair.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify( pr ) == "{ { \"green\", 55 } }"
        </Original>
        <Expanded>
          "{ { "green", 55 } }"
==
"{ { "green", 55 } }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="string literals of different sizes can be compared" tags="[!hide][.][Tricky][failing]" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
      <Expression success="false" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Tricky.tests.cpp" >
        <Original>
          std::string( "first" ) == "second"
        </Original>
        <Expanded>
          "first" == "second"
        </Expanded>
      </Expression>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="stringify ranges" tags="[toString]" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(streamable_range{}) == "op&lt;&lt;(streamable_range)"
        </Original>
        <Expanded>
          "op&lt;&lt;(streamable_range)"
==
"op&lt;&lt;(streamable_range)"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(stringmaker_range{}) == "stringmaker(streamable_range)"
        </Original>
        <Expanded>
          "stringmaker(streamable_range)"
==
"stringmaker(streamable_range)"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(just_range{}) == "{ 1, 2, 3, 4 }"
        </Original>
        <Expanded>
          "{ 1, 2, 3, 4 }" == "{ 1, 2, 3, 4 }"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(disabled_range{}) == "{ !!! }"
        </Original>
        <Expanded>
          "{ !!! }" == "{ !!! }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="stringify( has_maker )" tags="[toString]" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify( item ) == "StringMaker&lt;has_maker>"
        </Original>
        <Expanded>
          "StringMaker&lt;has_maker>"
==
"StringMaker&lt;has_maker>"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="stringify( has_maker_and_operator )" tags="[toString]" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify( item ) == "StringMaker&lt;has_maker_and_operator>"
        </Original>
        <Expanded>
          "StringMaker&lt;has_maker_and_operator>"
==
"StringMaker&lt;has_maker_and_operator>"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="stringify( has_neither )" tags="[toString]" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(item) == "{ !!! }"
        </Original>
        <Expanded>
          "{ !!! }" == "{ !!! }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="stringify( has_operator )" tags="[toString]" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify( item ) == "operator&lt;&lt;( has_operator )"
        </Original>
        <Expanded>
          "operator&lt;&lt;( has_operator )"
==
"operator&lt;&lt;( has_operator )"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="stringify( has_template_operator )" tags="[toString]" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify( item ) == "operator&lt;&lt;( has_template_operator )"
        </Original>
        <Expanded>
          "operator&lt;&lt;( has_template_operator )"
==
"operator&lt;&lt;( has_template_operator )"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="stringify( vectors&lt;has_maker> )" tags="[toString]" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify( v ) == "{ StringMaker&lt;has_maker> }"
        </Original>
        <Expanded>
          "{ StringMaker&lt;has_maker> }"
==
"{ StringMaker&lt;has_maker> }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="stringify( vectors&lt;has_maker_and_operator> )" tags="[toString]" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify( v ) == "{ StringMaker&lt;has_maker_and_operator> }"
        </Original>
        <Expanded>
          "{ StringMaker&lt;has_maker_and_operator> }"
==
"{ StringMaker&lt;has_maker_and_operator> }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="stringify( vectors&lt;has_operator> )" tags="[toString]" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringWhich.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify( v ) == "{ operator&lt;&lt;( has_operator ) }"
        </Original>
        <Expanded>
          "{ operator&lt;&lt;( has_operator ) }"
==
"{ operator&lt;&lt;( has_operator ) }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="strlen3" tags="[generators]" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          data.str.size() == data.len
        </Original>
        <Expanded>
          3 == 3
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          data.str.size() == data.len
        </Original>
        <Expanded>
          3 == 3
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          data.str.size() == data.len
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          data.str.size() == data.len
        </Original>
        <Expanded>
          4 == 4
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="tables" tags="[generators]" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          strlen(std::get&lt;0>(data)) == static_cast&lt;size_t>(std::get&lt;1>(data))
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          strlen(std::get&lt;0>(data)) == static_cast&lt;size_t>(std::get&lt;1>(data))
        </Original>
        <Expanded>
          6 == 6
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          strlen(std::get&lt;0>(data)) == static_cast&lt;size_t>(std::get&lt;1>(data))
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Generators.tests.cpp" >
        <Original>
          strlen(std::get&lt;0>(data)) == static_cast&lt;size_t>(std::get&lt;1>(data))
        </Original>
        <Expanded>
          6 == 6
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="thrown std::strings are translated" tags="[!hide][!throws][.][failing]" filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
      <Exception filename="projects/<exe-name>/UsageTests/Exception.tests.cpp" >
        Why would you throw a std::string?
      </Exception>
      <OverallResult success="false"/>
    </TestCase>
    <TestCase name="toString on const wchar_t const pointer returns the string contents" tags="[toString]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          result == "\"wide load\""
        </Original>
        <Expanded>
          ""wide load"" == ""wide load""
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="toString on const wchar_t pointer returns the string contents" tags="[toString]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          result == "\"wide load\""
        </Original>
        <Expanded>
          ""wide load"" == ""wide load""
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="toString on wchar_t const pointer returns the string contents" tags="[toString]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          result == "\"wide load\""
        </Original>
        <Expanded>
          ""wide load"" == ""wide load""
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="toString on wchar_t returns the string contents" tags="[toString]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          result == "\"wide load\""
        </Original>
        <Expanded>
          ""wide load"" == ""wide load""
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="toString(enum class w/operator&lt;&lt;)" tags="[enum][enumClass][toString]" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(e0) == "E2/V0"
        </Original>
        <Expanded>
          "E2/V0" == "E2/V0"
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(e1) == "E2/V1"
        </Original>
        <Expanded>
          "E2/V1" == "E2/V1"
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(e3) == "Unknown enum value 10"
        </Original>
        <Expanded>
          "Unknown enum value 10"
==
"Unknown enum value 10"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="toString(enum class)" tags="[enum][enumClass][toString]" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(e0) == "0"
        </Original>
        <Expanded>
          "0" == "0"
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(e1) == "1"
        </Original>
        <Expanded>
          "1" == "1"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="toString(enum w/operator&lt;&lt;)" tags="[enum][toString]" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(e0) == "E2{0}"
        </Original>
        <Expanded>
          "E2{0}" == "E2{0}"
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(e1) == "E2{1}"
        </Original>
        <Expanded>
          "E2{1}" == "E2{1}"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="toString(enum)" tags="[enum][toString]" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(e0) == "0"
        </Original>
        <Expanded>
          "0" == "0"
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/EnumToString.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(e1) == "1"
        </Original>
        <Expanded>
          "1" == "1"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="tuple&lt;>" tags="[toString][tuple]" filename="projects/<exe-name>/UsageTests/ToStringTuple.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringTuple.tests.cpp" >
        <Original>
          "{ }" == ::Catch::Detail::stringify(type{})
        </Original>
        <Expanded>
          "{ }" == "{ }"
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringTuple.tests.cpp" >
        <Original>
          "{ }" == ::Catch::Detail::stringify(value)
        </Original>
        <Expanded>
          "{ }" == "{ }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="tuple&lt;float,int>" tags="[toString][tuple]" filename="projects/<exe-name>/UsageTests/ToStringTuple.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringTuple.tests.cpp" >
        <Original>
          "1.2f" == ::Catch::Detail::stringify(float(1.2))
        </Original>
        <Expanded>
          "1.2f" == "1.2f"
        </Expanded>
      </Expression>
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringTuple.tests.cpp" >
        <Original>
          "{ 1.2f, 0 }" == ::Catch::Detail::stringify(type{1.2f,0})
        </Original>
        <Expanded>
          "{ 1.2f, 0 }" == "{ 1.2f, 0 }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="tuple&lt;int>" tags="[toString][tuple]" filename="projects/<exe-name>/UsageTests/ToStringTuple.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringTuple.tests.cpp" >
        <Original>
          "{ 0 }" == ::Catch::Detail::stringify(type{0})
        </Original>
        <Expanded>
          "{ 0 }" == "{ 0 }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="tuple&lt;0,int,const char *>" tags="[toString][tuple]" filename="projects/<exe-name>/UsageTests/ToStringTuple.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringTuple.tests.cpp" >
        <Original>
          "{ 0, 42, \"Catch me\" }" == ::Catch::Detail::stringify(value)
        </Original>
        <Expanded>
          "{ 0, 42, "Catch me" }"
==
"{ 0, 42, "Catch me" }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="tuple&lt;string,string>" tags="[toString][tuple]" filename="projects/<exe-name>/UsageTests/ToStringTuple.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringTuple.tests.cpp" >
        <Original>
          "{ \"hello\", \"world\" }" == ::Catch::Detail::stringify(type{"hello","world"})
        </Original>
        <Expanded>
          "{ "hello", "world" }"
==
"{ "hello", "world" }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="tuple&lt;tuple&lt;int>,tuple&lt;>,float>" tags="[toString][tuple]" filename="projects/<exe-name>/UsageTests/ToStringTuple.tests.cpp" >
      <Expression success="true" type="CHECK" filename="projects/<exe-name>/UsageTests/ToStringTuple.tests.cpp" >
        <Original>
          "{ { 42 }, { }, 1.2f }" == ::Catch::Detail::stringify(value)
        </Original>
        <Expanded>
          "{ { 42 }, { }, 1.2f }"
==
"{ { 42 }, { }, 1.2f }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="vec&lt;vec&lt;string,alloc>> -> toString" tags="[toString][vector,allocator]" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(v) == "{  }"
        </Original>
        <Expanded>
          "{  }" == "{  }"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(v) == "{ { \"hello\" }, { \"world\" } }"
        </Original>
        <Expanded>
          "{ { "hello" }, { "world" } }"
==
"{ { "hello" }, { "world" } }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="vector&lt;bool> -> toString" tags="[containers][toString][vector]" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(bools) == "{  }"
        </Original>
        <Expanded>
          "{  }" == "{  }"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(bools) == "{ true }"
        </Original>
        <Expanded>
          "{ true }" == "{ true }"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(bools) == "{ true, false }"
        </Original>
        <Expanded>
          "{ true, false }" == "{ true, false }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="vector&lt;int,allocator> -> toString" tags="[toString][vector,allocator]" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(vv) == "{  }"
        </Original>
        <Expanded>
          "{  }" == "{  }"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(vv) == "{ 42 }"
        </Original>
        <Expanded>
          "{ 42 }" == "{ 42 }"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(vv) == "{ 42, 250 }"
        </Original>
        <Expanded>
          "{ 42, 250 }" == "{ 42, 250 }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="vector&lt;int> -> toString" tags="[toString][vector]" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(vv) == "{  }"
        </Original>
        <Expanded>
          "{  }" == "{  }"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(vv) == "{ 42 }"
        </Original>
        <Expanded>
          "{ 42 }" == "{ 42 }"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(vv) == "{ 42, 250 }"
        </Original>
        <Expanded>
          "{ 42, 250 }" == "{ 42, 250 }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="vector&lt;string> -> toString" tags="[toString][vector]" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(vv) == "{  }"
        </Original>
        <Expanded>
          "{  }" == "{  }"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(vv) == "{ \"hello\" }"
        </Original>
        <Expanded>
          "{ "hello" }" == "{ "hello" }"
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/ToStringVector.tests.cpp" >
        <Original>
          ::Catch::Detail::stringify(vv) == "{ \"hello\", \"world\" }"
        </Original>
        <Expanded>
          "{ "hello", "world" }"
==
"{ "hello", "world" }"
        </Expanded>
      </Expression>
      <OverallResult success="true"/>
    </TestCase>
    <TestCase name="vectors can be sized and resized" tags="[vector]" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="resizing bigger changes size and capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 10
          </Original>
          <Expanded>
            10 == 10
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="resizing smaller changes size but not capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 0
          </Original>
          <Expanded>
            0 == 0
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.capacity() >= 5
          </Original>
          <Expanded>
            5 >= 5
          </Expanded>
        </Expression>
        <Section name="We can use the 'swap trick' to reset the capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="reserving bigger changes capacity but not size" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 5
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.size() == 5
        </Original>
        <Expanded>
          5 == 5
        </Expanded>
      </Expression>
      <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Original>
          v.capacity() >= 5
        </Original>
        <Expanded>
          5 >= 5
        </Expanded>
      </Expression>
      <Section name="reserving smaller does not change size or capacity" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
          <Original>
            v.size() == 5
          </Original>
          <Expanded>
            5 == 5
          </Expanded>
        </Expression>
        <Expression success="true" type="REQUIRE" filename="projects/<exe-name>/UsageTests/Misc.tests.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="xmlentitycheck" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
      <Section name="embedded xml: &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>" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <Section name="encoded chars: these should all be encoded: &amp;&amp;&amp;&quot;&quot;&quot;&lt;&lt;&lt;&amp;&quot;&lt;&lt;&amp;&quot;" filename="projects/<exe-name>/UsageTests/Misc.tests.cpp" >
        <OverallResults successes="1" failures="0" expectedFailures="0"/>
      </Section>
      <OverallResult success="true"/>
    </TestCase>
    <OverallResults successes="1524" failures="149" expectedFailures="21"/>
  </Group>
  <OverallResults successes="1524" failures="148" expectedFailures="21"/>
</Catch>
