This is an automated email from the ASF dual-hosted git repository.

jungm pushed a commit to branch ee11
in repository https://gitbox.apache.org/repos/asf/tomee-tck.git

commit 99ae995409ac5dc04bfdc8c857f11dd06e248206
Author: Markus Jung <[email protected]>
AuthorDate: Sun Jul 19 21:13:15 2026 +0200

    Keep the JSON-P TCK's invalid XML characters out of the surefire reports
    
    The JSON-P TCK round-trips characters XML cannot represent (U+FFFF among
    them) and echoes them through java.util.logging at INFO. Surefire copies the
    captured streams into its report CDATA verbatim, leaving two report files
    unparseable: the suite passes 197/197, but Jenkins' junit step fails to read
    those files and reports each as a test failure, while the 54 tests they
    contain never appear in the totals.
    
    Redirect the test output to the .txt files the archive glob already collects
    and pin a JUL config that holds the console at WARNING, so the reports stay
    well-formed. All 25 report files now parse and the full 197 tests are
    visible.
---
 runner-standalone/jsonp/pom.xml                           | 11 +++++++++++
 .../jsonp/src/test/resources/logging.properties           | 15 +++++++++++++++
 2 files changed, 26 insertions(+)

diff --git a/runner-standalone/jsonp/pom.xml b/runner-standalone/jsonp/pom.xml
index 234e618..f216372 100644
--- a/runner-standalone/jsonp/pom.xml
+++ b/runner-standalone/jsonp/pom.xml
@@ -129,7 +129,18 @@
         <configuration>
           <skip>${tck.standalone.skip}</skip>
           <excludesFile>${tck.exclusions.file}</excludesFile>
+          <!-- The JSON-P TCK exercises characters XML cannot represent
+               (U+FFFF among them) and echoes them through java.util.logging
+               at INFO. Surefire copies the captured streams into the report
+               CDATA verbatim, so those records make the XML unparseable:
+               the tests all pass, but Jenkins' junit step cannot read the
+               file and reports it as a failure instead. Send the test output
+               to separate .txt files and raise the TCK logger above INFO so
+               the reports stay well-formed; warnings and failures still
+               surface, and the archive glob keeps the .txt files. -->
+          <redirectTestOutputToFile>true</redirectTestOutputToFile>
           <systemPropertyVariables>
+            
<java.util.logging.config.file>${project.build.testOutputDirectory}/logging.properties</java.util.logging.config.file>
             <jimage.dir>${project.build.directory}/jimage</jimage.dir>
             
<signature.sigTestClasspath>${project.build.directory}/api-classes${path.separator}${project.build.directory}/jimage/java.base${path.separator}${project.build.directory}/jimage/java.rmi${path.separator}${project.build.directory}/jimage/java.sql${path.separator}${project.build.directory}/jimage/java.naming</signature.sigTestClasspath>
           </systemPropertyVariables>
diff --git a/runner-standalone/jsonp/src/test/resources/logging.properties 
b/runner-standalone/jsonp/src/test/resources/logging.properties
new file mode 100644
index 0000000..a606993
--- /dev/null
+++ b/runner-standalone/jsonp/src/test/resources/logging.properties
@@ -0,0 +1,15 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0.
+
+# The JSON-P TCK logs the characters it round-trips at INFO, including ones
+# XML cannot represent (U+FFFF among them). Surefire copies the captured
+# streams into its report CDATA verbatim, so those records leave the XML
+# unparseable and Jenkins' junit step reports a passing suite as a failure.
+# Keep the console at WARNING so the reports stay well-formed; real problems
+# still print, and the full INFO trail remains in the redirected .txt output.
+handlers = java.util.logging.ConsoleHandler
+.level = INFO
+java.util.logging.ConsoleHandler.level = WARNING
+java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter

Reply via email to