On Sat, 12 Apr 2025 00:23:07 GMT, Marius Hanl <mh...@openjdk.org> wrote:

>> These are the remaining bits and pieces in order to completely remove the 
>> JUnit Vintage Engine, and therefore JUnit 4 from JavaFX.
>> After that, we should either document, that JUnit5 is used (just as 
>> information) or close 
>> [JDK-8296284](https://bugs.openjdk.org/browse/JDK-8296284) (Since you can 
>> not use JUnit4 anymore).
>> 
>> This also removes the `org.hamcrest` dependency, which is actually only used 
>> in one test where it can easily be replaced by a `Predicate` (instead of 
>> `Matcher`). I'm not convinced that we should keep that dependency for just 
>> one test.
>> 
>> ~Note: I could not get the `:swt` tests to compile/test, in order to run the 
>> tests. 
>> I need some guidance here how to instruct `Gradle` to compile this module 
>> (and if I need anything else? like swt?).~
>> 
>> ~Also, this probably needs an extra ticket in the JBS?~
>
> Marius Hanl has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Fix SWT Tests

a problem found in a doctored macOS test, I wonder if we'll see the same issue 
on windows/linux?

Tried to enable swt tests on macOS (build.gradle lines 3085, 3096), got three 
tests failed:


[FXCanvasScaledTest](https://github.com/openjdk/jfx/pull/classes/test.javafx.embed.swt.FXCanvasScaledTest.html).
 
[initializationError](https://github.com/openjdk/jfx/pull/classes/test.javafx.embed.swt.FXCanvasScaledTest.html#initializationError)
[FXCanvasTest](https://github.com/openjdk/jfx/pull/classes/test.javafx.embed.swt.FXCanvasTest.html).
 
[initializationError](https://github.com/openjdk/jfx/pull/classes/test.javafx.embed.swt.FXCanvasTest.html#initializationError)
[SWTCursorsTest](https://github.com/openjdk/jfx/pull/classes/test.javafx.embed.swt.SWTCursorsTest.html).
 
[initializationError](https://github.com/openjdk/jfx/pull/classes/test.javafx.embed.swt.SWTCursorsTest.html#initializationError)


all in `SWTTest.beforeAll()`: 


org.eclipse.swt.SWTException: Invalid thread access
        at app//org.eclipse.swt.SWT.error(SWT.java:4918)
        at app//org.eclipse.swt.SWT.error(SWT.java:4833)
        at app//org.eclipse.swt.SWT.error(SWT.java:4804)
        at app//org.eclipse.swt.widgets.Display.error(Display.java:1209)
        at app//org.eclipse.swt.widgets.Display.createDisplay(Display.java:960)
        at app//org.eclipse.swt.widgets.Display.create(Display.java:944)
        at app//org.eclipse.swt.graphics.Device.<init>(Device.java:132)
        at app//org.eclipse.swt.widgets.Display.<init>(Display.java:798)
        at app//org.eclipse.swt.widgets.Display.<init>(Display.java:789)
        at app//org.eclipse.swt.widgets.Display.getDefault(Display.java:1543)
        at app//test.javafx.embed.swt.SWTTest.beforeAll(SWTTest.java:43)
        at java.base@23.0.1/java.lang.reflect.Method.invoke(Method.java:580)
        at java.base@23.0.1/java.util.ArrayList.forEach(ArrayList.java:1597)


so probably need to wrap SWTTest:43 in `runOnSwtThread()`.

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

Changes requested by angorya (Reviewer).

PR Review: https://git.openjdk.org/jfx/pull/1774#pullrequestreview-2765840684
PR Comment: https://git.openjdk.org/jfx/pull/1774#issuecomment-2803159054

Reply via email to