class XmlReportWriter
extends java.lang.Object
XmlReportWriter
writes 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.Modifier and Type | Class and Description |
---|---|
private static class |
XmlReportWriter.TestCounts |
Modifier and Type | Field and Description |
---|---|
private static java.lang.String |
CDATA_END |
private static java.lang.String |
CDATA_START |
private XmlReportData |
reportData |
Constructor and Description |
---|
XmlReportWriter(XmlReportData reportData) |
Modifier and Type | Method and Description |
---|---|
private void |
buildReportEntryDescription(java.time.LocalDateTime timestamp,
java.util.Map<java.lang.String,java.lang.String> keyValuePairs,
int entryNumber,
java.lang.StringBuilder result) |
private void |
collectReportEntries(TestIdentifier testIdentifier,
java.util.List<java.lang.String> systemOutElements,
java.util.List<java.lang.String> systemErrElements) |
private java.lang.String |
formatNonStandardAttributesAsString(TestIdentifier testIdentifier) |
private java.lang.String |
getClassName(TestIdentifier testIdentifier) |
private java.time.LocalDateTime |
getCurrentDateTime() |
private java.util.Optional<java.lang.String> |
getHostname() |
private java.lang.String |
getName(TestIdentifier testIdentifier) |
private java.lang.String |
getTime(TestIdentifier testIdentifier,
java.text.NumberFormat numberFormat) |
private static boolean |
isFailure(TestExecutionResult result) |
private void |
newLine(javax.xml.stream.XMLStreamWriter xmlWriter) |
private void |
removeIfPresentAndAddAsSeparateElement(java.util.Map<java.lang.String,java.lang.String> keyValuePairs,
java.lang.String key,
java.util.List<java.lang.String> elements) |
private void |
writeCDataSafely(javax.xml.stream.XMLStreamWriter writer,
java.lang.String data) |
private void |
writeErrorOrFailureElement(TestExecutionResult result,
javax.xml.stream.XMLStreamWriter writer) |
private void |
writeFailureAttributesAndContent(java.lang.Throwable throwable,
javax.xml.stream.XMLStreamWriter writer) |
private void |
writeOutputElement(java.lang.String elementName,
java.lang.String content,
javax.xml.stream.XMLStreamWriter writer) |
private void |
writeOutputElements(java.lang.String elementName,
java.util.List<java.lang.String> elements,
javax.xml.stream.XMLStreamWriter writer) |
private void |
writeSkippedElement(java.lang.String reason,
javax.xml.stream.XMLStreamWriter writer) |
private void |
writeSkippedOrErrorOrFailureElement(TestIdentifier testIdentifier,
javax.xml.stream.XMLStreamWriter writer) |
private void |
writeSuiteAttributes(TestIdentifier testIdentifier,
java.util.List<TestIdentifier> tests,
java.text.NumberFormat numberFormat,
javax.xml.stream.XMLStreamWriter writer) |
private void |
writeSystemProperties(javax.xml.stream.XMLStreamWriter writer) |
private void |
writeTestcase(TestIdentifier testIdentifier,
java.text.NumberFormat numberFormat,
javax.xml.stream.XMLStreamWriter writer) |
private void |
writeTestCounts(java.util.List<TestIdentifier> tests,
javax.xml.stream.XMLStreamWriter writer) |
private void |
writeTestsuite(TestIdentifier testIdentifier,
java.util.List<TestIdentifier> tests,
javax.xml.stream.XMLStreamWriter writer) |
private void |
writeXmlReport(TestIdentifier testIdentifier,
java.util.List<TestIdentifier> tests,
java.io.Writer out) |
(package private) void |
writeXmlReport(TestIdentifier testIdentifier,
java.io.Writer out) |
private static final java.lang.String CDATA_START
private static final java.lang.String CDATA_END
private final XmlReportData reportData
XmlReportWriter(XmlReportData reportData)
void writeXmlReport(TestIdentifier testIdentifier, java.io.Writer out) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private void writeXmlReport(TestIdentifier testIdentifier, java.util.List<TestIdentifier> tests, java.io.Writer out) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private void writeTestsuite(TestIdentifier testIdentifier, java.util.List<TestIdentifier> tests, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private void writeSuiteAttributes(TestIdentifier testIdentifier, java.util.List<TestIdentifier> tests, java.text.NumberFormat numberFormat, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private void writeTestCounts(java.util.List<TestIdentifier> tests, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private void writeSystemProperties(javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private void writeTestcase(TestIdentifier testIdentifier, java.text.NumberFormat numberFormat, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private java.lang.String getName(TestIdentifier testIdentifier)
private java.lang.String getClassName(TestIdentifier testIdentifier)
private void writeSkippedOrErrorOrFailureElement(TestIdentifier testIdentifier, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private void writeSkippedElement(java.lang.String reason, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private void writeErrorOrFailureElement(TestExecutionResult result, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private void writeFailureAttributesAndContent(java.lang.Throwable throwable, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private void collectReportEntries(TestIdentifier testIdentifier, java.util.List<java.lang.String> systemOutElements, java.util.List<java.lang.String> systemErrElements)
private void removeIfPresentAndAddAsSeparateElement(java.util.Map<java.lang.String,java.lang.String> keyValuePairs, java.lang.String key, java.util.List<java.lang.String> elements)
private void buildReportEntryDescription(java.time.LocalDateTime timestamp, java.util.Map<java.lang.String,java.lang.String> keyValuePairs, int entryNumber, java.lang.StringBuilder result)
private java.lang.String getTime(TestIdentifier testIdentifier, java.text.NumberFormat numberFormat)
private java.util.Optional<java.lang.String> getHostname()
private java.time.LocalDateTime getCurrentDateTime()
private java.lang.String formatNonStandardAttributesAsString(TestIdentifier testIdentifier)
private void writeOutputElements(java.lang.String elementName, java.util.List<java.lang.String> elements, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private void writeOutputElement(java.lang.String elementName, java.lang.String content, javax.xml.stream.XMLStreamWriter writer) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private void writeCDataSafely(javax.xml.stream.XMLStreamWriter writer, java.lang.String data) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private void newLine(javax.xml.stream.XMLStreamWriter xmlWriter) throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
private static boolean isFailure(TestExecutionResult result)