RFR: 8358697: java/awt/font/TextLayout/MyanmarTextTest.java gives false positive result when preconditions not met
Phil Race
prr at openjdk.org
Wed Jun 18 18:34:27 UTC 2025
On Wed, 18 Jun 2025 16:20:14 GMT, Manukumar V S <mvs at openjdk.org> wrote:
> Issue:
> MyanmarTextTest.java produces a false positive result when some of the test preconditions are not met. It checks whether certain fonts are present in the system, for example, 'Padauk' on Linux. If the required font is missing, the test simply returns early, and the test ends up passing, which is incorrect. Ideally, it should throw a jtreg.SkippedException when the necessary preconditions are not satisfied.
>
> Another scenario is that the test passes on headless machines even though it creates GUI components. Ideally, when GUI components are created in code running on a headless machine, a HeadlessException should be thrown. However, since MyanmarTextTest.java exits before reaching the point where the GUI is created (due to unmet preconditions), it incorrectly reports a pass. This behavior may lead to a misinterpretation of the test as being headless, which it is not.
>
> Fix:
> Need to throw jtreg.SkippedException in cases where some pre-conditions for running the test are not met.
>
> Testing:
> Tested using mach5 in all available platforms and got full PASS.
test/jdk/java/awt/font/TextLayout/MyanmarTextTest.java line 56:
> 54:
> 55: private static final String FONT_WINDOWS = "Myanmar Text";
> 56: private static final String FONT_LINUX = "Padauk";
A more useful update might be to update the test to look for more fonts on Linux.
I don't see Padauk on my Ubuntu 24.04 system. I do have various Noto ones - eg "Noto Sans Myanmar"
So on Linux I would look for BOTH fonts before giving up.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/25879#discussion_r2155245925
More information about the client-libs-dev
mailing list