RFR: 8350013: Add a test for JDK-8150442 [v3]
Alexander Matveev
almatvee at openjdk.org
Fri Feb 28 22:45:52 UTC 2025
On Fri, 28 Feb 2025 22:36:32 GMT, Alexey Semenyuk <asemenyuk at openjdk.org> wrote:
>> Add a test to verify jpackage is using a custom MSI condition blocking package installation depending on the version of Windows where the package installer runs. Support for this MSI condition was added in [JDK-8150442](https://bugs.openjdk.org/browse/JDK-8150442).
>>
>> The test adds an unconditionally failing OS-version MSI condition to the resource directory. MSI installer using this condition should always fail. The exit code of the failed installation would be 1603. Extended error information can be dug in the MSI log file. To make the test work, the following changes to jpackage test lib have been made:
>> - Support non-0 exit code from MSI install handler. Support for non-0 exit codes was added to install handlers of all other types too. Added `PackageTest.setExpectedInstallExitCode(int)` method to configure the expected exit code of a package installation;
>> - Support using msi log files when MSI and EXE packages get installed, unpacked, or uninstalled. Added `PackageTest.createMsiLog(boolean)` to enable or disable creation of msi log files in a PackageTest instance and `Optional<Path> JPackageCommand.winMsiLogFile()` to access the current log file from the callbacks registered with the PackageTest instance.
>>
>> Added tests for PackageTest class (PackageTestTest).
>>
>> Additionally, improved the code in WindowsHelper detecting paths to Start Menu, Desktop, and other common paths. Previously, it relied on reading these paths from the registry. On some machines, required registry keys are not available. The code now will call .NET `Environment.GetFolderPath()` function through powershell if a registry key is missing.
>
> Alexey Semenyuk has updated the pull request incrementally with one additional commit since the last revision:
>
> Trailing whitespace cleanup
Marked as reviewed by almatvee (Reviewer).
-------------
PR Review: https://git.openjdk.org/jdk/pull/23825#pullrequestreview-2651906002
More information about the core-libs-dev
mailing list