X-Git-Url: https://adrianiainlam.tk/git/?a=blobdiff_plain;f=auto_tests%2Ftests%2Fmultiple_axes.js;h=68c62a54e0a5e434e4b3130cd6dccf2bfb2916e5;hb=ce31caf22475e3e1fd6d9fea192d61ff4fcd7fac;hp=a995ecaa4709edb93791a9fb9b64086e296a0e3a;hpb=464b5f504e75c5d2b98eff12b3b8ad520a1729cb;p=dygraphs.git diff --git a/auto_tests/tests/multiple_axes.js b/auto_tests/tests/multiple_axes.js index a995eca..68c62a5 100644 --- a/auto_tests/tests/multiple_axes.js +++ b/auto_tests/tests/multiple_axes.js @@ -4,13 +4,15 @@ * @author danvdk@gmail.com (Dan Vanderkam) */ -var MultipleAxesTestCase = TestCase("multiple-axes-tests"); +import Dygraph from '../../src/dygraph'; +import * as utils from '../../src/dygraph-utils'; +import Util from './Util'; -MultipleAxesTestCase.prototype.setUp = function() { - document.body.innerHTML = "
"; -}; +describe("multiple-axes-tests", function() { + +cleanupAfterEach(); -MultipleAxesTestCase.getData = function() { +var getData = function() { var data = []; for (var i = 1; i <= 100; i++) { var m = "01", d = i; @@ -28,8 +30,8 @@ MultipleAxesTestCase.getData = function() { return data; }; -MultipleAxesTestCase.prototype.testBasicMultipleAxes = function() { - var data = MultipleAxesTestCase.getData(); +it('testBasicMultipleAxes', function() { + var data = getData(); var g = new Dygraph( document.getElementById("graph"), @@ -55,11 +57,11 @@ MultipleAxesTestCase.prototype.testBasicMultipleAxes = function() { } ); - assertEquals(["0", "10", "20", "30", "40", "50", "60", "70", "80", "90", "100"], Util.getYLabels("1")); - assertEquals(["900K", "1.01M", "1.12M", "1.23M", "1.34M", "1.45M", "1.55M", "1.66M", "1.77M", "1.88M", "1.99M"], Util.getYLabels("2")); -}; + assert.deepEqual(["0","20","40","60","80","100"], Util.getYLabels("1")); + assert.deepEqual(["900K","1.12M","1.34M","1.55M","1.77M","1.99M"], Util.getYLabels("2")); +}); -MultipleAxesTestCase.prototype.testTwoAxisVisibility = function() { +it('testTwoAxisVisibility', function() { var data = []; data.push([0,0,0]); data.push([1,2,2000]); @@ -83,25 +85,25 @@ MultipleAxesTestCase.prototype.testTwoAxisVisibility = function() { } ); - assertTrue(document.getElementsByClassName("dygraph-axis-label-y").length > 0); - assertTrue(document.getElementsByClassName("dygraph-axis-label-y2").length > 0); + assert.isTrue(document.getElementsByClassName("dygraph-axis-label-y").length > 0); + assert.isTrue(document.getElementsByClassName("dygraph-axis-label-y2").length > 0); g.setVisibility(0, false); - assertTrue(document.getElementsByClassName("dygraph-axis-label-y").length > 0); - assertTrue(document.getElementsByClassName("dygraph-axis-label-y2").length > 0); + assert.isTrue(document.getElementsByClassName("dygraph-axis-label-y").length > 0); + assert.isTrue(document.getElementsByClassName("dygraph-axis-label-y2").length > 0); g.setVisibility(0, true); g.setVisibility(1, false); - assertTrue(document.getElementsByClassName("dygraph-axis-label-y").length > 0); - assertTrue(document.getElementsByClassName("dygraph-axis-label-y2").length > 0); -}; + assert.isTrue(document.getElementsByClassName("dygraph-axis-label-y").length > 0); + assert.isTrue(document.getElementsByClassName("dygraph-axis-label-y2").length > 0); +}); // verifies that all four chart labels (title, x-, y-, y2-axis label) can be // used simultaneously. -MultipleAxesTestCase.prototype.testMultiChartLabels = function() { - var data = MultipleAxesTestCase.getData(); +it('testMultiChartLabels', function() { + var data = getData(); var el = document.getElementById("graph"); el.style.border = '1px solid black'; @@ -130,22 +132,22 @@ MultipleAxesTestCase.prototype.testMultiChartLabels = function() { } ); - assertEquals(["Chart title", "x-axis", "y-axis", "y2-axis"], + assert.deepEqual(["Chart title", "x-axis", "y-axis", "y2-axis"], Util.getClassTexts("dygraph-label")); - assertEquals(["Chart title"], Util.getClassTexts("dygraph-title")); - assertEquals(["x-axis"], Util.getClassTexts("dygraph-xlabel")); - assertEquals(["y-axis"], Util.getClassTexts("dygraph-ylabel")); - assertEquals(["y2-axis"], Util.getClassTexts("dygraph-y2label")); + assert.deepEqual(["Chart title"], Util.getClassTexts("dygraph-title")); + assert.deepEqual(["x-axis"], Util.getClassTexts("dygraph-xlabel")); + assert.deepEqual(["y-axis"], Util.getClassTexts("dygraph-ylabel")); + assert.deepEqual(["y2-axis"], Util.getClassTexts("dygraph-y2label")); // TODO(danvk): check relative positioning here: title on top, y left of y2. -}; +}); // Check that a chart w/o a secondary y-axis will not get a y2label, even if one // is specified. -MultipleAxesTestCase.prototype.testNoY2LabelWithoutSecondaryAxis = function() { +it('testNoY2LabelWithoutSecondaryAxis', function() { var g = new Dygraph( document.getElementById("graph"), - MultipleAxesTestCase.getData(), + getData(), { labels: [ 'Date', 'Y1', 'Y2', 'Y3', 'Y4' ], width: 640, @@ -157,18 +159,18 @@ MultipleAxesTestCase.prototype.testNoY2LabelWithoutSecondaryAxis = function() { } ); - assertEquals(["Chart title", "x-axis", "y-axis"], + assert.deepEqual(["Chart title", "x-axis", "y-axis"], Util.getClassTexts("dygraph-label")); - assertEquals(["Chart title"], Util.getClassTexts("dygraph-title")); - assertEquals(["x-axis"], Util.getClassTexts("dygraph-xlabel")); - assertEquals(["y-axis"], Util.getClassTexts("dygraph-ylabel")); - assertEquals([], Util.getClassTexts("dygraph-y2label")); -}; + assert.deepEqual(["Chart title"], Util.getClassTexts("dygraph-title")); + assert.deepEqual(["x-axis"], Util.getClassTexts("dygraph-xlabel")); + assert.deepEqual(["y-axis"], Util.getClassTexts("dygraph-ylabel")); + assert.deepEqual([], Util.getClassTexts("dygraph-y2label")); +}); -MultipleAxesTestCase.prototype.testValueRangePerAxisOptions = function() { - var data = MultipleAxesTestCase.getData(); +it('testValueRangePerAxisOptions', function() { + var data = getData(); - g = new Dygraph( + var g = new Dygraph( document.getElementById("graph"), data, { @@ -183,6 +185,7 @@ MultipleAxesTestCase.prototype.testValueRangePerAxisOptions = function() { }, axes: { y: { + axisLabelWidth: 60, valueRange: [40, 70] }, y2: { @@ -192,11 +195,10 @@ MultipleAxesTestCase.prototype.testValueRangePerAxisOptions = function() { }, ylabel: 'Primary y-axis', y2label: 'Secondary y-axis', - yAxisLabelWidth: 60 } ); - assertEquals(["40", "45", "50", "55", "60", "65"], Util.getYLabels("1")); - assertEquals(["900K","1.1M","1.3M","1.5M","1.7M","1.9M"], Util.getYLabels("2")); + assert.deepEqual(["40", "45", "50", "55", "60", "65"], Util.getYLabels("1")); + assert.deepEqual(["900K","1.1M","1.3M","1.5M","1.7M","1.9M"], Util.getYLabels("2")); g.updateOptions( { @@ -210,25 +212,25 @@ MultipleAxesTestCase.prototype.testValueRangePerAxisOptions = function() { } } ); - assertEquals(["40", "45", "50", "55", "60", "65", "70", "75"], Util.getYLabels("1")); - assertEquals(["1M", "1.02M", "1.05M", "1.08M", "1.1M", "1.13M", "1.15M", "1.18M"], Util.getYLabels("2")); -}; + assert.deepEqual(["40", "45", "50", "55", "60", "65", "70", "75"], Util.getYLabels("1")); + assert.deepEqual(["1M", "1.02M", "1.05M", "1.08M", "1.1M", "1.13M", "1.15M", "1.18M"], Util.getYLabels("2")); +}); -MultipleAxesTestCase.prototype.testDrawPointCallback = function() { - var data = MultipleAxesTestCase.getData(); +it('testDrawPointCallback', function() { + var data = getData(); var results = { y : {}, y2 : {}}; var firstCallback = function(g, seriesName, ctx, canvasx, canvasy, color, radius) { results.y[seriesName] = 1; - Dygraph.Circles.DEFAULT(g, seriesName, ctx, canvasx, canvasy, color, radius); + utils.Circles.DEFAULT(g, seriesName, ctx, canvasx, canvasy, color, radius); }; var secondCallback = function(g, seriesName, ctx, canvasx, canvasy, color, radius) { results.y2[seriesName] = 1; - Dygraph.Circles.DEFAULT(g, seriesName, ctx, canvasx, canvasy, color, radius); + utils.Circles.DEFAULT(g, seriesName, ctx, canvasx, canvasy, color, radius); }; - g = new Dygraph( + var g = new Dygraph( document.getElementById("graph"), data, { @@ -252,19 +254,19 @@ MultipleAxesTestCase.prototype.testDrawPointCallback = function() { } ); - assertEquals(1, results.y["Y1"]); - assertEquals(1, results.y["Y2"]); - assertEquals(1, results.y2["Y3"]); - assertEquals(1, results.y2["Y4"]); -}; + assert.equal(1, results.y["Y1"]); + assert.equal(1, results.y["Y2"]); + assert.equal(1, results.y2["Y3"]); + assert.equal(1, results.y2["Y4"]); +}); // Test for http://code.google.com/p/dygraphs/issues/detail?id=436 -MultipleAxesTestCase.prototype.testRemovingSecondAxis = function() { - var data = MultipleAxesTestCase.getData(); +it('testRemovingSecondAxis', function() { + var data = getData(); var results = { y : {}, y2 : {}}; - g = new Dygraph( + var g = new Dygraph( document.getElementById("graph"), data, { @@ -280,4 +282,6 @@ MultipleAxesTestCase.prototype.testRemovingSecondAxis = function() { ); g.updateOptions({ series : { Y4 : { axis : 'y' } } }); -}; +}); + +});