modules/graphics/src/test/java/test/com/sun/javafx/sg/prism/NGRegionTest.java
Print this page
rev 9250 : 8134762: Refactor Javafx graphics module tests for clear separation of tests
Reviewed-by:
*** 21,32 ****
* 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 com.sun.javafx.sg.prism;
import javafx.geometry.Insets;
import javafx.scene.layout.Background;
import javafx.scene.layout.BackgroundFill;
import javafx.scene.layout.Region;
import javafx.scene.paint.Color;
--- 21,34 ----
* 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 test.com.sun.javafx.sg.prism;
+ import com.sun.javafx.sg.prism.NGNodeShim;
+ import com.sun.javafx.sg.prism.NGRegion;
import javafx.geometry.Insets;
import javafx.scene.layout.Background;
import javafx.scene.layout.BackgroundFill;
import javafx.scene.layout.Region;
import javafx.scene.paint.Color;
*** 42,62 ****
*/
public class NGRegionTest {
@Test public void setOpaqueInsetsInvalidatesOpaqueRegion() {
NGRegion r = new NGRegion();
r.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(r.isOpaqueRegionInvalid()); // sanity check
r.setOpaqueInsets(0, 0, 0, 0);
! assertTrue(r.isOpaqueRegionInvalid());
}
@Test public void updateShapeInvalidatesOpaqueRegion() {
NGRegion r = new NGRegion();
r.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(r.isOpaqueRegionInvalid()); // sanity check
r.updateShape(null, true, false, false); // Actual values don't matter
! assertTrue(r.isOpaqueRegionInvalid());
}
// RT-13820: We change the shape internally and call this same method, so it
// needs to invalidate the opaque region.
@Test public void updateShapeToSameInstanceInvalidatesOpaqueRegion() {
--- 44,64 ----
*/
public class NGRegionTest {
@Test public void setOpaqueInsetsInvalidatesOpaqueRegion() {
NGRegion r = new NGRegion();
r.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(NGNodeShim.isOpaqueRegionInvalid(r)); // sanity check
r.setOpaqueInsets(0, 0, 0, 0);
! assertTrue(NGNodeShim.isOpaqueRegionInvalid(r));
}
@Test public void updateShapeInvalidatesOpaqueRegion() {
NGRegion r = new NGRegion();
r.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(NGNodeShim.isOpaqueRegionInvalid(r)); // sanity check
r.updateShape(null, true, false, false); // Actual values don't matter
! assertTrue(NGNodeShim.isOpaqueRegionInvalid(r));
}
// RT-13820: We change the shape internally and call this same method, so it
// needs to invalidate the opaque region.
@Test public void updateShapeToSameInstanceInvalidatesOpaqueRegion() {
*** 68,89 ****
);
NGRegion r = new NGRegion();
r.updateShape(p, true, true, true);
r.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(r.isOpaqueRegionInvalid()); // sanity check
lineTo.setX(200);
r.updateShape(p, true, true, true);
! assertTrue(r.isOpaqueRegionInvalid());
}
@Test public void setSizeInvalidatesOpaqueRegion() {
NGRegion r = new NGRegion();
r.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(r.isOpaqueRegionInvalid()); // sanity check
r.setSize(100, 100);
! assertTrue(r.isOpaqueRegionInvalid());
}
// Note: These tests are using a Region and doing a sync because it was found that
// doing the check directly on the updateBackground method itself gave incorrect
// results, but doing so via Region's sync worked correctly (because every time a
--- 70,91 ----
);
NGRegion r = new NGRegion();
r.updateShape(p, true, true, true);
r.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(NGNodeShim.isOpaqueRegionInvalid(r)); // sanity check
lineTo.setX(200);
r.updateShape(p, true, true, true);
! assertTrue(NGNodeShim.isOpaqueRegionInvalid(r));
}
@Test public void setSizeInvalidatesOpaqueRegion() {
NGRegion r = new NGRegion();
r.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(NGNodeShim.isOpaqueRegionInvalid(r)); // sanity check
r.setSize(100, 100);
! assertTrue(NGNodeShim.isOpaqueRegionInvalid(r));
}
// Note: These tests are using a Region and doing a sync because it was found that
// doing the check directly on the updateBackground method itself gave incorrect
// results, but doing so via Region's sync worked correctly (because every time a
*** 94,140 ****
Region r = new Region();
NGRegion peer = r.impl_getPeer();
r.setBackground(new Background(new BackgroundFill(Color.RED, null, null)));
r.impl_updatePeer();
peer.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(peer.isOpaqueRegionInvalid()); // sanity check
r.setBackground(new Background(new BackgroundFill(Color.TRANSPARENT, null, null)));
r.impl_updatePeer();
! assertTrue(peer.isOpaqueRegionInvalid());
}
@Test public void updateBackgroundWithDifferentSizeBackgroundInvalidatesOpaqueInsets() {
Region r = new Region();
NGRegion peer = r.impl_getPeer();
r.setBackground(new Background(new BackgroundFill(Color.RED, null, null)));
r.impl_updatePeer();
peer.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(peer.isOpaqueRegionInvalid()); // sanity check
r.setBackground(new Background(new BackgroundFill(Color.TRANSPARENT, null, new Insets(10))));
r.impl_updatePeer();
! assertTrue(peer.isOpaqueRegionInvalid());
}
@Test public void updateBackgroundWithDifferentSizeBackgroundInvalidatesOpaqueInsets2() {
Region r = new Region();
NGRegion peer = r.impl_getPeer();
r.setBackground(new Background(new BackgroundFill(Color.RED, null, null)));
r.impl_updatePeer();
peer.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(peer.isOpaqueRegionInvalid()); // sanity check
r.setBackground(new Background(new BackgroundFill(Color.RED, null, new Insets(10))));
r.impl_updatePeer();
! assertTrue(peer.isOpaqueRegionInvalid());
}
@Test public void updateBackgroundWithDifferentSizeBackgroundInvalidatesOpaqueInsets3() {
Region r = new Region();
NGRegion peer = r.impl_getPeer();
r.setBackground(new Background(new BackgroundFill(Color.RED, null, null)));
r.impl_updatePeer();
peer.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(peer.isOpaqueRegionInvalid()); // sanity check
r.setBackground(new Background(new BackgroundFill(Color.RED, null, new Insets(-10))));
r.impl_updatePeer();
! assertTrue(peer.isOpaqueRegionInvalid());
}
}
--- 96,142 ----
Region r = new Region();
NGRegion peer = r.impl_getPeer();
r.setBackground(new Background(new BackgroundFill(Color.RED, null, null)));
r.impl_updatePeer();
peer.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(NGNodeShim.isOpaqueRegionInvalid(peer)); // sanity check
r.setBackground(new Background(new BackgroundFill(Color.TRANSPARENT, null, null)));
r.impl_updatePeer();
! assertTrue(NGNodeShim.isOpaqueRegionInvalid(peer));
}
@Test public void updateBackgroundWithDifferentSizeBackgroundInvalidatesOpaqueInsets() {
Region r = new Region();
NGRegion peer = r.impl_getPeer();
r.setBackground(new Background(new BackgroundFill(Color.RED, null, null)));
r.impl_updatePeer();
peer.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(NGNodeShim.isOpaqueRegionInvalid(peer)); // sanity check
r.setBackground(new Background(new BackgroundFill(Color.TRANSPARENT, null, new Insets(10))));
r.impl_updatePeer();
! assertTrue(NGNodeShim.isOpaqueRegionInvalid(peer));
}
@Test public void updateBackgroundWithDifferentSizeBackgroundInvalidatesOpaqueInsets2() {
Region r = new Region();
NGRegion peer = r.impl_getPeer();
r.setBackground(new Background(new BackgroundFill(Color.RED, null, null)));
r.impl_updatePeer();
peer.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(NGNodeShim.isOpaqueRegionInvalid(peer)); // sanity check
r.setBackground(new Background(new BackgroundFill(Color.RED, null, new Insets(10))));
r.impl_updatePeer();
! assertTrue(NGNodeShim.isOpaqueRegionInvalid(peer));
}
@Test public void updateBackgroundWithDifferentSizeBackgroundInvalidatesOpaqueInsets3() {
Region r = new Region();
NGRegion peer = r.impl_getPeer();
r.setBackground(new Background(new BackgroundFill(Color.RED, null, null)));
r.impl_updatePeer();
peer.getOpaqueRegion(); // Forces to validate the opaque region
! assertFalse(NGNodeShim.isOpaqueRegionInvalid(peer)); // sanity check
r.setBackground(new Background(new BackgroundFill(Color.RED, null, new Insets(-10))));
r.impl_updatePeer();
! assertTrue(NGNodeShim.isOpaqueRegionInvalid(peer));
}
}