RFR: 8346434: Add test for non-automatic service binding [v2]
Alexey Semenyuk
asemenyuk at openjdk.org
Wed Feb 5 20:12:12 UTC 2025
On Wed, 5 Feb 2025 19:44:54 GMT, Alexey Semenyuk <asemenyuk at openjdk.org> wrote:
>> test/jdk/tools/jpackage/share/JLinkOptionsTest.java line 175:
>>
>>> 173: .setExecutable(cmd.appLauncherPath().toAbsolutePath())
>>> 174: .addArguments("--print-modules")
>>> 175: .executeAndRepeatUntilExitCode(0, attempts,
>>
>> Is there any reason why we need to repeat execution?
>
> Yes, launchers in tests are executed multiple times because they may sporadically crash due to an unidentified issue with JVM termination.
>
> Usually, launchers are not explicitly executed in the tests. They are executed as a part of `JPackageCommand.executeAndAssertHelloAppImageCreated()` call, which attempts to run them multiple times if necessary.
>
> In this test, launcher is explicitly executed and the setup to run it multiple times if needed is explicit.
>
> This setup copies a setup to run launchers from [HelloApp.AppOutputVerifier.execute()](https://github.com/openjdk/jdk/blob/379c3f99665829c5d8c373d1fb324dc7ef4d84cf/test/jdk/tools/jpackage/helpers/jdk/jpackage/test/HelloApp.java#L441)
I reworked this part using `HelloApp.assertApp()` function. It wraps restart details.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/23047#discussion_r1943600965
More information about the core-libs-dev
mailing list