< prev index next >

modules/controls/src/test/java/javafx/scene/chart/AreaChartTest.java

Print this page
rev 8907 : RT-46086: StackedAreaChart doesn't fade out removed series

@@ -23,27 +23,19 @@
  * questions.
  */
 
 package javafx.scene.chart;
 
-
 import com.sun.javafx.scene.control.infrastructure.ControlTestUtils;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.io.PrintStream;
-import org.junit.Test;
-import static org.junit.Assert.assertEquals;
-import javafx.collections.*;
-
-
-import javafx.scene.Node;
+import javafx.collections.FXCollections;
+import javafx.collections.ObservableList;
 import javafx.scene.Group;
-import javafx.scene.shape.*;
-import static org.junit.Assert.assertTrue;
-
+import javafx.scene.Node;
+import javafx.scene.shape.Path;
+import static org.junit.Assert.assertEquals;
 import org.junit.Ignore;
-
+import org.junit.Test;
 
 public class AreaChartTest extends XYChartTestBase {
     AreaChart<Number,Number> ac;
     final XYChart.Series<Number, Number> series1 = new XYChart.Series<Number, Number>();
     boolean useCategoryAxis = false;

@@ -99,16 +91,51 @@
     @Test
     public void testSeriesRemove() {
         startApp();
         ac.getData().addAll(series1);
         pulse();
-        if (!ac.getData().isEmpty()) {
+        // 5 symbols and 1 area group
+        assertEquals(6, ac.getPlotChildren().size());
             ac.getData().remove(0);
             pulse();
-            StringBuffer sb = getSeriesLineFromPlot();
-            assertEquals(sb.toString(), "");
+        assertEquals(0, ac.getPlotChildren().size());
+    }
+
+    @Test
+    public void testSeriesRemoveWithoutSymbols() {
+        startApp();
+        ac.setCreateSymbols(false);
+        ac.getData().addAll(series1);
+        pulse();
+        // 1 area group
+        assertEquals(1, ac.getPlotChildren().size());
+        ac.getData().remove(0);
+        pulse();
+        assertEquals(0, ac.getPlotChildren().size());
+    }
+
+    @Test
+    public void testSeriesRemoveWithoutSymbolsAnimated_rt_22124() {
+        startApp();
+        ac.setCreateSymbols(false);
+        ac.getData().addAll(series1);
+        pulse();
+        // 1 area group
+        assertEquals(1, ac.getPlotChildren().size());
+
+        ac.setAnimated(true);
+        Thread.UncaughtExceptionHandler exceptionHandler = ControlTestUtils.setHandler();
+        try {
+            ac.getData().remove(0);
+        } finally {
+            ControlTestUtils.resetHandler(exceptionHandler);
         }
+        toolkit.setAnimationTime(200);
+        assertEquals(1, ac.getPlotChildren().size());
+        assertEquals(0.5, ac.getPlotChildren().get(0).getOpacity(), 0.0);
+        toolkit.setAnimationTime(400);
+        assertEquals(0, ac.getPlotChildren().size());
     }
     
     @Test @Ignore
     public void testDataItemRemove() {
         startApp();
< prev index next >