1c4314555b54884babcaea28d8d630ea919b60d2
[dygraphs.git] / fill_step_plot.js
1 /**
2 * @fileoverview Test if you give null values to dygraph with stepPlot
3 * and fillGraph options enabled
4 *
5 * @author benoitboivin.pro@gmail.com (Benoit Boivin)
6 */
7 import Dygraph from '../../src/dygraph';
8 import * as utils from '../../src/dygraph-utils';
9 import CanvasAssertions from './CanvasAssertions';
10 import Proxy from './Proxy';
11
12 describe("fill-step-plot", function() {
13
14 cleanupAfterEach();
15
16 var origFunc = utils.getContext;
17
18 beforeEach(function() {
19 utils.getContext = function(canvas) {
20 return new Proxy(origFunc(canvas));
21 };
22 });
23
24 afterEach(function() {
25 utils.getContext = origFunc;
26 });
27
28
29 it('testFillStepPlotNullValues', function() {
30 var opts = {
31 labels: ["x","y"],
32 width: 480,
33 height: 320,
34 fillGraph: true,
35 stepPlot: true
36 };
37 var data = [
38 [1,3],
39 [2,0],
40 [3,8],
41 [4,null],
42 [5,9],
43 [6,8],
44 [7,6],
45 [8,3]
46 ];
47 var graph = document.getElementById("graph");
48 var g = new Dygraph(graph, data, opts);
49
50 var htx = g.hidden_ctx_;
51 var x1 = data[3][0];
52 var y1 = data[2][1];
53 var x2 = data[3][0];
54 var y2 = 0;
55 var xy1 = g.toDomCoords(x1, y1);
56 var xy2 = g.toDomCoords(x2, y2);
57
58 // Check if a line is drawn between the previous y and the bottom of the chart
59 CanvasAssertions.assertLineDrawn(htx, xy1, xy2, {});
60 });
61
62 });