assertj / assertj/assertj-swing
IllegalThreadStateException in EDT
- Vorherrschende Sprache
- Java
- Sterne
- 121
- Forks
- 52
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Hi all,
(I opened this issues by mistake in assertj-core, too. Sorry for that).
the documentation says that the code using AssertJ should run in the EDT. I am running a JUnit test that actually runs in the EDT.
However, when invoking code like this on a JTreeFixture:
jtf.showPopUpMenu(2)
I am getting an exception
java.lang.IllegalThreadStateException: Cannot call method from the event dispatcher thread
at org.assertj.swing.core.BasicRobot.waitForIdle(BasicRobot.java:825)
at org.assertj.swing.core.BasicRobot.waitForIdle(BasicRobot.java:794)
at org.assertj.swing.core.BasicRobot.moveMouse(BasicRobot.java:538)
at org.assertj.swing.core.BasicRobot.moveMouse(BasicRobot.java:528)
at org.assertj.swing.core.BasicRobot.moveMouse(BasicRobot.java:522)
at org.assertj.swing.core.BasicRobot.focus(BasicRobot.java:292)
at org.assertj.swing.core.BasicRobot.focusAndWaitForFocusGain(BasicRobot.java:270)
at org.assertj.swing.core.BasicRobot.showPopupMenu(BasicRobot.java:889)
at org.assertj.swing.driver.JTreeDriver.showPopupMenu(JTreeDriver.java:676)
at org.assertj.swing.fixture.JTreeFixture.showPopupMenuAt(JTreeFixture.java:579)
Wait for Idle explicitely wants not to be run in the EDT. I tried running the code in a thread of its own but did not succeed. Any suggestions on how to tackle this problem would be most welcome.
Beitragsleitfaden
Rechercherichtung
Beginne damit, JTreeFixture.showPopUpMenu(2) aus dem gemeldeten JUnit-Testkontext zu reproduzieren, und lies dann in BasicRobot.java den Bereich um waitForIdle sowie den JTreeDriver.java/JTreeFixture.java-Popup-Menüpfad im Stacktrace. Als erledigt gilt die Aufgabe, wenn das Popup-Menü-Szenario beim Ausführen des Tests auf dem EDT keine IllegalThreadStateException mehr auslöst und das Verhalten durch einen Test verifiziert ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- desktop, testing
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 30/100