modules/graphics/src/test/java/test/javafx/scene/Parent_structure_sync_Test.java

Print this page
rev 9250 : 8134762: Refactor Javafx graphics module tests for clear separation of tests
Reviewed-by:

@@ -21,16 +21,20 @@
  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  * or visit www.oracle.com if you need additional information or have any
  * questions.
  */
 
-package javafx.scene;
+package test.javafx.scene;
 
-import com.sun.javafx.pgstub.StubToolkit;
+import test.com.sun.javafx.pgstub.StubToolkit;
 import com.sun.javafx.sg.prism.NGGroup;
 import com.sun.javafx.tk.Toolkit;
 import java.util.List;
+import javafx.scene.Group;
+import javafx.scene.Parent;
+import javafx.scene.ParentShim;
+import javafx.scene.Scene;
 import javafx.scene.shape.Rectangle;
 import javafx.stage.Stage;
 import org.junit.Before;
 import org.junit.Test;
 

@@ -69,96 +73,96 @@
     @Test public void emptyParentShouldHaveEmptyPGGroup() {
         assertTrue(peer.getChildren().isEmpty());
     }
     
     @Test public void childAddedToEmptyParentShouldBeInPGGroup() {
-        parent.getChildren().add(r1);
+        ParentShim.getChildren(parent).add(r1);
         sync();
         assertEquals(1, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
     }
     
     @Test public void childrenAddedToEmptyParentShouldAllBeInPGGroup() {
-        parent.getChildren().addAll(r1, r2, r3);
+        ParentShim.getChildren(parent).addAll(r1, r2, r3);
         sync();
         assertEquals(3, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
     }
     
     @Test public void addingAChildToTheBack() {
-        parent.getChildren().addAll(r2, r3, r4);
+        ParentShim.getChildren(parent).addAll(r2, r3, r4);
         sync();
-        parent.getChildren().add(0, r1);
+        ParentShim.getChildren(parent).add(0, r1);
         sync();
         assertEquals(4, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
         assertSame(r4.impl_getPeer(), peer.getChildren().get(3));
     }
 
     @Test public void addingAChildToTheFront() {
-        parent.getChildren().addAll(r1, r2, r3);
+        ParentShim.getChildren(parent).addAll(r1, r2, r3);
         sync();
-        parent.getChildren().add(r4);
+        ParentShim.getChildren(parent).add(r4);
         sync();
         assertEquals(4, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
         assertSame(r4.impl_getPeer(), peer.getChildren().get(3));
     }
     
     @Test public void addingAChildToTheCenter() {
-        parent.getChildren().addAll(r1, r2, r4);
+        ParentShim.getChildren(parent).addAll(r1, r2, r4);
         sync();
-        parent.getChildren().add(2, r3);
+        ParentShim.getChildren(parent).add(2, r3);
         sync();
         assertEquals(4, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
         assertSame(r4.impl_getPeer(), peer.getChildren().get(3));
     }
     
     @Test public void removingAChildFromTheFront() {
-        parent.getChildren().addAll(r1, r2, r3, r4);
+        ParentShim.getChildren(parent).addAll(r1, r2, r3, r4);
         sync();
-        parent.getChildren().remove(3);
+        ParentShim.getChildren(parent).remove(3);
         sync();
         assertEquals(3, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
     }
     
     @Test public void removingAChildFromTheBack() {
-        parent.getChildren().addAll(r4, r1, r2, r3);
+        ParentShim.getChildren(parent).addAll(r4, r1, r2, r3);
         sync();
-        parent.getChildren().remove(0);
+        ParentShim.getChildren(parent).remove(0);
         sync();
         assertEquals(3, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
     }
     
     @Test public void removingAChildFromTheCenter() {
-        parent.getChildren().addAll(r1, r2, r4, r3);
+        ParentShim.getChildren(parent).addAll(r1, r2, r4, r3);
         sync();
-        parent.getChildren().remove(2);
+        ParentShim.getChildren(parent).remove(2);
         sync();
         assertEquals(3, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
     }
     
     @Test public void movingAChildFromTheBackToTheFront() {
-        parent.getChildren().addAll(r4, r1, r2, r3);
+        ParentShim.getChildren(parent).addAll(r4, r1, r2, r3);
         sync();
         r4.toFront();
         sync();
         assertEquals(4, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));

@@ -166,49 +170,49 @@
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
         assertSame(r4.impl_getPeer(), peer.getChildren().get(3));
     }
     
     @Test public void movingAChildFromTheBackToTheFrontAndAddingAChild() {
-        parent.getChildren().addAll(r4, r1, r2, r3);
+        ParentShim.getChildren(parent).addAll(r4, r1, r2, r3);
         sync();
         r4.toFront();
-        parent.getChildren().add(r5);
+        ParentShim.getChildren(parent).add(r5);
         sync();
         assertEquals(5, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
         assertSame(r4.impl_getPeer(), peer.getChildren().get(3));
         assertSame(r5.impl_getPeer(), peer.getChildren().get(4));
     }
     
     @Test public void movingAChildFromTheBackToTheFrontAndRemovingAChild() {
-        parent.getChildren().addAll(r3, r1, r4, r2);
+        ParentShim.getChildren(parent).addAll(r3, r1, r4, r2);
         sync();
         r3.toFront();
-        parent.getChildren().remove(1);
+        ParentShim.getChildren(parent).remove(1);
         sync();
         assertEquals(3, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
     }
     
     @Test public void movingAChildFromTheBackToTheFrontAndThenRemovingTheChild() {
-        parent.getChildren().addAll(r4, r1, r2, r3);
+        ParentShim.getChildren(parent).addAll(r4, r1, r2, r3);
         sync();
         r4.toFront();
-        parent.getChildren().remove(3);
+        ParentShim.getChildren(parent).remove(3);
         sync();
         assertEquals(3, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
     }
 
     @Test public void movingAChildFromTheCenterToTheFront() {
-        parent.getChildren().addAll(r1, r2, r4, r3);
+        ParentShim.getChildren(parent).addAll(r1, r2, r4, r3);
         sync();
         r4.toFront();
         sync();
         assertEquals(4, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));

@@ -216,11 +220,11 @@
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
         assertSame(r4.impl_getPeer(), peer.getChildren().get(3));
     }
     
     @Test public void movingAChildFromTheCenterToTheBack() {
-        parent.getChildren().addAll(r2, r3, r1, r4);
+        ParentShim.getChildren(parent).addAll(r2, r3, r1, r4);
         sync();
         r1.toBack();
         sync();
         assertEquals(4, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));

@@ -228,49 +232,49 @@
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
         assertSame(r4.impl_getPeer(), peer.getChildren().get(3));
     }
     
     @Test public void movingAChildFromTheCenterToTheFrontAndAddingAChild() {
-        parent.getChildren().addAll(r1, r2, r4, r3);
+        ParentShim.getChildren(parent).addAll(r1, r2, r4, r3);
         sync();
         r4.toFront();
-        parent.getChildren().add(r5);
+        ParentShim.getChildren(parent).add(r5);
         sync();
         assertEquals(5, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
         assertSame(r4.impl_getPeer(), peer.getChildren().get(3));
         assertSame(r5.impl_getPeer(), peer.getChildren().get(4));
     }
     
     @Test public void movingAChildFromTheCenterToTheFrontAndRemovingAChild() {
-        parent.getChildren().addAll(r1, r2, r3, r4);
+        ParentShim.getChildren(parent).addAll(r1, r2, r3, r4);
         sync();
         r3.toFront();
-        parent.getChildren().remove(2);
+        ParentShim.getChildren(parent).remove(2);
         sync();
         assertEquals(3, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
     }
     
     @Test public void movingAChildFromTheCenterToTheFrontAndThenRemovingTheChild() {
-        parent.getChildren().addAll(r1, r2, r4, r3);
+        ParentShim.getChildren(parent).addAll(r1, r2, r4, r3);
         sync();
         r4.toFront();
-        parent.getChildren().remove(3);
+        ParentShim.getChildren(parent).remove(3);
         sync();
         assertEquals(3, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
     }
 
     @Test public void movingAChildFromTheFrontToTheBack() {
-        parent.getChildren().addAll(r2, r3, r4, r1);
+        ParentShim.getChildren(parent).addAll(r2, r3, r4, r1);
         sync();
         r1.toBack();
         sync();
         assertEquals(4, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));

@@ -278,60 +282,60 @@
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
         assertSame(r4.impl_getPeer(), peer.getChildren().get(3));
     }
     
     @Test public void movingAChildFromTheFrontToTheBackAndAddingAChild() {
-        parent.getChildren().addAll(r2, r3, r4, r1);
+        ParentShim.getChildren(parent).addAll(r2, r3, r4, r1);
         sync();
         r1.toBack();
-        parent.getChildren().add(r5);
+        ParentShim.getChildren(parent).add(r5);
         sync();
         assertEquals(5, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
         assertSame(r4.impl_getPeer(), peer.getChildren().get(3));
         assertSame(r5.impl_getPeer(), peer.getChildren().get(4));
     }
     
     @Test public void movingAChildFromTheFrontToTheBackAndRemovingAChild() {
-        parent.getChildren().addAll(r2, r3, r4, r1);
+        ParentShim.getChildren(parent).addAll(r2, r3, r4, r1);
         sync();
         r1.toBack();
-        parent.getChildren().remove(3);
+        ParentShim.getChildren(parent).remove(3);
         sync();
         assertEquals(3, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
     }
     
     @Test public void movingAChildFromTheFrontToTheBackAndThenRemovingTheChild() {
-        parent.getChildren().addAll(r1, r2, r3, r4);
+        ParentShim.getChildren(parent).addAll(r1, r2, r3, r4);
         sync();
         r4.toBack();
-        parent.getChildren().remove(0);
+        ParentShim.getChildren(parent).remove(0);
         sync();
         assertEquals(3, peer.getChildren().size());
         assertSame(r1.impl_getPeer(), peer.getChildren().get(0));
         assertSame(r2.impl_getPeer(), peer.getChildren().get(1));
         assertSame(r3.impl_getPeer(), peer.getChildren().get(2));
     }
 
     @Test
     public void validateParentsRemovedList() {
         Group parent2 = new Group();
-        parent2.getChildren().addAll(r1, r2);
-        parent.getChildren().add(parent2);
+        ParentShim.getChildren(parent2).addAll(r1, r2);
+        ParentShim.getChildren(parent).add(parent2);
         sync();
-        parent2.getChildren().remove(r1);
-        assertNotNull(parent2.test_getRemoved());
-        assertFalse(parent2.test_getRemoved().isEmpty());
+        ParentShim.getChildren(parent2).remove(r1);
+        assertNotNull(ParentShim.test_getRemoved(parent2));
+        assertFalse(ParentShim.test_getRemoved(parent2).isEmpty());
         sync();
-        assertTrue(parent2.test_getRemoved().isEmpty());
-        parent2.getChildren().remove(r2);
+        assertTrue(ParentShim.test_getRemoved(parent2).isEmpty());
+        ParentShim.getChildren(parent2).remove(r2);
         parent.setVisible(false);
-        assertFalse(parent2.test_getRemoved().isEmpty());
+        assertFalse(ParentShim.test_getRemoved(parent2).isEmpty());
         sync();
-        assertTrue(parent2.test_getRemoved().isEmpty());
+        assertTrue(ParentShim.test_getRemoved(parent2).isEmpty());
     }
 }