MCPcopy Create free account
hub / github.com/apache/trafficserver / writeAssertion

Method writeAssertion

lib/catch2/catch.hpp:17021–17077  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

17019 }
17020
17021 void JunitReporter::writeAssertion( AssertionStats const& stats ) {
17022 AssertionResult const& result = stats.assertionResult;
17023 if( !result.isOk() ) {
17024 std::string elementName;
17025 switch( result.getResultType() ) {
17026 case ResultWas::ThrewException:
17027 case ResultWas::FatalErrorCondition:
17028 elementName = "error";
17029 break;
17030 case ResultWas::ExplicitFailure:
17031 case ResultWas::ExpressionFailed:
17032 case ResultWas::DidntThrowException:
17033 elementName = "failure";
17034 break;
17035
17036 // We should never see these here:
17037 case ResultWas::Info:
17038 case ResultWas::Warning:
17039 case ResultWas::Ok:
17040 case ResultWas::Unknown:
17041 case ResultWas::FailureBit:
17042 case ResultWas::Exception:
17043 elementName = "internalError";
17044 break;
17045 }
17046
17047 XmlWriter::ScopedElement e = xml.scopedElement( elementName );
17048
17049 xml.writeAttribute( "message", result.getExpression() );
17050 xml.writeAttribute( "type", result.getTestMacroName() );
17051
17052 ReusableStringStream rss;
17053 if (stats.totals.assertions.total() > 0) {
17054 rss << "FAILED" << ":\n";
17055 if (result.hasExpression()) {
17056 rss << " ";
17057 rss << result.getExpressionInMacro();
17058 rss << '\n';
17059 }
17060 if (result.hasExpandedExpression()) {
17061 rss << "with expansion:\n";
17062 rss << Column(result.getExpandedExpression()).indent(2) << '\n';
17063 }
17064 } else {
17065 rss << '\n';
17066 }
17067
17068 if( !result.getMessage().empty() )
17069 rss << result.getMessage() << '\n';
17070 for( auto const& msg : stats.infoMessages )
17071 if( msg.type == ResultWas::Info )
17072 rss << msg.message << '\n';
17073
17074 rss << "at " << result.getSourceInfo();
17075 xml.writeText( rss.str(), XmlFormatting::Newline );
17076 }
17077 }
17078

Callers

nothing calls this directly

Calls 15

isOkMethod · 0.80
getResultTypeMethod · 0.80
scopedElementMethod · 0.80
getExpressionMethod · 0.80
getTestMacroNameMethod · 0.80
hasExpressionMethod · 0.80
getExpressionInMacroMethod · 0.80
hasExpandedExpressionMethod · 0.80
getExpandedExpressionMethod · 0.80
getMessageMethod · 0.80
getSourceInfoMethod · 0.80
ColumnClass · 0.70

Tested by

no test coverage detected