Class XmlReportWriter


  • 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.
    Since:
    1.4
    • Field Detail

      • CDATA_SPLIT_PATTERN

        private static final java.util.regex.Pattern CDATA_SPLIT_PATTERN
    • Constructor Detail

    • Method Detail

      • writeXmlReport

        void writeXmlReport​(TestIdentifier testIdentifier,
                            java.io.Writer out)
                     throws javax.xml.stream.XMLStreamException
        Throws:
        javax.xml.stream.XMLStreamException
      • writeXmlReport

        private void writeXmlReport​(TestIdentifier testIdentifier,
                                    java.util.List<TestIdentifier> tests,
                                    java.io.Writer out)
                             throws javax.xml.stream.XMLStreamException
        Throws:
        javax.xml.stream.XMLStreamException
      • writeTestsuite

        private void writeTestsuite​(TestIdentifier testIdentifier,
                                    java.util.List<TestIdentifier> tests,
                                    javax.xml.stream.XMLStreamWriter writer)
                             throws javax.xml.stream.XMLStreamException
        Throws:
        javax.xml.stream.XMLStreamException
      • writeSuiteAttributes

        private void writeSuiteAttributes​(TestIdentifier testIdentifier,
                                          java.util.List<TestIdentifier> tests,
                                          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.List<TestIdentifier> tests,
                                     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,
                                   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,
                                                         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​(TestExecutionResult result,
                                                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
      • writeCDataSafely

        private void writeCDataSafely​(javax.xml.stream.XMLStreamWriter writer,
                                      java.lang.String data)
                               throws javax.xml.stream.XMLStreamException
        Throws:
        javax.xml.stream.XMLStreamException
      • newLine

        private void newLine​(javax.xml.stream.XMLStreamWriter xmlWriter)
                      throws javax.xml.stream.XMLStreamException
        Throws:
        javax.xml.stream.XMLStreamException