Tests for 0 coordinate in selection drawing and lengend generation.
authorJoseph Rossi <jrossi@optirtc.com>
Mon, 16 Nov 2015 19:55:44 +0000 (14:55 -0500)
committerJoseph Rossi <jrossi@optirtc.com>
Mon, 16 Nov 2015 20:49:29 +0000 (15:49 -0500)
This test demonstrates how updateSelection_ and generateLegendHTML
were ignoring points whose canvas-y value was 0. The next commit will
fix these breaking tests

auto_tests/tests/highlight_series_background.js [changed mode: 0644->0755]
auto_tests/tests/plugins_legend.js [changed mode: 0644->0755]

old mode 100644 (file)
new mode 100755 (executable)
index d2a09f0..abf0d6a
@@ -122,4 +122,29 @@ describe("highlight-series-background", function() {
       done();
     }, 500);
   });
+
+  it('testGetSelectionZeroCanvasY', function () {
+    var graph = document.getElementById("graph");
+    var calls = []
+    function callback(g, seriesName, canvasContext, cx, cy, color, pointSize, idx) {
+      calls.push(arguments);
+    };
+
+    var g = new Dygraph(document.getElementById("graph"),
+                        "X,Y\n" +
+                        "1,5\n" +
+                        "1,10\n" +
+                        "1,12\n",
+                        {
+                          drawHighlightPointCallback: callback,
+                          axes: {
+                            y: {
+                              valueRange: [0, 10]
+                            }
+                          }
+                        });
+    g.setSelection(1);
+    var args = calls[0];
+    assert.equal(args[4], 0);
+  });
 });
old mode 100644 (file)
new mode 100755 (executable)
index e0384c8..5f67591
@@ -113,4 +113,30 @@ it('should use a legendFormatter', function() {
   assert.equal(calls[2].series[0].y, undefined);
 });
 
+it('should include point drawn where canvas-y is 0', function () {
+    var graph = document.getElementById("graph");
+    var calls = []
+    function callback(data) {
+      calls.push(data);
+    };
+
+    var g = new Dygraph(document.getElementById("graph"),
+                        "X,Y\n" +
+                        "1,5\n" +
+                        "1,10\n" +
+                        "1,12\n",
+                        {
+                          legendFormatter: callback,
+                          axes: {
+                            y: {
+                              valueRange: [0, 10]
+                            }
+                          }
+                        });
+  g.setSelection(1);
+  var data = calls[1];
+  assert.isTrue(data.series[0].isVisible);
+  assert.notEqual(data.series[0].yHTML, '');
+});
+
 });