--- old/modules/graphics/src/test/java/com/sun/javafx/scene/traversal/TraversalTest.java 2014-01-23 15:59:30.000000000 +0200 +++ new/modules/graphics/src/test/java/com/sun/javafx/scene/traversal/TraversalTest.java 2014-01-23 15:59:30.000000000 +0200 @@ -25,27 +25,28 @@ package com.sun.javafx.scene.traversal; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertSame; -import static org.junit.Assert.assertTrue; - -import java.util.Arrays; -import java.util.Collection; - +import com.sun.javafx.FXAfter; +import com.sun.javafx.FXBefore; +import com.sun.javafx.FXTestThread; +import com.sun.javafx.FXThread; +import com.sun.javafx.FXUnit; import javafx.geometry.Bounds; import javafx.scene.Group; import javafx.scene.Node; import javafx.scene.Scene; import javafx.scene.shape.Rectangle; import javafx.stage.Stage; - -import org.junit.After; -import org.junit.Before; +import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import org.junit.runners.Parameterized.Parameters; +import java.util.Arrays; +import java.util.Collection; + +import static org.junit.Assert.*; + /** * Tests for TraversalEngine with the default ContainerTabOrder algorithm, * tests if using the WeightedClosestCorner algorithm have been @@ -53,6 +54,10 @@ */ @RunWith(Parameterized.class) public final class TraversalTest { + + @Rule + public final FXUnit fx = new FXUnit(); + private final int fromNumber; private final Direction direction; private final int toNumber; @@ -148,7 +153,7 @@ this.toNumberTransformed = toNumberTransformed; } - @Before + @FXBefore public void setUp() { stage = new Stage(); scene = new Scene(new Group(), 500, 500); @@ -162,7 +167,7 @@ stage.requestFocus(); } - @After + @FXAfter public void tearDown() { stage = null; scene = null; @@ -171,10 +176,15 @@ } @Test + @FXTestThread(FXThread.MAIN) public void untransformedTraversalTest() { - keypadNodes[fromNumber - 1].requestFocus(); - traversalEngine.trav(keypadNodes[fromNumber - 1], direction); - assertTrue(keypadNodes[toNumber - 1].isFocused()); + fx.invokeAndWait(() -> { + keypadNodes[fromNumber - 1].requestFocus(); + traversalEngine.trav(keypadNodes[fromNumber - 1], direction); + }); + fx.waitForNextPulse(); + fx.invokeAndWait( + () -> assertTrue(keypadNodes[toNumber - 1].isFocused())); } @Test