Add per-series tests that validate new-style options and how they relate to old-style...
authorRobert Konigsberg <konigsberg@google.com>
Thu, 22 Nov 2012 19:03:30 +0000 (14:03 -0500)
committerRobert Konigsberg <konigsberg@google.com>
Thu, 22 Nov 2012 19:03:30 +0000 (14:03 -0500)
auto_tests/tests/per_series.js

index 63fa8c2..a198a95 100644 (file)
@@ -53,11 +53,51 @@ perSeriesTestCase.prototype.testOldStyleSeries = function() {
     pointSize : 5,
     Y: { pointSize : 4 },
   };
+  var graph = document.getElementById("graph");
+  var data = "X,Y,Z\n1,0,0\n";
+  g = new Dygraph(graph, data, opts);
+
+  assertEquals(5, g.getOption("pointSize"));
+  assertEquals(4, g.getOption("pointSize", "Y"));
+  assertEquals(5, g.getOption("pointSize", "Z"));
+};
+
+perSeriesTestCase.prototype.testNewStyleSeries = function() {
+  var opts = {
+    pointSize : 5,
+    series : {
+      Y: { pointSize : 4 }
+    },
+  };
+  var graph = document.getElementById("graph");
+  var data = "X,Y,Z\n1,0,0\n";
+  g = new Dygraph(graph, data, opts);
+
+  assertEquals(5, g.getOption("pointSize"));
+  assertEquals(4, g.getOption("pointSize", "Y"));
+  assertEquals(5, g.getOption("pointSize", "Z"));
+};
+
+perSeriesTestCase.prototype.testNewStyleSeriesTrumpsOldStyle = function() {
+  var opts = {
+    pointSize : 5,
+    Z : { pointSize : 6 },
+    series : {
+      Y: { pointSize : 4 }
+    },
+  };
+  var graph = document.getElementById("graph");
   var data = "X,Y,Z\n1,0,0\n";
-  g = new Dygraph("Graph", data, opts);
+  g = new Dygraph(graph, data, opts);
 
   assertEquals(5, g.getOption("pointSize"));
   assertEquals(4, g.getOption("pointSize", "Y"));
   assertEquals(5, g.getOption("pointSize", "Z"));
+
+  // Erase the series object, and Z will become visible again.
+  g.updateOptions({ series : undefined });
+  assertEquals(5, g.getOption("pointSize"));
+  assertEquals(6, g.getOption("pointSize", "Z"));
+  assertEquals(5, g.getOption("pointSize", "Y"));
 };