1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
|
Testing multiple samples with --xml
$ simple.c.bin --xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- Tests compiled with Criterion v.* --> (re)
<testsuites name="Criterion Tests" tests="2" failures="1" errors="0" disabled="0">
<testsuite name="misc" tests="2" failures="1" errors="0" disabled="0" skipped="0" time="\d\.\d\d\d"> (re)
<testcase name="passing" assertions="1" status="PASSED" time="\d\.\d\d\d"> (re)
</testcase>
<testcase name="failing" assertions="1" status="FAILED" time="\d\.\d\d\d"> (re)
<failure type="assert" message="1 assertion(s) failed.">simple.c:4: The expression 0 is false. </failure>
</testcase>
</testsuite>
</testsuites>
$ signal.c.bin --xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- Tests compiled with Criterion v.* --> (re)
<testsuites name="Criterion Tests" tests="3" failures="2" errors="1" disabled="0">
<testsuite name="simple" tests="3" failures="2" errors="1" disabled="0" skipped="0" time="\d\.\d\d\d"> (re)
<testcase name="wrong_signal" assertions="0" status="FAILED" time="\d\.\d\d\d"> (re)
<failure type="assert" message="0 assertion(s) failed."></failure>
</testcase>
<testcase name="uncaught" assertions="0" status="ERRORED" time="\d\.\d\d\d"> (re)
<error type="crash" message="The test crashed." /> </testcase>
<testcase name="caught" assertions="0" status="PASSED" time="\d\.\d\d\d"> (re)
</testcase>
</testsuite>
</testsuites>
$ asserts.c.bin --xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- Tests compiled with Criterion v.* --> (re)
<testsuites name="Criterion Tests" tests="8" failures="2" errors="0" disabled="0">
<testsuite name="asserts" tests="8" failures="2" errors="0" disabled="0" skipped="0" time="\d\.\d\d\d"> (re)
<testcase name="wstring" assertions="0" status="PASSED" time="\d\.\d\d\d"> (re)
</testcase>
<testcase name="string" assertions="0" status="PASSED" time="\d\.\d\d\d"> (re)
</testcase>
<testcase name="stream" assertions="0" status="PASSED" time="\d\.\d\d\d"> (re)
</testcase>
<testcase name="old_school" assertions="2" status="FAILED" time="\d\.\d\d\d"> (re)
<failure type="assert" message="2 assertion(s) failed.">asserts.c:19: asserts.c:18: You can fail an assertion with a message from anywhere </failure>
</testcase>
<testcase name="native" assertions="0" status="PASSED" time="\d\.\d\d\d"> (re)
</testcase>
<testcase name="float" assertions="0" status="PASSED" time="\d\.\d\d\d"> (re)
</testcase>
<testcase name="base" assertions="2" status="FAILED" time="\d\.\d\d\d"> (re)
<failure type="assert" message="2 assertion(s) failed.">asserts.c:13: This assert runs asserts.c:12: assert is fatal, expect isn't </failure>
</testcase>
<testcase name="array" assertions="0" status="PASSED" time="\d\.\d\d\d"> (re)
</testcase>
</testsuite>
</testsuites>
$ more-suites.c.bin --xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- Tests compiled with Criterion v.* --> (re)
<testsuites name="Criterion Tests" tests="3" failures="0" errors="0" disabled="1">
<testsuite name="suite2" tests="1" failures="0" errors="0" disabled="0" skipped="0" time="\d\.\d\d\d"> (re)
<testcase name="test" assertions="1" status="PASSED" time="\d\.\d\d\d"> (re)
</testcase>
</testsuite>
<testsuite name="suite1" tests="1" failures="0" errors="0" disabled="0" skipped="0" time="\d\.\d\d\d"> (re)
<testcase name="test" assertions="1" status="PASSED" time="\d\.\d\d\d"> (re)
</testcase>
</testsuite>
<testsuite name="disabled" tests="1" failures="0" errors="0" disabled="1" skipped="1" time="\d\.\d\d\d"> (re)
<testcase name="test" assertions="0" status="SKIPPED" time="\d\.\d\d\d"> (re)
<skipped/>
</testcase>
</testsuite>
</testsuites>
$ long-messages.c.bin --xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- Tests compiled with Criterion v.* --> (re)
<testsuites name="Criterion Tests" tests="1" failures="1" errors="0" disabled="0">
<testsuite name="sample" tests="1" failures="1" errors="0" disabled="0" skipped="0" time="\d\.\d\d\d"> (re)
<testcase name="long_msg" assertions="1" status="FAILED" time="\d\.\d\d\d"> (re)
<failure type="assert" message="1 assertion(s) failed.">long-messages.c:4: This is A long message Spawning multiple lines. Formatting is respected. </failure>
</testcase>
</testsuite>
</testsuites>
$ description.c.bin --xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- Tests compiled with Criterion v.* --> (re)
<testsuites name="Criterion Tests" tests="2" failures="1" errors="0" disabled="1">
<testsuite name="misc" tests="2" failures="1" errors="0" disabled="1" skipped="1" time="\d\.\d\d\d"> (re)
<testcase name="skipped" assertions="0" status="SKIPPED" time="\d\.\d\d\d"> (re)
<skipped/>
</testcase>
<testcase name="failing" assertions="1" status="FAILED" time="\d\.\d\d\d"> (re)
<failure type="assert" message="1 assertion(s) failed.">description.c:4: The expression 0 is false. </failure>
</testcase>
</testsuite>
</testsuites>
Testing --output=xml
$ simple.c.bin --output=xml:-
<?xml version="1.0" encoding="UTF-8"?>
<!-- Tests compiled with Criterion v.* --> (re)
<testsuites name="Criterion Tests" tests="2" failures="1" errors="0" disabled="0">
<testsuite name="misc" tests="2" failures="1" errors="0" disabled="0" skipped="0" time="\d\.\d\d\d"> (re)
<testcase name="passing" assertions="1" status="PASSED" time="\d\.\d\d\d"> (re)
</testcase>
<testcase name="failing" assertions="1" status="FAILED" time="\d\.\d\d\d"> (re)
<failure type="assert" message="1 assertion(s) failed.">simple.c:4: The expression 0 is false. </failure>
</testcase>
</testsuite>
</testsuites>
Testing CRITERION_OUTPUTS
$ CRITERION_OUTPUTS=xml:- simple.c.bin
<?xml version="1.0" encoding="UTF-8"?>
<!-- Tests compiled with Criterion v.* --> (re)
<testsuites name="Criterion Tests" tests="2" failures="1" errors="0" disabled="0">
<testsuite name="misc" tests="2" failures="1" errors="0" disabled="0" skipped="0" time="\d\.\d\d\d"> (re)
<testcase name="passing" assertions="1" status="PASSED" time="\d\.\d\d\d"> (re)
</testcase>
<testcase name="failing" assertions="1" status="FAILED" time="\d\.\d\d\d"> (re)
<failure type="assert" message="1 assertion(s) failed.">simple.c:4: The expression 0 is false. </failure>
</testcase>
</testsuite>
</testsuites>
$ skip.c.bin --xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- Tests compiled with Criterion v.* --> (re)
<testsuites name="Criterion Tests" tests="2" failures="0" errors="0" disabled="2">
<testsuite name="misc" tests="2" failures="0" errors="0" disabled="2" skipped="2" time="\d\.\d\d\d"> (re)
<testcase name="skipping" assertions="0" status="SKIPPED" time="\d\.\d\d\d"> (re)
<skipped/>
</testcase>
<testcase name="message" assertions="0" status="SKIPPED" time="\d\.\d\d\d"> (re)
<skipped/>
</testcase>
</testsuite>
</testsuites>
|