On Mon, 4 Aug 2025 04:54:49 GMT, Alexey Semenyuk <asemen...@openjdk.org> wrote:

>> - Enhance AddLShortcutTest to cover more combinations of shortcut 
>> configurations of the main and additional launchers.
>> - Test shortcuts in the predefined app image.
>> 
>> Additionally, rework launcher verification: move launcher icon and shortcut 
>> verification code from AdditionalLauncher into LauncherVerifier. This way 
>> launcher verification code is encapsulated in a single class that is applied 
>> to the main and additional launchers.
>> 
>> Rework launcher shortcut verification on Windows: Read shortcuts from MSI 
>> tables. This allows testing of expected and actual shortcuts without 
>> installing the MSI. This refactoring removed duplicated checks of file 
>> associations: It was performed for every additional launcher; now it is 
>> executed for the main launcher only. File association is bound to the main 
>> launcher, there is no point to verify it as many times as the number of 
>> launchers.
>> 
>> Implement launching launchers through shortcuts on Linux and Windows. The 
>> new `AddLShortcutTest.testInvokeShortcuts` test uses this new functionality.
>> 
>> Not directly related to the subject of the PR:
>>  - JPackageCommand: Added missing and removed redundant `verifyMutable()` 
>> calls. Converted "jpt-unpacked-folder" option into the member field. Added 
>> `JPackageCommand.createMutableCopy()` complementary to the existing 
>> `JPackageCommand.createImmutableCopy()`.
>>  - Refactor `TKit.waitForFileCreated()` to use classes from the `java.time` 
>> package.
>>  - Added `test/jdk/tools/jpackage/clean_test_output.sh` Bash script 
>> filtering test logs to minimize noise in diffs.
>> 
>> Compared traces of IconTest, AddlauncherTest, and AddLShortcutTest tests 
>> with and without this patch to verify no unexpected changes in the coverage.
>
> Alexey Semenyuk has updated the pull request incrementally with two 
> additional commits since the last revision:
> 
>  - Use TKit.waitForFileCreated() to await for test output file
>  - Use java.time.Duration and java.time.Instant in TKit.waitForFileCreated(). 
> Make it public.

Looks good with minor comment.

test/jdk/tools/jpackage/helpers/jdk/jpackage/test/TKit.java line 635:

> 633:                     return;
> 634:                 }
> 635:                 assertUnexpected(String.format("Timeout expired", 
> remainderTimeout));

`"Timeout expired"` missing format?

-------------

PR Review: https://git.openjdk.org/jdk/pull/26584#pullrequestreview-3090170423
PR Review Comment: https://git.openjdk.org/jdk/pull/26584#discussion_r2255665599

Reply via email to