You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by mi...@apache.org on 2024/01/03 15:43:58 UTC
(maven-surefire) 01/01: [SUREFIRE-2229] [REGRESSION] SUREFIRE-2224 causes stack trace to be omitted for errors and failures
This is an automated email from the ASF dual-hosted git repository.
michaelo pushed a commit to branch SUREFIRE-2229
in repository https://gitbox.apache.org/repos/asf/maven-surefire.git
commit 5f27699f91509068ed1b8d9834270a79cbeae0b4
Author: Michael Osipov <mi...@apache.org>
AuthorDate: Wed Jan 3 16:43:34 2024 +0100
[SUREFIRE-2229] [REGRESSION] SUREFIRE-2224 causes stack trace to be omitted for errors and failures
This closes #709
---
.../maven/plugin/surefire/report/StatelessXmlReporter.java | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/StatelessXmlReporter.java b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/StatelessXmlReporter.java
index 043959dd5..7fb661eb5 100644
--- a/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/StatelessXmlReporter.java
+++ b/maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/report/StatelessXmlReporter.java
@@ -432,7 +432,7 @@ public class StatelessXmlReporter implements StatelessReportEventListener<Wrappe
boolean trimStackTrace,
OutputStream fw,
String testErrorType,
- boolean enableNestedOutErrElements)
+ boolean createNestedOutErrElements)
throws IOException {
ppw.startElement(testErrorType);
@@ -456,7 +456,11 @@ public class StatelessXmlReporter implements StatelessReportEventListener<Wrappe
}
}
- if (enableNestedOutErrElements) {
+ /* This structure is inconsistent due to bad legacy design choices for the XML schema.
+ * Ideally, all elements would be complex and strackTrace would have its own element.
+ * See SUREFIRE-2230 for details to how improve and unify the schema in the future.
+ */
+ if (createNestedOutErrElements) {
ppw.startElement("stackTrace");
if (stackTrace != null) {
extraEscapeElementValue(stackTrace, outputStreamWriter, ppw, fw);
@@ -464,6 +468,8 @@ public class StatelessXmlReporter implements StatelessReportEventListener<Wrappe
ppw.endElement();
createOutErrElements(outputStreamWriter, ppw, report, fw);
+ } else if (stackTrace != null) {
+ extraEscapeElementValue(stackTrace, outputStreamWriter, ppw, fw);
}
ppw.endElement(); // entry type