X-Git-Url: https://adrianiainlam.tk/git/?a=blobdiff_plain;f=auto_tests%2Ftests%2Fdata_api.js;h=631990980493ad02ccb031f359c57e6b6ebbb9f3;hb=f6e73ea983b61b50a6152c98a9945725eb45edb2;hp=90c6ca5e267b82e79b8c68d6c5bb6774121450f1;hpb=319d0361d2e512ed8049dfedffd79254e491201c;p=dygraphs.git diff --git a/auto_tests/tests/data_api.js b/auto_tests/tests/data_api.js index 90c6ca5..6319909 100644 --- a/auto_tests/tests/data_api.js +++ b/auto_tests/tests/data_api.js @@ -3,59 +3,59 @@ * * @author danvdk@gmail.com (Dan Vanderkam) */ -var dataApiTestCase = TestCase("data-api"); +import Dygraph from '../../src/dygraph'; +import * as utils from '../../src/dygraph-utils'; +describe("data-api", function() { + +cleanupAfterEach(); var opts, graphDiv; -dataApiTestCase.prototype.setUp = function() { - document.body.innerHTML = "
"; +beforeEach(function() { opts = { width: 480, height: 320 }; graphDiv = document.getElementById("graph"); -}; - -dataApiTestCase.prototype.tearDown = function() { -}; +}); -dataApiTestCase.prototype.testBasicAccessors = function() { +it('testBasicAccessors', function() { var g = new Dygraph(graphDiv, temperature_data, opts); - assertEquals(365, g.numRows()); - assertEquals(3, g.numColumns()); + assert.equal(365, g.numRows()); + assert.equal(3, g.numColumns()); // 2007-01-01,62,39 - assertEquals(62, g.getValue(0, 1)); - assertEquals(39, g.getValue(0, 2)); + assert.equal(62, g.getValue(0, 1)); + assert.equal(39, g.getValue(0, 2)); // 2007-12-31,57,42 - assertEquals(57, g.getValue(364, 1)); - assertEquals(42, g.getValue(364, 2)); -}; + assert.equal(57, g.getValue(364, 1)); + assert.equal(42, g.getValue(364, 2)); +}); -dataApiTestCase.prototype.testAccessorsCustomBars = function() { +it('testAccessorsCustomBars', function() { var g = new Dygraph(graphDiv, data_temp_high_low, { customBars: true }); - assertEquals(1070, g.numRows()); - assertEquals(3, g.numColumns()); + assert.equal(1070, g.numRows()); + assert.equal(3, g.numColumns()); // 2007-01-01,46;51;56,43;45;48 - assertEquals([46, 51, 56], g.getValue(0, 1)); - assertEquals([43, 45, 48], g.getValue(0, 2)); + assert.deepEqual([46, 51, 56], g.getValue(0, 1)); + assert.deepEqual([43, 45, 48], g.getValue(0, 2)); // 2009-12-05,37;42;47 (i.e. missing second column) - assertEquals([37, 42, 47], g.getValue(1069, 1)); - assertEquals([null, null, null], g.getValue(1069, 2)); -}; + assert.deepEqual([37, 42, 47], g.getValue(1069, 1)); + assert.deepEqual([null, null, null], g.getValue(1069, 2)); +}); // Regression test for #554. -dataApiTestCase.prototype.testGetRowForX = function() { +it('testGetRowForX', function() { var g = new Dygraph(graphDiv, [ "x,y", "1,2", @@ -65,22 +65,22 @@ dataApiTestCase.prototype.testGetRowForX = function() { "9,10" ].join('\n'), opts); - assertEquals(null, g.getRowForX(0)); - assertEquals(0, g.getRowForX(1)); - assertEquals(null, g.getRowForX(2)); - assertEquals(1, g.getRowForX(3)); - assertEquals(null, g.getRowForX(4)); - assertEquals(2, g.getRowForX(5)); - assertEquals(null, g.getRowForX(6)); - assertEquals(3, g.getRowForX(7)); - assertEquals(null, g.getRowForX(8)); - assertEquals(4, g.getRowForX(9)); - assertEquals(null, g.getRowForX(10)); -}; + assert.equal(null, g.getRowForX(0)); + assert.equal(0, g.getRowForX(1)); + assert.equal(null, g.getRowForX(2)); + assert.equal(1, g.getRowForX(3)); + assert.equal(null, g.getRowForX(4)); + assert.equal(2, g.getRowForX(5)); + assert.equal(null, g.getRowForX(6)); + assert.equal(3, g.getRowForX(7)); + assert.equal(null, g.getRowForX(8)); + assert.equal(4, g.getRowForX(9)); + assert.equal(null, g.getRowForX(10)); +}); // If there are rows with identical x-values, getRowForX promises that it will // return the first one. -dataApiTestCase.prototype.testGetRowForXDuplicates = function() { +it('testGetRowForXDuplicates', function() { var g = new Dygraph(graphDiv, [ "x,y", "1,2", // 0 @@ -95,7 +95,26 @@ dataApiTestCase.prototype.testGetRowForXDuplicates = function() { "9,10" ].join('\n'), opts); - assertEquals(0, g.getRowForX(1)); - assertEquals(null, g.getRowForX(2)); - assertEquals(5, g.getRowForX(9)); -}; + assert.equal(0, g.getRowForX(1)); + assert.equal(null, g.getRowForX(2)); + assert.equal(5, g.getRowForX(9)); +}); + +// indexFromSeriesName should return a value even if the series is invisible +// In 1.1.1, if you request the last set and it's invisible, the method returns undefined. +it('testIndexFromSetNameOnInvisibleSet', function() { + + var localOpts = utils.clone(opts); + localOpts.visibility = [true, false]; + + var g = new Dygraph(graphDiv, [ + "x,y1,y2", + "1,1,1", + "2,2,2", + "3,3,3" + ].join('\n'), localOpts); + + assert.equal(2, g.indexFromSetName("y2")); +}); + +});