doctest

FORK: The fastest feature-rich C++11/14/17/20 single-header testing framework
git clone https://git.neptards.moe/neptards/doctest.git
Log | Files | Refs | README

assertion_macros.cpp_xml.txt (23773B)


      1 <?xml version="1.0" encoding="UTF-8"?>
      2 <doctest binary="all_features">
      3   <Options order_by="file" rand_seed="324" first="0" last="4294967295" abort_after="0" subcase_filter_levels="2147483647" case_sensitive="false" no_throw="false" no_skip="false"/>
      4   <TestSuite>
      5     <TestCase name="normal macros" filename="assertion_macros.cpp" line="0">
      6       <Expression success="false" type="CHECK" filename="assertion_macros.cpp" line="0">
      7         <Original>
      8           throw_if(true, std::runtime_error("whops!")) == 42
      9         </Original>
     10         <Exception>
     11           "whops!"
     12         </Exception>
     13       </Expression>
     14       <Expression success="false" type="CHECK" filename="assertion_macros.cpp" line="0">
     15         <Original>
     16           doctest::Approx(0.502) == 0.501
     17         </Original>
     18         <Expanded>
     19           Approx( 0.502 ) == 0.501
     20         </Expanded>
     21       </Expression>
     22       <OverallResultsAsserts successes="4" failures="2" test_case_success="false"/>
     23     </TestCase>
     24     <TestCase name="expressions should be evaluated only once" filename="assertion_macros.cpp" line="0">
     25       <OverallResultsAsserts successes="2" failures="0" test_case_success="true"/>
     26     </TestCase>
     27     <TestCase name="exceptions-related macros" filename="assertion_macros.cpp" line="0">
     28       <Expression success="false" type="CHECK_THROWS" filename="assertion_macros.cpp" line="0">
     29         <Original>
     30           throw_if(false, 0)
     31         </Original>
     32       </Expression>
     33       <Expression success="false" type="CHECK_THROWS_AS" filename="assertion_macros.cpp" line="0">
     34         <Original>
     35           throw_if(true, 0)
     36         </Original>
     37         <Exception>
     38           "0"
     39         </Exception>
     40         <ExpectedException>
     41           char
     42         </ExpectedException>
     43       </Expression>
     44       <Expression success="false" type="CHECK_THROWS_AS" filename="assertion_macros.cpp" line="0">
     45         <Original>
     46           throw_if(false, 0)
     47         </Original>
     48         <ExpectedException>
     49           int
     50         </ExpectedException>
     51       </Expression>
     52       <Expression success="false" type="CHECK_THROWS_WITH" filename="assertion_macros.cpp" line="0">
     53         <Original>
     54           throw_if(true, "whops!")
     55         </Original>
     56         <Exception>
     57           "whops!"
     58         </Exception>
     59         <ExpectedExceptionString>
     60           whops! no match!
     61         </ExpectedExceptionString>
     62       </Expression>
     63       <Expression success="false" type="CHECK_THROWS_WITH" filename="assertion_macros.cpp" line="0">
     64         <Original>
     65           throw_if(true, "whops! does it match?")
     66         </Original>
     67         <Exception>
     68           "whops! does it match?"
     69         </Exception>
     70         <ExpectedExceptionString>
     71           whops! no match!
     72         </ExpectedExceptionString>
     73       </Expression>
     74       <Expression success="false" type="CHECK_THROWS_WITH_AS" filename="assertion_macros.cpp" line="0">
     75         <Original>
     76           throw_if(true, "whops!")
     77         </Original>
     78         <Exception>
     79           "whops!"
     80         </Exception>
     81         <ExpectedException>
     82           bool
     83         </ExpectedException>
     84         <ExpectedExceptionString>
     85           whops! no match!
     86         </ExpectedExceptionString>
     87       </Expression>
     88       <Expression success="false" type="CHECK_THROWS_WITH_AS" filename="assertion_macros.cpp" line="0">
     89         <Original>
     90           throw_if(true, "whops!")
     91         </Original>
     92         <Exception>
     93           "whops!"
     94         </Exception>
     95         <ExpectedException>
     96           int
     97         </ExpectedException>
     98         <ExpectedExceptionString>
     99           whops!
    100         </ExpectedExceptionString>
    101       </Expression>
    102       <Expression success="false" type="CHECK_THROWS_WITH_AS" filename="assertion_macros.cpp" line="0">
    103         <Original>
    104           throw_if(true, "whops! does it match?")
    105         </Original>
    106         <Exception>
    107           "whops! does it match?"
    108         </Exception>
    109         <ExpectedException>
    110           int
    111         </ExpectedException>
    112         <ExpectedExceptionString>
    113           whops! no match!
    114         </ExpectedExceptionString>
    115       </Expression>
    116       <Expression success="false" type="CHECK_NOTHROW" filename="assertion_macros.cpp" line="0">
    117         <Original>
    118           throw_if(true, 0)
    119         </Original>
    120         <Exception>
    121           "0"
    122         </Exception>
    123       </Expression>
    124       <OverallResultsAsserts successes="4" failures="9" test_case_success="false"/>
    125     </TestCase>
    126     <TestCase name="exceptions-related macros for std::exception" filename="assertion_macros.cpp" line="0">
    127       <Expression success="false" type="CHECK_THROWS" filename="assertion_macros.cpp" line="0">
    128         <Original>
    129           throw_if(false, 0)
    130         </Original>
    131       </Expression>
    132       <Expression success="false" type="CHECK_THROWS_AS" filename="assertion_macros.cpp" line="0">
    133         <Original>
    134           throw_if(false, std::runtime_error("whops!"))
    135         </Original>
    136         <ExpectedException>
    137           std::exception
    138         </ExpectedException>
    139       </Expression>
    140       <Expression success="false" type="CHECK_THROWS_AS" filename="assertion_macros.cpp" line="0">
    141         <Original>
    142           throw_if(true, std::runtime_error("whops!"))
    143         </Original>
    144         <Exception>
    145           "whops!"
    146         </Exception>
    147         <ExpectedException>
    148           int
    149         </ExpectedException>
    150       </Expression>
    151       <Expression success="false" type="CHECK_THROWS_WITH" filename="assertion_macros.cpp" line="0">
    152         <Original>
    153           throw_if(false, "")
    154         </Original>
    155         <ExpectedExceptionString>
    156           whops!
    157         </ExpectedExceptionString>
    158       </Expression>
    159       <Expression success="false" type="REQUIRE_NOTHROW" filename="assertion_macros.cpp" line="0">
    160         <Original>
    161           throw_if(true, std::runtime_error("whops!"))
    162         </Original>
    163         <Exception>
    164           "whops!"
    165         </Exception>
    166       </Expression>
    167       <OverallResultsAsserts successes="1" failures="5" test_case_success="false"/>
    168     </TestCase>
    169     <TestCase name="WARN level of asserts don't fail the test case" filename="assertion_macros.cpp" line="0">
    170       <Expression success="false" type="WARN" filename="assertion_macros.cpp" line="0">
    171         <Original>
    172           0
    173         </Original>
    174         <Expanded>
    175           0
    176         </Expanded>
    177       </Expression>
    178       <Expression success="false" type="WARN_FALSE" filename="assertion_macros.cpp" line="0">
    179         <Original>
    180           1
    181         </Original>
    182         <Expanded>
    183           1
    184         </Expanded>
    185       </Expression>
    186       <Expression success="false" type="WARN_THROWS" filename="assertion_macros.cpp" line="0">
    187         <Original>
    188           throw_if(false, 0)
    189         </Original>
    190       </Expression>
    191       <Expression success="false" type="WARN_THROWS_WITH" filename="assertion_macros.cpp" line="0">
    192         <Original>
    193           throw_if(true, "")
    194         </Original>
    195         <Exception/>
    196         <ExpectedExceptionString>
    197           whops!
    198         </ExpectedExceptionString>
    199       </Expression>
    200       <Expression success="false" type="WARN_THROWS_WITH" filename="assertion_macros.cpp" line="0">
    201         <Original>
    202           throw_if(false, "")
    203         </Original>
    204         <ExpectedExceptionString>
    205           whops!
    206         </ExpectedExceptionString>
    207       </Expression>
    208       <Expression success="false" type="WARN_THROWS_AS" filename="assertion_macros.cpp" line="0">
    209         <Original>
    210           throw_if(false, 0)
    211         </Original>
    212         <ExpectedException>
    213           bool
    214         </ExpectedException>
    215       </Expression>
    216       <Expression success="false" type="WARN_THROWS_AS" filename="assertion_macros.cpp" line="0">
    217         <Original>
    218           throw_if(true, 0)
    219         </Original>
    220         <Exception>
    221           "0"
    222         </Exception>
    223         <ExpectedException>
    224           bool
    225         </ExpectedException>
    226       </Expression>
    227       <Expression success="false" type="WARN_THROWS_WITH_AS" filename="assertion_macros.cpp" line="0">
    228         <Original>
    229           throw_if(false, "")
    230         </Original>
    231         <ExpectedException>
    232           int
    233         </ExpectedException>
    234         <ExpectedExceptionString>
    235           whops!
    236         </ExpectedExceptionString>
    237       </Expression>
    238       <Expression success="false" type="WARN_THROWS_WITH_AS" filename="assertion_macros.cpp" line="0">
    239         <Original>
    240           throw_if(true, "")
    241         </Original>
    242         <Exception/>
    243         <ExpectedException>
    244           int
    245         </ExpectedException>
    246         <ExpectedExceptionString>
    247           whops!
    248         </ExpectedExceptionString>
    249       </Expression>
    250       <Expression success="false" type="WARN_NOTHROW" filename="assertion_macros.cpp" line="0">
    251         <Original>
    252           throw_if(true, 0)
    253         </Original>
    254         <Exception>
    255           "0"
    256         </Exception>
    257       </Expression>
    258       <Expression success="false" type="WARN_EQ" filename="assertion_macros.cpp" line="0">
    259         <Original>
    260           1, 0
    261         </Original>
    262         <Expanded>
    263           1, 0
    264         </Expanded>
    265       </Expression>
    266       <Expression success="false" type="WARN_UNARY" filename="assertion_macros.cpp" line="0">
    267         <Original>
    268           0
    269         </Original>
    270         <Expanded>
    271           0
    272         </Expanded>
    273       </Expression>
    274       <Expression success="false" type="WARN_UNARY_FALSE" filename="assertion_macros.cpp" line="0">
    275         <Original>
    276           1
    277         </Original>
    278         <Expanded>
    279           1
    280         </Expanded>
    281       </Expression>
    282       <OverallResultsAsserts successes="0" failures="0" test_case_success="true"/>
    283     </TestCase>
    284     <TestCase name="CHECK level of asserts fail the test case but don't abort it" filename="assertion_macros.cpp" line="0">
    285       <Expression success="false" type="CHECK" filename="assertion_macros.cpp" line="0">
    286         <Original>
    287           0
    288         </Original>
    289         <Expanded>
    290           0
    291         </Expanded>
    292       </Expression>
    293       <Expression success="false" type="CHECK_FALSE" filename="assertion_macros.cpp" line="0">
    294         <Original>
    295           1
    296         </Original>
    297         <Expanded>
    298           1
    299         </Expanded>
    300       </Expression>
    301       <Expression success="false" type="CHECK_THROWS" filename="assertion_macros.cpp" line="0">
    302         <Original>
    303           throw_if(false, 0)
    304         </Original>
    305       </Expression>
    306       <Expression success="false" type="CHECK_THROWS_AS" filename="assertion_macros.cpp" line="0">
    307         <Original>
    308           throw_if(false, 0)
    309         </Original>
    310         <ExpectedException>
    311           bool
    312         </ExpectedException>
    313       </Expression>
    314       <Expression success="false" type="CHECK_THROWS_AS" filename="assertion_macros.cpp" line="0">
    315         <Original>
    316           throw_if(true, 0)
    317         </Original>
    318         <Exception>
    319           "0"
    320         </Exception>
    321         <ExpectedException>
    322           bool
    323         </ExpectedException>
    324       </Expression>
    325       <Expression success="false" type="CHECK_THROWS_WITH" filename="assertion_macros.cpp" line="0">
    326         <Original>
    327           throw_if(true, 0)
    328         </Original>
    329         <Exception>
    330           "0"
    331         </Exception>
    332         <ExpectedExceptionString>
    333           unrecognized
    334         </ExpectedExceptionString>
    335       </Expression>
    336       <Expression success="false" type="CHECK_THROWS_WITH_AS" filename="assertion_macros.cpp" line="0">
    337         <Original>
    338           throw_if(true, 0)
    339         </Original>
    340         <Exception>
    341           "0"
    342         </Exception>
    343         <ExpectedException>
    344           int
    345         </ExpectedException>
    346         <ExpectedExceptionString>
    347           unrecognized
    348         </ExpectedExceptionString>
    349       </Expression>
    350       <Expression success="false" type="CHECK_NOTHROW" filename="assertion_macros.cpp" line="0">
    351         <Original>
    352           throw_if(true, 0)
    353         </Original>
    354         <Exception>
    355           "0"
    356         </Exception>
    357       </Expression>
    358       <Expression success="false" type="CHECK_EQ" filename="assertion_macros.cpp" line="0">
    359         <Original>
    360           1, 0
    361         </Original>
    362         <Expanded>
    363           1, 0
    364         </Expanded>
    365       </Expression>
    366       <Expression success="false" type="CHECK_UNARY" filename="assertion_macros.cpp" line="0">
    367         <Original>
    368           0
    369         </Original>
    370         <Expanded>
    371           0
    372         </Expanded>
    373       </Expression>
    374       <Expression success="false" type="CHECK_UNARY_FALSE" filename="assertion_macros.cpp" line="0">
    375         <Original>
    376           1
    377         </Original>
    378         <Expanded>
    379           1
    380         </Expanded>
    381       </Expression>
    382       <Message type="WARNING" filename="assertion_macros.cpp" line="0">
    383         <Text>
    384           reached!
    385         </Text>
    386       </Message>
    387       <OverallResultsAsserts successes="3" failures="11" test_case_success="false"/>
    388     </TestCase>
    389     <TestCase name="REQUIRE level of asserts fail and abort the test case - 1" filename="assertion_macros.cpp" line="0">
    390       <Expression success="false" type="REQUIRE" filename="assertion_macros.cpp" line="0">
    391         <Original>
    392           0
    393         </Original>
    394         <Expanded>
    395           0
    396         </Expanded>
    397       </Expression>
    398       <OverallResultsAsserts successes="0" failures="1" test_case_success="false"/>
    399     </TestCase>
    400     <TestCase name="REQUIRE level of asserts fail and abort the test case - 2" filename="assertion_macros.cpp" line="0">
    401       <Expression success="false" type="REQUIRE_FALSE" filename="assertion_macros.cpp" line="0">
    402         <Original>
    403           1
    404         </Original>
    405         <Expanded>
    406           1
    407         </Expanded>
    408       </Expression>
    409       <OverallResultsAsserts successes="0" failures="1" test_case_success="false"/>
    410     </TestCase>
    411     <TestCase name="REQUIRE level of asserts fail and abort the test case - 3" filename="assertion_macros.cpp" line="0">
    412       <Expression success="false" type="REQUIRE_THROWS" filename="assertion_macros.cpp" line="0">
    413         <Original>
    414           throw_if(false, 0)
    415         </Original>
    416       </Expression>
    417       <OverallResultsAsserts successes="0" failures="1" test_case_success="false"/>
    418     </TestCase>
    419     <TestCase name="REQUIRE level of asserts fail and abort the test case - 4" filename="assertion_macros.cpp" line="0">
    420       <Expression success="false" type="REQUIRE_THROWS_AS" filename="assertion_macros.cpp" line="0">
    421         <Original>
    422           throw_if(false, 0)
    423         </Original>
    424         <ExpectedException>
    425           bool
    426         </ExpectedException>
    427       </Expression>
    428       <OverallResultsAsserts successes="0" failures="1" test_case_success="false"/>
    429     </TestCase>
    430     <TestCase name="REQUIRE level of asserts fail and abort the test case - 5" filename="assertion_macros.cpp" line="0">
    431       <Expression success="false" type="REQUIRE_THROWS_AS" filename="assertion_macros.cpp" line="0">
    432         <Original>
    433           throw_if(true, 0)
    434         </Original>
    435         <Exception>
    436           "0"
    437         </Exception>
    438         <ExpectedException>
    439           bool
    440         </ExpectedException>
    441       </Expression>
    442       <OverallResultsAsserts successes="0" failures="1" test_case_success="false"/>
    443     </TestCase>
    444     <TestCase name="REQUIRE level of asserts fail and abort the test case - 6" filename="assertion_macros.cpp" line="0">
    445       <Expression success="false" type="REQUIRE_THROWS_WITH" filename="assertion_macros.cpp" line="0">
    446         <Original>
    447           throw_if(false, "")
    448         </Original>
    449         <ExpectedExceptionString>
    450           whops!
    451         </ExpectedExceptionString>
    452       </Expression>
    453       <OverallResultsAsserts successes="0" failures="1" test_case_success="false"/>
    454     </TestCase>
    455     <TestCase name="REQUIRE level of asserts fail and abort the test case - 7" filename="assertion_macros.cpp" line="0">
    456       <Expression success="false" type="REQUIRE_THROWS_WITH" filename="assertion_macros.cpp" line="0">
    457         <Original>
    458           throw_if(true, "")
    459         </Original>
    460         <Exception/>
    461         <ExpectedExceptionString>
    462           whops!
    463         </ExpectedExceptionString>
    464       </Expression>
    465       <OverallResultsAsserts successes="0" failures="1" test_case_success="false"/>
    466     </TestCase>
    467     <TestCase name="REQUIRE level of asserts fail and abort the test case - 8" filename="assertion_macros.cpp" line="0">
    468       <Expression success="false" type="REQUIRE_THROWS_WITH_AS" filename="assertion_macros.cpp" line="0">
    469         <Original>
    470           throw_if(false, "")
    471         </Original>
    472         <ExpectedException>
    473           bool
    474         </ExpectedException>
    475         <ExpectedExceptionString>
    476           whops!
    477         </ExpectedExceptionString>
    478       </Expression>
    479       <OverallResultsAsserts successes="0" failures="1" test_case_success="false"/>
    480     </TestCase>
    481     <TestCase name="REQUIRE level of asserts fail and abort the test case - 9" filename="assertion_macros.cpp" line="0">
    482       <Expression success="false" type="REQUIRE_THROWS_WITH_AS" filename="assertion_macros.cpp" line="0">
    483         <Original>
    484           throw_if(true, "")
    485         </Original>
    486         <Exception/>
    487         <ExpectedException>
    488           bool
    489         </ExpectedException>
    490         <ExpectedExceptionString>
    491           whops!
    492         </ExpectedExceptionString>
    493       </Expression>
    494       <OverallResultsAsserts successes="0" failures="1" test_case_success="false"/>
    495     </TestCase>
    496     <TestCase name="REQUIRE level of asserts fail and abort the test case - 10" filename="assertion_macros.cpp" line="0">
    497       <Expression success="false" type="REQUIRE_NOTHROW" filename="assertion_macros.cpp" line="0">
    498         <Original>
    499           throw_if(true, 0)
    500         </Original>
    501         <Exception>
    502           "0"
    503         </Exception>
    504       </Expression>
    505       <OverallResultsAsserts successes="0" failures="1" test_case_success="false"/>
    506     </TestCase>
    507     <TestCase name="REQUIRE level of asserts fail and abort the test case - 11" filename="assertion_macros.cpp" line="0">
    508       <Expression success="false" type="REQUIRE_EQ" filename="assertion_macros.cpp" line="0">
    509         <Original>
    510           1, 0
    511         </Original>
    512         <Expanded>
    513           1, 0
    514         </Expanded>
    515       </Expression>
    516       <OverallResultsAsserts successes="0" failures="1" test_case_success="false"/>
    517     </TestCase>
    518     <TestCase name="REQUIRE level of asserts fail and abort the test case - 12" filename="assertion_macros.cpp" line="0">
    519       <Expression success="false" type="REQUIRE_UNARY" filename="assertion_macros.cpp" line="0">
    520         <Original>
    521           0
    522         </Original>
    523         <Expanded>
    524           0
    525         </Expanded>
    526       </Expression>
    527       <OverallResultsAsserts successes="0" failures="1" test_case_success="false"/>
    528     </TestCase>
    529     <TestCase name="REQUIRE level of asserts fail and abort the test case - 13" filename="assertion_macros.cpp" line="0">
    530       <Expression success="false" type="REQUIRE_UNARY_FALSE" filename="assertion_macros.cpp" line="0">
    531         <Original>
    532           1
    533         </Original>
    534         <Expanded>
    535           1
    536         </Expanded>
    537       </Expression>
    538       <OverallResultsAsserts successes="0" failures="1" test_case_success="false"/>
    539     </TestCase>
    540     <TestCase name="all binary assertions" filename="assertion_macros.cpp" line="0">
    541       <OverallResultsAsserts successes="16" failures="0" test_case_success="true"/>
    542     </TestCase>
    543     <TestCase name="some asserts used in a function called by a test case" filename="assertion_macros.cpp" line="0">
    544       <Expression success="false" type="CHECK_THROWS_WITH_AS" filename="assertion_macros.cpp" line="0">
    545         <Original>
    546           throw_if(true, false)
    547         </Original>
    548         <Exception>
    549           "unknown exception"
    550         </Exception>
    551         <ExpectedException>
    552           int
    553         </ExpectedException>
    554         <ExpectedExceptionString>
    555           unknown exception
    556         </ExpectedExceptionString>
    557       </Expression>
    558       <OverallResultsAsserts successes="9" failures="1" test_case_success="false"/>
    559     </TestCase>
    560     <TestCase name="check return values" filename="assertion_macros.cpp" line="0">
    561       <Message type="WARNING" filename="assertion_macros.cpp" line="0">
    562         <Text>
    563           :D
    564         </Text>
    565       </Message>
    566       <Message type="WARNING" filename="assertion_macros.cpp" line="0">
    567         <Text>
    568           :D
    569         </Text>
    570       </Message>
    571       <Message type="WARNING" filename="assertion_macros.cpp" line="0">
    572         <Text>
    573           :D
    574         </Text>
    575       </Message>
    576       <Message type="WARNING" filename="assertion_macros.cpp" line="0">
    577         <Text>
    578           :D
    579         </Text>
    580       </Message>
    581       <Message type="WARNING" filename="assertion_macros.cpp" line="0">
    582         <Text>
    583           :D
    584         </Text>
    585       </Message>
    586       <Message type="WARNING" filename="assertion_macros.cpp" line="0">
    587         <Text>
    588           :D
    589         </Text>
    590       </Message>
    591       <Message type="WARNING" filename="assertion_macros.cpp" line="0">
    592         <Text>
    593           :D
    594         </Text>
    595       </Message>
    596       <Message type="WARNING" filename="assertion_macros.cpp" line="0">
    597         <Text>
    598           :D
    599         </Text>
    600       </Message>
    601       <Message type="WARNING" filename="assertion_macros.cpp" line="0">
    602         <Text>
    603           :D
    604         </Text>
    605       </Message>
    606       <OverallResultsAsserts successes="9" failures="0" test_case_success="true"/>
    607     </TestCase>
    608     <TestCase name="check return values no print" filename="assertion_macros.cpp" line="0">
    609       <Expression success="false" type="CHECK" filename="assertion_macros.cpp" line="0">
    610         <Original>
    611           a == b
    612         </Original>
    613         <Expanded>
    614           4 == 2
    615         </Expanded>
    616       </Expression>
    617       <Expression success="false" type="CHECK_FALSE" filename="assertion_macros.cpp" line="0">
    618         <Original>
    619           a != b
    620         </Original>
    621         <Expanded>
    622           4 != 2
    623         </Expanded>
    624       </Expression>
    625       <Expression success="false" type="CHECK_EQ" filename="assertion_macros.cpp" line="0">
    626         <Original>
    627           a, b
    628         </Original>
    629         <Expanded>
    630           4, 2
    631         </Expanded>
    632       </Expression>
    633       <Expression success="false" type="CHECK_UNARY" filename="assertion_macros.cpp" line="0">
    634         <Original>
    635           a == b
    636         </Original>
    637         <Expanded>
    638           false
    639         </Expanded>
    640       </Expression>
    641       <Expression success="false" type="CHECK_UNARY_FALSE" filename="assertion_macros.cpp" line="0">
    642         <Original>
    643           a != b
    644         </Original>
    645         <Expanded>
    646           true
    647         </Expanded>
    648       </Expression>
    649       <Expression success="false" type="CHECK_THROWS" filename="assertion_macros.cpp" line="0">
    650         <Original>
    651           throw_if(false, false)
    652         </Original>
    653       </Expression>
    654       <Expression success="false" type="CHECK_THROWS_AS" filename="assertion_macros.cpp" line="0">
    655         <Original>
    656           throw_if(true, 2)
    657         </Original>
    658         <Exception>
    659           "2"
    660         </Exception>
    661         <ExpectedException>
    662           doctest::Approx
    663         </ExpectedException>
    664       </Expression>
    665       <Expression success="false" type="CHECK_NOTHROW" filename="assertion_macros.cpp" line="0">
    666         <Original>
    667           throw_if(true, 2)
    668         </Original>
    669         <Exception>
    670           "2"
    671         </Exception>
    672       </Expression>
    673       <Expression success="false" type="CHECK_THROWS_WITH" filename="assertion_macros.cpp" line="0">
    674         <Original>
    675           throw_if(true, 2)
    676         </Original>
    677         <Exception>
    678           "2"
    679         </Exception>
    680         <ExpectedExceptionString>
    681           1
    682         </ExpectedExceptionString>
    683       </Expression>
    684       <OverallResultsAsserts successes="0" failures="9" test_case_success="false"/>
    685     </TestCase>
    686   </TestSuite>
    687   <OverallResultsAsserts successes="48" failures="50"/>
    688   <OverallResultsTestCases successes="4" failures="19"/>
    689 </doctest>
    690 Program code.