X-Git-Url: https://adrianiainlam.tk/git/?a=blobdiff_plain;f=auto_tests%2Ftests%2Fdygraph-options-tests.js;h=ded9ee3ebdb25c51bb65fb77d048fdcb31268ceb;hb=f160e4ac8166f74d1f0e5604061564fbca5ba5a5;hp=094ebd6d5a69df46dea9710e50aa0a11e072b316;hpb=b3cb0794c0513e0a4c9b31d11fbe8b65778fc02e;p=dygraphs.git diff --git a/auto_tests/tests/dygraph-options-tests.js b/auto_tests/tests/dygraph-options-tests.js index 094ebd6..ded9ee3 100644 --- a/auto_tests/tests/dygraph-options-tests.js +++ b/auto_tests/tests/dygraph-options-tests.js @@ -1,19 +1,25 @@ /** * @fileoverview Test cases for DygraphOptions. */ -var DygraphOptionsTestCase = TestCase("dygraph-options-tests"); -DygraphOptionsTestCase.prototype.setUp = function() { - document.body.innerHTML = "
"; -}; +import Dygraph from '../../src/dygraph'; +import DygraphOptions from '../../src/dygraph-options'; +import OPTIONS_REFERENCE from '../../src/dygraph-options-reference'; -DygraphOptionsTestCase.prototype.tearDown = function() { -}; +describe("dygraph-options-tests", function() { + +cleanupAfterEach(); + +var graph; + +beforeEach(function() { + graph = document.getElementById("graph"); +}); /* * Pathalogical test to ensure getSeriesNames works */ -DygraphOptionsTestCase.prototype.testGetSeriesNames = function() { +it('testGetSeriesNames', function() { var opts = { width: 480, height: 320 @@ -22,20 +28,19 @@ DygraphOptionsTestCase.prototype.testGetSeriesNames = function() { "0,-1,0,0"; // Kind of annoying that you need a DOM to test the object. - var graph = document.getElementById("graph"); var g = new Dygraph(graph, data, opts); // We don't need to get at g's attributes_ object just // to test DygraphOptions. var o = new DygraphOptions(g); - assertEquals(["Y", "Y2", "Y3"], o.seriesNames()); -}; + assert.deepEqual(["Y", "Y2", "Y3"], o.seriesNames()); +}); /* * Ensures that even if logscale is set globally, it doesn't impact the * x axis. */ -DygraphOptionsTestCase.prototype.testGetLogscaleForX = function() { +it('testGetLogscaleForX', function() { var opts = { width: 480, height: 320 @@ -44,16 +49,15 @@ DygraphOptionsTestCase.prototype.testGetLogscaleForX = function() { "1,-1,2,3"; // Kind of annoying that you need a DOM to test the object. - var graph = document.getElementById("graph"); var g = new Dygraph(graph, data, opts); - assertFalse(!!g.getOptionForAxis('logscale', 'x')); - assertFalse(!!g.getOptionForAxis('logscale', 'y')); + assert.isFalse(!!g.getOptionForAxis('logscale', 'x')); + assert.isFalse(!!g.getOptionForAxis('logscale', 'y')); g.updateOptions({ logscale : true }); - assertFalse(!!g.getOptionForAxis('logscale', 'x')); - assertTrue(!!g.getOptionForAxis('logscale', 'y')); -}; + assert.isFalse(!!g.getOptionForAxis('logscale', 'x')); + assert.isTrue(!!g.getOptionForAxis('logscale', 'y')); +}); // Helper to gather all warnings emitted by Dygraph constructor. // Removes everything after the first open parenthesis in each warning. @@ -64,29 +68,31 @@ var getWarnings = function(div, data, opts) { console.warn = function(message) { warnings.push(message.replace(/ \(.*/, '')); }; - new Dygraph(graph, data, opts); + try { + new Dygraph(graph, data, opts); + } catch (e) { + } console.warn = oldWarn; return warnings; }; -DygraphOptionsTestCase.prototype.testLogWarningForNonexistentOption = function() { - if (typeof(Dygraph.OPTIONS_REFERENCE) === 'undefined') { +it('testLogWarningForNonexistentOption', function() { + if (!OPTIONS_REFERENCE) { return; // this test won't pass in non-debug mode. } - var graph = document.getElementById("graph"); var data = "X,Y,Y2,Y3\n" + "1,-1,2,3"; var expectWarning = function(opts, badOptionName) { DygraphOptions.resetWarnings_(); var warnings = getWarnings(graph, data, opts); - assertEquals(['Unknown option ' + badOptionName], warnings); + assert.deepEqual(['Unknown option ' + badOptionName], warnings); }; var expectNoWarning = function(opts) { DygraphOptions.resetWarnings_(); var warnings = getWarnings(graph, data, opts); - assertEquals([], warnings); + assert.deepEqual([], warnings); }; expectNoWarning({}); @@ -97,19 +103,20 @@ DygraphOptionsTestCase.prototype.testLogWarningForNonexistentOption = function() expectWarning({highlightSeriesOpts: {anotherNonExistentOption: true}}, 'anotherNonExistentOption'); expectNoWarning({highlightSeriesOpts: {strokeWidth: 20}}); expectNoWarning({strokeWidth: 20}); -}; +}); -DygraphOptionsTestCase.prototype.testOnlyLogsEachWarningOnce = function() { - if (typeof(Dygraph.OPTIONS_REFERENCE) === 'undefined') { +it('testOnlyLogsEachWarningOnce', function() { + if (!OPTIONS_REFERENCE) { return; // this test won't pass in non-debug mode. } - var graph = document.getElementById("graph"); var data = "X,Y,Y2,Y3\n" + "1,-1,2,3"; var warnings1 = getWarnings(graph, data, {nonExistent: true}); var warnings2 = getWarnings(graph, data, {nonExistent: true}); - assertEquals(['Unknown option nonExistent'], warnings1); - assertEquals([], warnings2); -}; + assert.deepEqual(['Unknown option nonExistent'], warnings1); + assert.deepEqual([], warnings2); +}); + +});