diff --git a/documentation/src/docs/asciidoc/release-notes/release-notes-5.9.1.adoc b/documentation/src/docs/asciidoc/release-notes/release-notes-5.9.1.adoc index 3c68595cc318..1fa43bc7dfcd 100644 --- a/documentation/src/docs/asciidoc/release-notes/release-notes-5.9.1.adoc +++ b/documentation/src/docs/asciidoc/release-notes/release-notes-5.9.1.adoc @@ -16,6 +16,8 @@ on GitHub. ==== Bug Fixes * `ReflectionSupport.findMethods(...)` now returns a distinct set of methods. +* Execution in GraalVM native images no longer requires `--initialize-at-build-time` for + `OpenTestReportGeneratingListener`. ==== Deprecations and Breaking Changes diff --git a/junit-platform-reporting/src/main/java/org/junit/platform/reporting/open/xml/OpenTestReportGeneratingListener.java b/junit-platform-reporting/src/main/java/org/junit/platform/reporting/open/xml/OpenTestReportGeneratingListener.java index 73967cb55582..b826a63a5296 100644 --- a/junit-platform-reporting/src/main/java/org/junit/platform/reporting/open/xml/OpenTestReportGeneratingListener.java +++ b/junit-platform-reporting/src/main/java/org/junit/platform/reporting/open/xml/OpenTestReportGeneratingListener.java @@ -90,12 +90,6 @@ public class OpenTestReportGeneratingListener implements TestExecutionListener { static final String ENABLED_PROPERTY_NAME = "junit.platform.reporting.open.xml.enabled"; static final String OUTPUT_DIR_PROPERTY_NAME = "junit.platform.reporting.output.dir"; - private static final NamespaceRegistry NAMESPACE_REGISTRY = NamespaceRegistry.builder(Namespace.REPORTING_CORE) // - .add("e", Namespace.REPORTING_EVENTS) // - .add("java", Namespace.REPORTING_JAVA) // - .add("junit", JUnitFactory.NAMESPACE, "https://junit.org/junit5/schemas/open-test-reporting/junit-1.9.xsd") // - .build(); - private final AtomicInteger idCounter = new AtomicInteger(); private final Map inProgressIds = new ConcurrentHashMap<>(); private DocumentWriter eventsFileWriter = DocumentWriter.noop(); @@ -107,10 +101,16 @@ public OpenTestReportGeneratingListener() { public void testPlanExecutionStarted(TestPlan testPlan) { ConfigurationParameters config = testPlan.getConfigurationParameters(); if (isEnabled(config)) { + NamespaceRegistry namespaceRegistry = NamespaceRegistry.builder(Namespace.REPORTING_CORE) // + .add("e", Namespace.REPORTING_EVENTS) // + .add("java", Namespace.REPORTING_JAVA) // + .add("junit", JUnitFactory.NAMESPACE, + "https://junit.org/junit5/schemas/open-test-reporting/junit-1.9.xsd") // + .build(); Path eventsXml = OutputDir.create(config.get(OUTPUT_DIR_PROPERTY_NAME)) // .createFile("junit-platform-events", "xml"); try { - eventsFileWriter = Events.createDocumentWriter(NAMESPACE_REGISTRY, eventsXml); + eventsFileWriter = Events.createDocumentWriter(namespaceRegistry, eventsXml); reportInfrastructure(); } catch (Exception e) {