On Tue, 31 Jan 2023 14:39:34 GMT, Prasanta Sadhukhan <psadhuk...@openjdk.org> wrote:
>> test/jdk/javax/swing/SwingWorker/TestDoneBeforeDoInBackground.java line 87: >> >>> 85: throw new RuntimeException("doInBackground is finished " + >>> 86: " but State is not DONE"); >>> 87: } >> >> I think you should wait for cleanup to finish and ensure that >> `doInBackground` is set to `true` and the state is `DONE`. >> >> If you don't wait until cleanup wait completes, the test does not test >> anything because jtreg will shutdown the JVM as soon main thread exists, >> which will happen before `done` gets called. > > Dont think so...If `doInBackground `is true it should mean cleanup is done as > `doInBackground ` is false by default That's the thing. If `cancel` doesn't wait until `doInBackground` completes, which *it shouldn't do*, then `cancel` returns quickly. Therefore the main thread reaches this condition before the “cleanup” in `doInBackground` finishes, as such the test should always fail. Do I miss anything? ------------- PR: https://git.openjdk.org/jdk/pull/11940