10000 Fixed up xml reporter and rebased · log4cplus/Catch@6817bb0 · GitHub
[go: up one dir, main page]

Skip to content

Commit 6817bb0

Browse files
committed
Fixed up xml reporter and rebased
1 parent 3e0c501 commit 6817bb0

File tree

7 files changed

+73
-27
lines changed

7 files changed

+73
-27
lines changed

include/internal/catch_totals.hpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@ namespace Catch {
3535
bool allPassed() const {
3636
return failed == 0 && failedButOk == 0;
3737
}
38+
bool allOk() const {
39+
return failed == 0;
40+
}
3841

3942
std::size_t passed;
4043
std::size_t failed;

include/reporters/catch_reporter_xml.hpp

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ namespace Catch {
9999
if( assertionResult.hasExpression() ) {
100100
m_xml.startElement( "Expression" )
101101
.writeAttribute( "success", assertionResult.succeeded() )
102-
.writeAttribute( "type", assertionResult.getTestMacroName() )
102+
// .writeAttribute( "type", assertionResult.getTestMacroName() )
103103
.writeAttribute( "filename", assertionResult.getSourceInfo().file )
104104
.writeAttribute( "line", assertionResult.getSourceInfo().line );
105105

@@ -111,8 +111,6 @@ namespace Catch {
111111

112112
// And... Print a result applicable to each result type.
113113
switch( assertionResult.getResultType() ) {
114-
default:
115-
break;
116114
case ResultWas::ThrewException:
117115
m_xml.scopedElement( "Exception" )
118116
.writeAttribute( "filename", assertionResult.getSourceInfo().file )
@@ -130,13 +128,14 @@ namespace Catch {
130128
.writeText( assertionResult.getMessage() );
131129
break;
132130
case ResultWas::Warning:
133-
m_xml.scopedElement( "Warning" )
134-
.writeText( assertionResult.getMessage() );
131+
// Warning will already have been written
135132
break;
136133
case ResultWas::ExplicitFailure:
137134
m_xml.scopedElement( "Failure" )
138135
.writeText( assertionResult.getMessage() );
139136
break;
137+
default:
138+
break;
140139
}
141140

142141
if( assertionResult.hasExpression() )
@@ -163,7 +162,7 @@ namespace Catch {
163162
virtual void testCaseEnded( TestCaseStats const& testCaseStats ) {
164163
StreamingReporterBase::testCaseEnded( testCaseStats );
165164
XmlWriter::ScopedElement e = m_xml.scopedElement( "OverallResult" );
166-
e.writeAttribute( "success", testCaseStats.totals.assertions.allPassed() );
165+
e.writeAttribute( "success", testCaseStats.totals.assertions.allOk() );
167166

168167
if ( m_config->showDurations() == ShowDurations::Always )
169168
e.writeAttribute( "durationInSeconds", m_testCaseTimer.getElapsedSeconds() );

projects/SelfTest/Baselines/console.std.approved.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -787,5 +787,5 @@ with expansion:
787787

788788
===============================================================================
789789
test cases: 149 | 110 passed | 38 failed | 1 failed as expected
790-
assertions: 751 | 659 passed | 79 failed | 13 failed as expected
790+
assertions: 753 | 661 passed | 79 failed | 13 failed as expected
791791

projects/SelfTest/Baselines/console.sw.approved.txt

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4632,6 +4632,25 @@ PASSED:
46324632
with expansion:
46334633
"abcdefcg" == "abcdefcg"
46344634

4635+
-------------------------------------------------------------------------------
4636+
replaceInPlace
4637+
escape '
4638+
-------------------------------------------------------------------------------
4639+
TestMain.cpp:<line number>
4640+
...............................................................................
4641+
4642+
TestMain.cpp:<line number>:
4643+
PASSED:
4644+
CHECK( replaceInPlace( s, "'", "|'" ) )
4645+
with expansion:
4646+
true
4647+
4648+
TestMain.cpp:<line number>:
4649+
PASSED:
4650+
CHECK( s == "didn|'t" )
4651+
with expansion:
4652+
"didn|'t" == "didn|'t"
4653+
46354654
hello
46364655
hello
46374656
-------------------------------------------------------------------------------
@@ -7798,5 +7817,5 @@ with expansion:
77987817

77997818
===============================================================================
78007819
test cases: 149 | 94 passed | 54 failed | 1 failed as expected
7801-
assertions: 771 | 659 passed | 99 failed | 13 failed as expected
7820+
assertions: 773 | 661 passed | 99 failed | 13 failed as expected
78027821

projects/SelfTest/Baselines/junit.sw.approved.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<testsuites>
2-
<testsuite name="all tests" errors="12" failures="87" tests="771" hostname="tbd" time="{duration}" timestamp="tbd">
2+
<testsuite name="all tests" errors="12" failures="87" tests="773" hostname="tbd" time="{duration}" timestamp="tbd">
33
<testcase classname="global" name="toString(enum)&quo F438 t; time="{duration}"/>
44
<testcase classname="global" name="toString(enum w/operator&lt;&lt;)" time="{duration}"/>
55
<testcase classname="global" name="toString(enum class)" time="{duration}"/>
@@ -491,6 +491,7 @@ MiscTests.cpp:<line number>
491491
<testcase classname="replaceInPlace" name="replace last char" time="{duration}"/>
492492
<testcase classname="replaceInPlace" name="replace all chars" time="{duration}"/>
493493
<testcase classname="replaceInPlace" name="replace no chars" time="{duration}"/>
494+
<testcase classname="replaceInPlace" name="escape '" time="{duration}"/>
494495
<testcase classname="global" name="Strings can be rendered with colour" time="{duration}">
495496
<system-out>
496497
hello

projects/SelfTest/Baselines/xml.sw.approved.txt

Lines changed: 37 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -531,7 +531,7 @@
531531
1.3 == Approx( 1.301 )
532532
</Expanded>
533533
</Expression>
534-
<OverallResult success="false"/>
534+
<OverallResult success="true"/>
535535
</TestCase>
536536
<TestCase name="Inequality checks that should succeed">
537537
<Expression success="true" filename="projects/SelfTest/ConditionTests.cpp" >
@@ -1541,7 +1541,7 @@
15411541
<OverallResult success="false"/>
15421542
</TestCase>
15431543
<TestCase name="When unchecked exceptions are thrown, but caught, they do not affect the test">
1544-
<OverallResult success="true"/>
1544+
<OverallResult success="false"/>
15451545
</TestCase>
15461546
<TestCase name="Unexpected custom exceptions can be translated">
15471547
<Exception filename="projects/SelfTest/ExceptionTests.cpp" >
@@ -2775,7 +2775,7 @@
27752775
<Warning>
27762776
this is a warning
27772777
</Warning>
2778-
<OverallResult success="true"/>
2778+
<OverallResult success="false"/>
27792779
</TestCase>
27802780
<TestCase name="SUCCEED counts as a test pass">
27812781
<OverallResult success="true"/>
@@ -2873,7 +2873,7 @@
28732873
<Section name="two">
28742874
<OverallResults successes="0" failures="1" expectedFailures="0"/>
28752875
</Section>
2876-
<OverallResult success="true"/>
2876+
<OverallResult success="false"/>
28772877
</TestCase>
28782878
<TestCase name="SCOPED_INFO is reset for each loop">
28792879
<Expression success="true" filename="projects/SelfTest/MessageTests.cpp" >
@@ -2984,7 +2984,7 @@
29842984
<OverallResult success="false"/>
29852985
</TestCase>
29862986
<TestCase name="just info">
2987-
<OverallResult success="true"/>
2987+
<OverallResult success="false"/>
29882988
</TestCase>
29892989
<TestCase name="just failure">
29902990
<Failure>
@@ -3016,7 +3016,7 @@
30163016
<Warning>
30173017
toString(p): 0x<hex digits>
30183018
</Warning>
3019-
<OverallResult success="true"/>
3019+
<OverallResult success="false"/>
30203020
</TestCase>
30213021
<TestCase name="random SECTION tests">
30223022
<Section name="s1" description="doesn't equal">
@@ -3117,7 +3117,7 @@
31173117
<Section name="f (leaf)">
31183118
<OverallResults successes="0" failures="1" expectedFailures="0"/>
31193119
</Section>
3120-
<OverallResult success="true"/>
3120+
<OverallResult success="false"/>
31213121
</TestCase>
31223122
<TestCase name="looped SECTION tests">
31233123
<Section name="s1" description="b is currently: 0">
@@ -3219,7 +3219,7 @@
32193219
<OverallResult success="false"/>
32203220
</TestCase>
32213221
<TestCase name="Sends stuff to stdout and stderr">
3222-
<OverallResult success="true"/>
3222+
<OverallResult success="false"/>
32233223
</TestCase>
32243224
<TestCase name="null strings">
32253225
<Expression success="true" filename="projects/SelfTest/MiscTests.cpp" >
@@ -3323,7 +3323,7 @@
33233323
<Section name="encoded chars" description="these should all be encoded: &amp;&amp;&amp;&quot;&quot;&quot;&lt;&lt;&lt;&amp;&quot;&lt;&lt;&amp;&quot;">
33243324
<OverallResults successes="0" failures="1" expectedFailures="0"/>
33253325
</Section>
3326-
<OverallResult success="true"/>
3326+
<OverallResult success="false"/>
33273327
</TestCase>
33283328
<TestCase name="send a single char to INFO">
33293329
<Info>
@@ -3525,19 +3525,19 @@
35253525
<OverallResult success="true"/>
35263526
</TestCase>
35273527
<TestCase name="An empty test with no assertions">
3528-
<OverallResult success="true"/>
3528+
<OverallResult success="false"/>
35293529
</TestCase>
35303530
<TestCase name="Nice descriptive name">
35313531
<Warning>
35323532
This one ran
35333533
</Warning>
3534-
<OverallResult success="true"/>
3534+
<OverallResult success="false"/>
35353535
</TestCase>
35363536
<TestCase name="first tag">
3537-
<OverallResult success="true"/>
3537+
<OverallResult success="false"/>
35383538
</TestCase>
35393539
<TestCase name="second tag">
3540-
<OverallResult success="true"/>
3540+
<OverallResult success="false"/>
35413541
</TestCase>
35423542
<TestCase name="vectors can be sized and resized">
35433543
<Expression success="true" filename="projects/SelfTest/MiscTests.cpp" >
@@ -4829,10 +4829,29 @@ four&quot;
48294829
</Expression>
48304830
<OverallResults successes="2" failures="0" expectedFailures="0"/>
48314831
</Section>
4832+
<Section name="escape '">
4833+
<Expression success="true" filename="projects/SelfTest/TestMain.cpp" >
4834+
<Original>
4835+
replaceInPlace( s, &quot;'&quot;, &quot;|'&quot; )
4836+
</Original>
4837+
<Expanded>
4838+
true
4839+
</Expanded>
4840+
</Expression>
4841+
<Expression success="true" filename="projects/SelfTest/TestMain.cpp" >
4842+
<Original>
4843+
s == &quot;didn|'t&quot;
4844+
</Original>
4845+
<Expanded>
4846+
&quot;didn|'t&quot; == &quot;didn|'t&quot;
4847+
</Expanded>
4848+
</Expression>
4849+
<OverallResults successes="2" failures="0" expectedFailures="0"/>
4850+
</Section>
48324851
<OverallResult success="true"/>
48334852
</TestCase>
48344853
<TestCase name="Strings can be rendered with colour">
4835-
<OverallResult success="true"/>
4854+
<OverallResult success="false"/>
48364855
</TestCase>
48374856
<TestCase name="Text can be formatted using the Text class">
48384857
<Expression success="true" filename="projects/SelfTest/TestMain.cpp" >
@@ -5883,13 +5902,13 @@ there&quot;
58835902
<Warning>
58845903
Uncomment the code in this test to check that it gives a sensible compiler error
58855904
</Warning>
5886-
<OverallResult success="true"/>
5905+
<OverallResult success="false"/>
58875906
</TestCase>
58885907
<TestCase name="Where the LHS is not a simple value">
58895908
<Warning>
58905909
Uncomment the code in this test to check that it gives a sensible compiler error
58915910
</Warning>
5892-
<OverallResult success="true"/>
5911+
<OverallResult success="false"/>
58935912
</TestCase>
58945913
<TestCase name="A failing expression with a non streamable type is still captured">
58955914
<Expression success="false" filename="projects/SelfTest/TrickyTests.cpp" >
@@ -8067,7 +8086,7 @@ there&quot;
80678086
</Section>
80688087
<OverallResult success="true"/>
80698088
</TestCase>
8070-
<OverallResults successes="659" failures="99" expectedFailures="13"/>
8089+
<OverallResults successes="661" failures="99" expectedFailures="13"/>
80718090
</Group>
8072-
<OverallResults successes="659" failures="99" expectedFailures="13"/>
8091+
<OverallResults successes="661" failures="99" expectedFailures="13"/>
80738092
</Catch>

projects/SelfTest/TestMain.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -374,6 +374,11 @@ TEST_CASE( "replaceInPlace", "" ) {
374374
CHECK_FALSE( replaceInPlace( letters, "x", "z" ) );
375375
CHECK( letters == letters );
376376
}
377+
SECTION( "escape '" ) {
378+
std::string s = "didn't";
379+
CHECK( replaceInPlace( s, "'", "|'" ) );
380+
CHECK( s == "didn|'t" );
381+
}
377382
}
378383

379384
// !TBD: This will be folded into Text class

0 commit comments

Comments
 (0)
0