Class XmlReportWriter
- java.lang.Object
-
- org.junit.platform.reporting.legacy.xml.XmlReportWriter
-
class XmlReportWriter extends java.lang.ObjectXmlReportWriterwrites an XML report whose format is compatible with the de facto standard for JUnit 4 based test reports that was made popular by the Ant build system.- Since:
- 1.4
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static classXmlReportWriter.AggregatedTestResult
-
Field Summary
Fields Modifier and Type Field Description private static java.util.regex.PatternCDATA_SPLIT_PATTERNprivate XmlReportDatareportData
-
Constructor Summary
Constructors Constructor Description XmlReportWriter(XmlReportData reportData)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidbuildReportEntryDescription(java.time.LocalDateTime timestamp, java.util.Map<java.lang.String,java.lang.String> keyValuePairs, int entryNumber, java.lang.StringBuilder result)private voidcollectReportEntries(TestIdentifier testIdentifier, java.util.List<java.lang.String> systemOutElements, java.util.List<java.lang.String> systemErrElements)(package private) static java.lang.StringescapeIllegalChars(java.lang.String text)private java.lang.StringformatNonStandardAttributesAsString(TestIdentifier testIdentifier)private java.lang.StringgetClassName(TestIdentifier testIdentifier)private java.time.LocalDateTimegetCurrentDateTime()private java.util.Optional<java.lang.String>getHostname()private java.lang.StringgetName(TestIdentifier testIdentifier)private java.lang.StringgetTime(TestIdentifier testIdentifier, java.text.NumberFormat numberFormat)private static booleanisAllowedXmlCharacter(int codePoint)private static booleanisFailure(TestExecutionResult result)private voidnewLine(javax.xml.stream.XMLStreamWriter xmlWriter)private voidremoveIfPresentAndAddAsSeparateElement(java.util.Map<java.lang.String,java.lang.String> keyValuePairs, java.lang.String key, java.util.List<java.lang.String> elements)private booleanshouldInclude(TestPlan testPlan, TestIdentifier testIdentifier)private XmlReportWriter.AggregatedTestResulttoAggregatedResult(TestIdentifier testIdentifier)private voidwriteAttributeSafely(javax.xml.stream.XMLStreamWriter writer, java.lang.String name, java.lang.String value)private voidwriteCDataSafely(javax.xml.stream.XMLStreamWriter writer, java.lang.String data)private voidwriteErrorOrFailureElement(XmlReportWriter.AggregatedTestResult.Type type, java.lang.Throwable throwable, javax.xml.stream.XMLStreamWriter writer)private voidwriteFailureAttributesAndContent(java.lang.Throwable throwable, javax.xml.stream.XMLStreamWriter writer)private voidwriteOutputElement(java.lang.String elementName, java.lang.String content, javax.xml.stream.XMLStreamWriter writer)private voidwriteOutputElements(java.lang.String elementName, java.util.List<java.lang.String> elements, javax.xml.stream.XMLStreamWriter writer)private voidwriteSkippedElement(java.lang.String reason, javax.xml.stream.XMLStreamWriter writer)private voidwriteSkippedOrErrorOrFailureElement(TestIdentifier testIdentifier, XmlReportWriter.AggregatedTestResult testResult, javax.xml.stream.XMLStreamWriter writer)private voidwriteSuiteAttributes(TestIdentifier testIdentifier, java.util.Collection<XmlReportWriter.AggregatedTestResult> testResults, java.text.NumberFormat numberFormat, javax.xml.stream.XMLStreamWriter writer)private voidwriteSystemProperties(javax.xml.stream.XMLStreamWriter writer)private voidwriteTestcase(TestIdentifier testIdentifier, XmlReportWriter.AggregatedTestResult testResult, java.text.NumberFormat numberFormat, javax.xml.stream.XMLStreamWriter writer)private voidwriteTestCounts(java.util.Collection<XmlReportWriter.AggregatedTestResult> testResults, javax.xml.stream.XMLStreamWriter writer)private voidwriteTestsuite(TestIdentifier testIdentifier, java.util.Map<TestIdentifier,XmlReportWriter.AggregatedTestResult> tests, javax.xml.stream.XMLStreamWriter writer)(package private) voidwriteXmlReport(TestIdentifier rootDescriptor, java.io.Writer out)private voidwriteXmlReport(TestIdentifier testIdentifier, java.util.Map<TestIdentifier,XmlReportWriter.AggregatedTestResult> tests, java.io.Writer out)
-
-
-
Field Detail
-
CDATA_SPLIT_PATTERN
private static final java.util.regex.Pattern CDATA_SPLIT_PATTERN
-
reportData
private final XmlReportData reportData
-
-
Constructor Detail
-
XmlReportWriter
XmlReportWriter(XmlReportData reportData)
-
-
Method Detail
-
writeXmlReport
void writeXmlReport(TestIdentifier rootDescriptor, java.io.Writer out) throws javax.xml.stream.XMLStreamException
- Throws:
javax.xml.stream.XMLStreamException
-
toAggregatedResult
private XmlReportWriter.AggregatedTestResult toAggregatedResult(TestIdentifier testIdentifier)
-
shouldInclude
private boolean shouldInclude(TestPlan testPlan, TestIdentifier testIdentifier)
-
writeXmlReport
private void writeXmlReport(TestIdentifier testIdentifier, java.util.Map<TestIdentifier,XmlReportWriter.AggregatedTestResult> tests, java.io.Writer out) throws javax.xml.stream.XMLStreamException
- Throws:
javax.xml.stream.XMLStreamException
-
writeTestsuite
private void writeTestsuite(TestIdentifier testIdentifier, java.util.Map<TestIdentifier,XmlReportWriter.AggregatedTestResult> tests, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
- Throws:
javax.xml.stream.XMLStreamException
-
writeSuiteAttributes
private void writeSuiteAttributes(TestIdentifier testIdentifier, java.util.Collection<XmlReportWriter.AggregatedTestResult> testResults, java.text.NumberFormat numberFormat, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
- Throws:
javax.xml.stream.XMLStreamException
-
writeTestCounts
private void writeTestCounts(java.util.Collection<XmlReportWriter.AggregatedTestResult> testResults, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
- Throws:
javax.xml.stream.XMLStreamException
-
writeSystemProperties
private void writeSystemProperties(javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
writeTestcase
private void writeTestcase(TestIdentifier testIdentifier, XmlReportWriter.AggregatedTestResult testResult, java.text.NumberFormat numberFormat, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
- Throws:
javax.xml.stream.XMLStreamException
-
getName
private java.lang.String getName(TestIdentifier testIdentifier)
-
getClassName
private java.lang.String getClassName(TestIdentifier testIdentifier)
-
writeSkippedOrErrorOrFailureElement
private void writeSkippedOrErrorOrFailureElement(TestIdentifier testIdentifier, XmlReportWriter.AggregatedTestResult testResult, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
- Throws:
javax.xml.stream.XMLStreamException
-
writeSkippedElement
private void writeSkippedElement(java.lang.String reason, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
writeErrorOrFailureElement
private void writeErrorOrFailureElement(XmlReportWriter.AggregatedTestResult.Type type, java.lang.Throwable throwable, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
- Throws:
javax.xml.stream.XMLStreamException
-
writeFailureAttributesAndContent
private void writeFailureAttributesAndContent(java.lang.Throwable throwable, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
collectReportEntries
private void collectReportEntries(TestIdentifier testIdentifier, java.util.List<java.lang.String> systemOutElements, java.util.List<java.lang.String> systemErrElements)
-
removeIfPresentAndAddAsSeparateElement
private void removeIfPresentAndAddAsSeparateElement(java.util.Map<java.lang.String,java.lang.String> keyValuePairs, java.lang.String key, java.util.List<java.lang.String> elements)
-
buildReportEntryDescription
private void buildReportEntryDescription(java.time.LocalDateTime timestamp, java.util.Map<java.lang.String,java.lang.String> keyValuePairs, int entryNumber, java.lang.StringBuilder result)
-
getTime
private java.lang.String getTime(TestIdentifier testIdentifier, java.text.NumberFormat numberFormat)
-
getHostname
private java.util.Optional<java.lang.String> getHostname()
-
getCurrentDateTime
private java.time.LocalDateTime getCurrentDateTime()
-
formatNonStandardAttributesAsString
private java.lang.String formatNonStandardAttributesAsString(TestIdentifier testIdentifier)
-
writeOutputElements
private void writeOutputElements(java.lang.String elementName, java.util.List<java.lang.String> elements, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
writeOutputElement
private void writeOutputElement(java.lang.String elementName, java.lang.String content, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
writeAttributeSafely
private void writeAttributeSafely(javax.xml.stream.XMLStreamWriter writer, java.lang.String name, java.lang.String value) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
writeCDataSafely
private void writeCDataSafely(javax.xml.stream.XMLStreamWriter writer, java.lang.String data) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
escapeIllegalChars
static java.lang.String escapeIllegalChars(java.lang.String text)
-
isAllowedXmlCharacter
private static boolean isAllowedXmlCharacter(int codePoint)
-
newLine
private void newLine(javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException- Throws:
javax.xml.stream.XMLStreamException
-
isFailure
private static boolean isFailure(TestExecutionResult result)
-
-