From 0fb8d84b128d2b41b1e0c629595a8776045dfb47 Mon Sep 17 00:00:00 2001 From: David Beaumont Date: Thu, 14 Aug 2025 10:53:07 +0200 Subject: [PATCH 1/2] Change how test is skipped to avoid false negative reporting. --- .../jdk/jdk/internal/jimage/ImageReaderTest.java | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/test/jdk/jdk/internal/jimage/ImageReaderTest.java b/test/jdk/jdk/internal/jimage/ImageReaderTest.java index 6bdf0cf479aab..e0bdcceb34d55 100644 --- a/test/jdk/jdk/internal/jimage/ImageReaderTest.java +++ b/test/jdk/jdk/internal/jimage/ImageReaderTest.java @@ -25,10 +25,13 @@ import jdk.internal.jimage.ImageReader.Node; import jdk.test.lib.compiler.InMemoryJavaCompiler; import jdk.test.lib.util.JarBuilder; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Assumptions; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestInstance; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.ValueSource; +import org.opentest4j.TestAbortedException; import org.opentest4j.TestSkippedException; import tests.Helper; import tests.JImageGenerator; @@ -214,15 +217,18 @@ public String toString() { /// Returns the helper for building JAR and jimage files. private static Helper getHelper() { + Helper helper; try { - Helper helper = Helper.newHelper(); - if (helper == null) { - throw new TestSkippedException("Cannot create test helper (exploded image?)"); - } - return helper; + helper = Helper.newHelper(); } catch (IOException e) { throw new RuntimeException(e); } + // Gracefully skip if there's no jimage to work with (e.g. if + // '--generate-linkable-runtime' was used to build the runtime). + // This may be reporting as a skipped test, or a pass, depending + // on how the test was run. + Assumptions.assumeTrue(helper != null, "Cannot create test helper (no jimage file)"); + return helper; } /// Loads and performs actions on classes stored in a given `ImageReader`. From 17a6b176dde1f458b624b967d19e5622147b9fe9 Mon Sep 17 00:00:00 2001 From: David Beaumont Date: Thu, 14 Aug 2025 10:56:07 +0200 Subject: [PATCH 2/2] Remove unused imports. --- test/jdk/jdk/internal/jimage/ImageReaderTest.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/test/jdk/jdk/internal/jimage/ImageReaderTest.java b/test/jdk/jdk/internal/jimage/ImageReaderTest.java index e0bdcceb34d55..62281151126de 100644 --- a/test/jdk/jdk/internal/jimage/ImageReaderTest.java +++ b/test/jdk/jdk/internal/jimage/ImageReaderTest.java @@ -25,14 +25,11 @@ import jdk.internal.jimage.ImageReader.Node; import jdk.test.lib.compiler.InMemoryJavaCompiler; import jdk.test.lib.util.JarBuilder; -import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assumptions; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestInstance; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.ValueSource; -import org.opentest4j.TestAbortedException; -import org.opentest4j.TestSkippedException; import tests.Helper; import tests.JImageGenerator;