X-Git-Url: https://adrianiainlam.tk/git/?a=blobdiff_plain;f=auto_tests%2Ftests%2Faxis_labels-deprecated.js;h=08a5db2cb85251eea93f65907dc095a9e4def094;hb=89fdcedbda6906d90e15d84285c4f6c0b8d96d28;hp=80939353983765c50d14cce028135c2dcf9a9052;hpb=ee60939f4e2238cbb64ebbe7acdc27195c149cfb;p=dygraphs.git diff --git a/auto_tests/tests/axis_labels-deprecated.js b/auto_tests/tests/axis_labels-deprecated.js index 8093935..08a5db2 100644 --- a/auto_tests/tests/axis_labels-deprecated.js +++ b/auto_tests/tests/axis_labels-deprecated.js @@ -4,16 +4,16 @@ * * @author dan@dygraphs.com (Dan Vanderkam) */ -var DeprecatedAxisLabelsTestCase = TestCase("axis-labels-deprecated"); +describe("axis-labels-deprecated", function() { -DeprecatedAxisLabelsTestCase.prototype.setUp = function() { +beforeEach(function() { document.body.innerHTML = "
"; -}; +}); -DeprecatedAxisLabelsTestCase.prototype.tearDown = function() { -}; +afterEach(function() { +}); -DeprecatedAxisLabelsTestCase.prototype.testDeprecatedDeprecatedXAxisTimeLabelFormatter = function() { +it('testDeprecatedDeprecatedXAxisTimeLabelFormatter', function() { var opts = { width: 480, height: 320 @@ -22,43 +22,53 @@ DeprecatedAxisLabelsTestCase.prototype.testDeprecatedDeprecatedXAxisTimeLabelFor var graph = document.getElementById("graph"); var g = new Dygraph(graph, data, opts); g.updateOptions({ - xAxisLabelFormatter: function (totalMinutes) { - var hours = Math.floor( totalMinutes / 60); - var minutes = Math.floor((totalMinutes - (hours * 60))); - var seconds = Math.round((totalMinutes * 60) - (hours * 3600) - (minutes * 60)); + axes : { + x : { + axisLabelFormatter: function (totalMinutes) { + var hours = Math.floor( totalMinutes / 60); + var minutes = Math.floor((totalMinutes - (hours * 60))); + var seconds = Math.round((totalMinutes * 60) - (hours * 3600) - (minutes * 60)); - if (hours < 10) hours = "0" + hours; - if (minutes < 10) minutes = "0" + minutes; - if (seconds < 10) seconds = "0" + seconds; + if (hours < 10) hours = "0" + hours; + if (minutes < 10) minutes = "0" + minutes; + if (seconds < 10) seconds = "0" + seconds; - return hours + ':' + minutes + ':' + seconds; + return hours + ':' + minutes + ':' + seconds; + } + } } }); - assertEquals(["00:05:00","00:05:12","00:05:24","00:05:36","00:05:48"], Util.getXLabels()); + assert.deepEqual(["00:05:00","00:05:12","00:05:24","00:05:36","00:05:48"], Util.getXLabels()); // The legend does not use the xAxisLabelFormatter: g.setSelection(1); - assertEquals('5.1: Y1: 1', Util.getLegend()); -}; + assert.equal('5.1: Y1: 1', Util.getLegend()); +}); -DeprecatedAxisLabelsTestCase.prototype.testDeprecatedAxisLabelFormatter = function () { +it('testDeprecatedAxisLabelFormatter', function() { var opts = { width: 480, height: 320, - xAxisLabelFormatter: function(x, granularity, opts, dg) { - assertEquals('number', typeof(x)); - assertEquals('number', typeof(granularity)); - assertEquals('function', typeof(opts)); - assertEquals('[Dygraph graph]', dg.toString()); - return 'x' + x; - }, - yAxisLabelFormatter: function(y, granularity, opts, dg) { - assertEquals('number', typeof(y)); - assertEquals('number', typeof(granularity)); - assertEquals('function', typeof(opts)); - assertEquals('[Dygraph graph]', dg.toString()); - return 'y' + y; + axes : { + x : { + axisLabelFormatter: function(x, granularity, opts, dg) { + assert.equal('number', typeof(x)); + assert.equal('number', typeof(granularity)); + assert.equal('function', typeof(opts)); + assert.equal('[Dygraph graph]', dg.toString()); + return 'x' + x; + } + }, + y : { + axisLabelFormatter: function(y, granularity, opts, dg) { + assert.equal('number', typeof(y)); + assert.equal('number', typeof(granularity)); + assert.equal('function', typeof(opts)); + assert.equal('[Dygraph graph]', dg.toString()); + return 'y' + y; + } + } }, labels: ['x', 'y'] }; @@ -69,30 +79,37 @@ DeprecatedAxisLabelsTestCase.prototype.testDeprecatedAxisLabelFormatter = functi var graph = document.getElementById("graph"); var g = new Dygraph(graph, data, opts); - assertEquals(['x0','x2','x4','x6','x8'], Util.getXLabels()); - assertEquals(['y0','y2','y4','y6','y8','y10','y12','y14','y16','y18'], Util.getYLabels()); + assert.deepEqual(['x0','x2','x4','x6','x8'], Util.getXLabels()); + assert.deepEqual(["y0","y5","y10","y15"], Util.getYLabels()); g.setSelection(2); - assertEquals("2: y: 4", Util.getLegend()); -}; + assert.equal("2: y: 4", Util.getLegend()); +}); -DeprecatedAxisLabelsTestCase.prototype.testDeprecatedDateAxisLabelFormatter = function () { +it('testDeprecatedDateAxisLabelFormatter', function() { var opts = { width: 480, height: 320, - xAxisLabelFormatter: function(x, granularity, opts, dg) { - assertTrue(Dygraph.isDateLike(x)); - assertEquals('number', typeof(granularity)); - assertEquals('function', typeof(opts)); - assertEquals('[Dygraph graph]', dg.toString()); - return 'x' + Util.formatDate(x); - }, - yAxisLabelFormatter: function(y, granularity, opts, dg) { - assertEquals('number', typeof(y)); - assertEquals('number', typeof(granularity)); - assertEquals('function', typeof(opts)); - assertEquals('[Dygraph graph]', dg.toString()); - return 'y' + y; + axes : { + x : { + axisLabelFormatter: function(x, granularity, opts, dg) { + assert.isTrue(Dygraph.isDateLike(x)); + assert.equal('number', typeof(granularity)); + assert.equal('function', typeof(opts)); + assert.equal('[Dygraph graph]', dg.toString()); + return 'x' + Util.formatDate(x); + }, + pixelsPerLabel: 60 + }, + y : { + axisLabelFormatter: function(y, granularity, opts, dg) { + assert.equal('number', typeof(y)); + assert.equal('number', typeof(granularity)); + assert.equal('function', typeof(opts)); + assert.equal('[Dygraph graph]', dg.toString()); + return 'y' + y; + } + } }, labels: ['x', 'y'] }; @@ -103,33 +120,39 @@ DeprecatedAxisLabelsTestCase.prototype.testDeprecatedDateAxisLabelFormatter = fu var graph = document.getElementById("graph"); var g = new Dygraph(graph, data, opts); - assertEquals(["x2011/01/01", "x2011/01/02", "x2011/01/03", "x2011/01/04", "x2011/01/05", "x2011/01/06", "x2011/01/07", "x2011/01/08"], Util.getXLabels()); - assertEquals(['y2','y4','y6','y8','y10','y12','y14','y16','y18'], Util.getYLabels()); + assert.deepEqual(["x2011/01/02","x2011/01/04","x2011/01/06","x2011/01/08"], Util.getXLabels()); + assert.deepEqual(["y5","y10","y15"], Util.getYLabels()); g.setSelection(0); - assertEquals("2011/01/01: y: 2", Util.getLegend()); -}; + assert.equal("2011/01/01: y: 2", Util.getLegend()); +}); // This test verifies that when a valueFormatter is set (but not an // axisLabelFormatter), then the valueFormatter is used to format the axis // labels. -DeprecatedAxisLabelsTestCase.prototype.testDeprecatedValueFormatter = function () { +it('testDeprecatedValueFormatter', function() { var opts = { width: 480, height: 320, - xValueFormatter: function(x, opts, series_name, dg) { - assertEquals('number', typeof(x)); - assertEquals('function', typeof(opts)); - assertEquals('string', typeof(series_name)); - assertEquals('[Dygraph graph]', dg.toString()); - return 'x' + x; - }, - yValueFormatter: function(y, opts, series_name, dg) { - assertEquals('number', typeof(y)); - assertEquals('function', typeof(opts)); - assertEquals('string', typeof(series_name)); - assertEquals('[Dygraph graph]', dg.toString()); - return 'y' + y; + axes : { + x : { + valueFormatter: function(x, opts, series_name, dg) { + assert.equal('number', typeof(x)); + assert.equal('function', typeof(opts)); + assert.equal('string', typeof(series_name)); + assert.equal('[Dygraph graph]', dg.toString()); + return 'x' + x; + } + }, + y : { + valueFormatter: function(y, opts, series_name, dg) { + assert.equal('number', typeof(y)); + assert.equal('function', typeof(opts)); + assert.equal('string', typeof(series_name)); + assert.equal('[Dygraph graph]', dg.toString()); + return 'y' + y; + } + } }, labels: ['x', 'y'] }; @@ -141,32 +164,38 @@ DeprecatedAxisLabelsTestCase.prototype.testDeprecatedValueFormatter = function ( var g = new Dygraph(graph, data, opts); // the valueFormatter options do not affect the ticks. - assertEquals(['0','2','4','6','8'], Util.getXLabels()); - assertEquals(['0','2','4','6','8','10','12','14','16','18'], - Util.getYLabels()); + assert.deepEqual(['0','2','4','6','8'], Util.getXLabels()); + assert.deepEqual(["0","5","10","15"], Util.getYLabels()); // they do affect the legend, however. g.setSelection(2); - assertEquals("x2: y: y4", Util.getLegend()); -}; + assert.equal("x2: y: y4", Util.getLegend()); +}); -DeprecatedAxisLabelsTestCase.prototype.testDeprecatedDateValueFormatter = function () { +it('testDeprecatedDateValueFormatter', function() { var opts = { width: 480, height: 320, - xValueFormatter: function(x, opts, series_name, dg) { - assertEquals('number', typeof(x)); - assertEquals('function', typeof(opts)); - assertEquals('string', typeof(series_name)); - assertEquals('[Dygraph graph]', dg.toString()); - return 'x' + Util.formatDate(x); - }, - yValueFormatter: function(y, opts, series_name, dg) { - assertEquals('number', typeof(y)); - assertEquals('function', typeof(opts)); - assertEquals('string', typeof(series_name)); - assertEquals('[Dygraph graph]', dg.toString()); - return 'y' + y; + axes : { + x : { + valueFormatter: function(x, opts, series_name, dg) { + assert.equal('number', typeof(x)); + assert.equal('function', typeof(opts)); + assert.equal('string', typeof(series_name)); + assert.equal('[Dygraph graph]', dg.toString()); + return 'x' + Util.formatDate(x); + }, + pixelsPerLabel: 60 + }, + y : { + valueFormatter: function(y, opts, series_name, dg) { + assert.equal('number', typeof(y)); + assert.equal('function', typeof(opts)); + assert.equal('string', typeof(series_name)); + assert.equal('[Dygraph graph]', dg.toString()); + return 'y' + y; + } + } }, labels: ['x', 'y'] }; @@ -179,31 +208,37 @@ DeprecatedAxisLabelsTestCase.prototype.testDeprecatedDateValueFormatter = functi var g = new Dygraph(graph, data, opts); // valueFormatters do not affect ticks. - assertEquals(['01Jan','02Jan','03Jan','04Jan','05Jan','06Jan','07Jan','08Jan'], Util.getXLabels()); - assertEquals(['2','4','6','8','10','12','14','16','18'], Util.getYLabels()); + assert.deepEqual(["02 Jan","04 Jan","06 Jan","08 Jan"], Util.getXLabels()); + assert.deepEqual(["5","10","15"], Util.getYLabels()); // the valueFormatter options also affect the legend. g.setSelection(2); - assertEquals('x2011/01/03: y: y6', Util.getLegend()); -}; + assert.equal('x2011/01/03: y: y6', Util.getLegend()); +}); // This test verifies that when both a valueFormatter and an axisLabelFormatter // are specified, the axisLabelFormatter takes precedence. -DeprecatedAxisLabelsTestCase.prototype.testDeprecatedAxisLabelFormatterPrecedence = function () { +it('testDeprecatedAxisLabelFormatterPrecedence', function() { var opts = { width: 480, height: 320, - xValueFormatter: function(x) { - return 'xvf' + x; - }, - yValueFormatter: function(y) { - return 'yvf' + y; - }, - xAxisLabelFormatter: function(x, granularity) { - return 'x' + x; - }, - yAxisLabelFormatter: function(y) { - return 'y' + y; + axes : { + x : { + valueFormatter: function(x) { + return 'xvf' + x; + }, + axisLabelFormatter: function(x, granularity) { + return 'x' + x; + }, + }, + y : { + valueFormatter: function(y) { + return 'yvf' + y; + }, + axisLabelFormatter: function(y) { + return 'y' + y; + }, + } }, labels: ['x', 'y'] }; @@ -214,16 +249,16 @@ DeprecatedAxisLabelsTestCase.prototype.testDeprecatedAxisLabelFormatterPrecedenc var graph = document.getElementById("graph"); var g = new Dygraph(graph, data, opts); - assertEquals(['x0','x2','x4','x6','x8'], Util.getXLabels()); - assertEquals(['y0','y2','y4','y6','y8','y10','y12','y14','y16','y18'], Util.getYLabels()); + assert.deepEqual(['x0','x2','x4','x6','x8'], Util.getXLabels()); + assert.deepEqual(["y0","y5","y10","y15"], Util.getYLabels()); g.setSelection(9); - assertEquals("xvf9: y: yvf18", Util.getLegend()); -}; + assert.equal("xvf9: y: yvf18", Util.getLegend()); +}); // This is the same as the previous test, except that options are added // one-by-one. -DeprecatedAxisLabelsTestCase.prototype.testDeprecatedAxisLabelFormatterIncremental = function () { +it('testDeprecatedAxisLabelFormatterIncremental', function() { var opts = { width: 480, height: 320, @@ -236,29 +271,47 @@ DeprecatedAxisLabelsTestCase.prototype.testDeprecatedAxisLabelFormatterIncrement var graph = document.getElementById("graph"); var g = new Dygraph(graph, data, opts); g.updateOptions({ - xValueFormatter: function(x) { - return 'xvf' + x; + axes : { + x : { + valueFormatter: function(x) { + return 'xvf' + x; + } + } } }); g.updateOptions({ - yValueFormatter: function(y) { - return 'yvf' + y; + axes : { + y : { + valueFormatter: function(y) { + return 'yvf' + y; + } + } } }); g.updateOptions({ - xAxisLabelFormatter: function(x, granularity) { - return 'x' + x; + axes : { + x : { + axisLabelFormatter: function(x) { + return 'x' + x; + } + } } }); g.updateOptions({ - yAxisLabelFormatter: function(y) { - return 'y' + y; + axes : { + y : { + axisLabelFormatter: function(y) { + return 'y' + y; + } + } } }); - assertEquals(["x0","x2","x4","x6","x8"], Util.getXLabels()); - assertEquals(['y0','y2','y4','y6','y8','y10','y12','y14','y16','y18'], Util.getYLabels()); + assert.deepEqual(["x0","x2","x4","x6","x8"], Util.getXLabels()); + assert.deepEqual(["y0","y5","y10","y15"], Util.getYLabels()); g.setSelection(9); - assertEquals("xvf9: y: yvf18", Util.getLegend()); -}; + assert.equal("xvf9: y: yvf18", Util.getLegend()); +}); + +});