On Sat, 23 Nov 2024 10:32:28 GMT, Eirik Bjørsnøs <eir...@openjdk.org> wrote:

>> Can I get a review of this test-only cleanup/speedup PR which modernizes the 
>> test `RemoveJar.java`.
>> 
>> This test attempts a variety of class loading scenarios on a URLClassLoader 
>> and verifies that when the loader is closed, it has released its JAR file 
>> (such that it may be deleted on Windows).
>> 
>> Changes in this PR include:
>> 
>> * Converting the test to JUnit 5
>> * Making it `@Parameterized` instead of using multiple jtreg runs
>> * Producing the sample class file using the ClassFile API instead calling 
>> out to `javac` via ToolProvider
>> * Packaging the JAR using `JarOutputStream` instead of calling out to the 
>> `jar` tool.
>> * Adding some code and method comments to support understading of what this 
>> test does and why 
>> 
>> A nice benefit of this change is that it speeds up the runtime from ~15 
>> seconds to ~1 second on my laptop.
>> 
>> Unfortunately, this test relies on Windows to fail, that is something I plan 
>> to look into separately.
>> 
>> Verification: GHA tests pending. (No local Windows dev environment)
>
> Eirik Bjørsnøs has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Sanity check that the JarFileFactory caches are unpopulated at start of a 
> test run

test/jdk/java/net/URLClassLoader/RemoveJar.java line 107:

> 105:         Path jar = createJar();
> 106:         String path = jar.toAbsolutePath().toString();
> 107:         URL url = new URL("jar", "", "file:" +path  + "!/" + subPath);

Suggestion:

        URL url = new URL("jar", "", "file:" + path + "!/" + subPath);

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

PR Review Comment: https://git.openjdk.org/jdk/pull/22319#discussion_r1892210108

Reply via email to