On 23/03/2020 07:44, Baesken, Matthias wrote:
Hello, we noticed the following issue in 
tools/jpackage/share/RuntimePackageTest.java .
See also https://bugs.openjdk.java.net/browse/JDK-8241415  .

When running a whole jdk jtreg test suite we see failures of the the 
tools/jpackage/share/RuntimePackageTest.java test.
Failures are like this :

TRACE: Missing 3 files:
TRACE: .systemPrefs
TRACE: .systemPrefs/.system.lock
TRACE: .systemPrefs/.systemRootModFile
TRACE: Done
ERROR: Failed: Check there are no missing files in installed image

Looking into the jdk under test, we notice the mentioned files were created 
inside the jdk under test
(by previous jtreg tests, this is indicated by the time stamps of those files).
my estimation is that some other tests using FileSystemPreferences might 
created those files.
The RuntimePackageTest.java test however does not expect those files in the jdk 
image under test.

Any comments ? Should we check for these files at just delete them at the 
beginning of   tools/jpackage/share/RuntimePackageTest.java  (or skip the test 
in case the files exist) ?
Otherwise we might  tolerate those 3 files .

Tests should never modify the "JDK under test". It should be possible to test a JDK that is on a read-only file system for example. There are a small number of tests that need  edit configuration files and they are supposed to replicate the JDK to another location so it doesn't interfere with other tests running at the same time or later. For the prefs API, there are system properties (java.util.prefs.systemRoot and java.util.prefs.userRoot) to configure where the system and user prefs are stored. There were several issues in the past with userRoot and I think all those tests were fixed to run the tests with the system property set. We might have to do a similar exercise for the systemRoot.

-Alan

Reply via email to