From 79aabc9d405aa83072ffea1734125e9faed192c1 Mon Sep 17 00:00:00 2001 From: Dan Vanderkam Date: Fri, 8 Feb 2013 16:01:30 -0500 Subject: [PATCH] Fix tests to handle the new space in the legend --- auto_tests/tests/Util.js | 3 ++- auto_tests/tests/axis_labels-deprecated.js | 14 ++++++------ auto_tests/tests/axis_labels.js | 24 ++++++++++---------- auto_tests/tests/no_hours.js | 21 +++++++---------- auto_tests/tests/rolling_average.js | 36 +++++++++++++----------------- auto_tests/tests/stacked.js | 10 +++------ 6 files changed, 48 insertions(+), 60 deletions(-) diff --git a/auto_tests/tests/Util.js b/auto_tests/tests/Util.js index 08cc88a..2b308b3 100644 --- a/auto_tests/tests/Util.js +++ b/auto_tests/tests/Util.js @@ -54,7 +54,8 @@ Util.getClassTexts = function(css_class, parent) { Util.getLegend = function(parent) { parent = parent || document; var legend = parent.getElementsByClassName("dygraph-legend")[0]; - return legend.textContent; + var re = new RegExp(String.fromCharCode(160), 'g'); + return legend.textContent.replace(re, ' '); }; /** diff --git a/auto_tests/tests/axis_labels-deprecated.js b/auto_tests/tests/axis_labels-deprecated.js index 10784db..972362a 100644 --- a/auto_tests/tests/axis_labels-deprecated.js +++ b/auto_tests/tests/axis_labels-deprecated.js @@ -39,7 +39,7 @@ DeprecatedAxisLabelsTestCase.prototype.testDeprecatedDeprecatedXAxisTimeLabelFor // The legend does not use the xAxisLabelFormatter: g.setSelection(1); - assertEquals('5.1: Y1:1', Util.getLegend()); + assertEquals('5.1: Y1: 1', Util.getLegend()); }; DeprecatedAxisLabelsTestCase.prototype.testDeprecatedAxisLabelFormatter = function () { @@ -73,7 +73,7 @@ DeprecatedAxisLabelsTestCase.prototype.testDeprecatedAxisLabelFormatter = functi assertEquals(['y0','y2','y4','y6','y8','y10','y12','y14','y16','y18'], Util.getYLabels()); g.setSelection(2); - assertEquals("2: y:4", Util.getLegend()); + assertEquals("2: y: 4", Util.getLegend()); }; DeprecatedAxisLabelsTestCase.prototype.testDeprecatedDateAxisLabelFormatter = function () { @@ -107,7 +107,7 @@ DeprecatedAxisLabelsTestCase.prototype.testDeprecatedDateAxisLabelFormatter = fu assertEquals(['y2','y4','y6','y8','y10','y12','y14','y16','y18'], Util.getYLabels()); g.setSelection(0); - assertEquals("2011/01/01: y:2", Util.getLegend()); + assertEquals("2011/01/01: y: 2", Util.getLegend()); }; // This test verifies that when a valueFormatter is set (but not an @@ -147,7 +147,7 @@ DeprecatedAxisLabelsTestCase.prototype.testDeprecatedValueFormatter = function ( // they do affect the legend, however. g.setSelection(2); - assertEquals("x2: y:y4", Util.getLegend()); + assertEquals("x2: y: y4", Util.getLegend()); }; DeprecatedAxisLabelsTestCase.prototype.testDeprecatedDateValueFormatter = function () { @@ -184,7 +184,7 @@ DeprecatedAxisLabelsTestCase.prototype.testDeprecatedDateValueFormatter = functi // the valueFormatter options also affect the legend. g.setSelection(2); - assertEquals('x2011/01/03: y:y6', Util.getLegend()); + assertEquals('x2011/01/03: y: y6', Util.getLegend()); }; // This test verifies that when both a valueFormatter and an axisLabelFormatter @@ -218,7 +218,7 @@ DeprecatedAxisLabelsTestCase.prototype.testDeprecatedAxisLabelFormatterPrecedenc assertEquals(['y0','y2','y4','y6','y8','y10','y12','y14','y16','y18'], Util.getYLabels()); g.setSelection(9); - assertEquals("xvf9: y:yvf18", Util.getLegend()); + assertEquals("xvf9: y: yvf18", Util.getLegend()); }; // This is the same as the previous test, except that options are added @@ -260,5 +260,5 @@ DeprecatedAxisLabelsTestCase.prototype.testDeprecatedAxisLabelFormatterIncrement assertEquals(['y0','y2','y4','y6','y8','y10','y12','y14','y16','y18'], Util.getYLabels()); g.setSelection(9); - assertEquals("xvf9: y:yvf18", Util.getLegend()); + assertEquals("xvf9: y: yvf18", Util.getLegend()); }; diff --git a/auto_tests/tests/axis_labels.js b/auto_tests/tests/axis_labels.js index 6d861e1..7ad62a7 100644 --- a/auto_tests/tests/axis_labels.js +++ b/auto_tests/tests/axis_labels.js @@ -55,7 +55,7 @@ AxisLabelsTestCase.prototype.testMinusOneToOne = function() { assertEquals(['0','20','40','60','80','100'], Util.getYLabels()); g.setSelection(0); - assertEquals('0: Y:-1', Util.getLegend()); + assertEquals('0: Y: -1', Util.getLegend()); }; AxisLabelsTestCase.prototype.testSmallRangeNearZero = function() { @@ -88,7 +88,7 @@ AxisLabelsTestCase.prototype.testSmallRangeNearZero = function() { Util.makeNumbers(Util.getYLabels())); g.setSelection(1); - assertEquals('1: Y:0', Util.getLegend()); + assertEquals('1: Y: 0', Util.getLegend()); }; AxisLabelsTestCase.prototype.testSmallRangeAwayFromZero = function() { @@ -119,7 +119,7 @@ AxisLabelsTestCase.prototype.testSmallRangeAwayFromZero = function() { assertEquals(["10","10","10","10","10","10","10","10","10","10"], Util.getYLabels()); g.setSelection(1); - assertEquals('1: Y:0', Util.getLegend()); + assertEquals('1: Y: 0', Util.getLegend()); }; AxisLabelsTestCase.prototype.testXAxisTimeLabelFormatter = function() { @@ -152,7 +152,7 @@ AxisLabelsTestCase.prototype.testXAxisTimeLabelFormatter = function() { // The legend does not use the axisLabelFormatter: g.setSelection(1); - assertEquals('5.1: Y1:1', Util.getLegend()); + assertEquals('5.1: Y1: 1', Util.getLegend()); }; AxisLabelsTestCase.prototype.testAxisLabelFormatter = function () { @@ -192,7 +192,7 @@ AxisLabelsTestCase.prototype.testAxisLabelFormatter = function () { assertEquals(['y0','y2','y4','y6','y8','y10','y12','y14','y16','y18'], Util.getYLabels()); g.setSelection(2); - assertEquals("2: y:4", Util.getLegend()); + assertEquals("2: y: 4", Util.getLegend()); }; AxisLabelsTestCase.prototype.testDateAxisLabelFormatter = function () { @@ -232,7 +232,7 @@ AxisLabelsTestCase.prototype.testDateAxisLabelFormatter = function () { assertEquals(['y2','y4','y6','y8','y10','y12','y14','y16','y18'], Util.getYLabels()); g.setSelection(0); - assertEquals("2011/01/01: y:2", Util.getLegend()); + assertEquals("2011/01/01: y: 2", Util.getLegend()); }; // This test verifies that when a valueFormatter is set (but not an @@ -278,7 +278,7 @@ AxisLabelsTestCase.prototype.testValueFormatter = function () { // they do affect the legend, however. g.setSelection(2); - assertEquals("x2: y:y4", Util.getLegend()); + assertEquals("x2: y: y4", Util.getLegend()); }; AxisLabelsTestCase.prototype.testDateValueFormatter = function () { @@ -321,7 +321,7 @@ AxisLabelsTestCase.prototype.testDateValueFormatter = function () { // the valueFormatter options also affect the legend. g.setSelection(2); - assertEquals('x2011/01/03: y:y6', Util.getLegend()); + assertEquals('x2011/01/03: y: y6', Util.getLegend()); }; // This test verifies that when both a valueFormatter and an axisLabelFormatter @@ -361,7 +361,7 @@ AxisLabelsTestCase.prototype.testAxisLabelFormatterPrecedence = function () { assertEquals(['y0','y2','y4','y6','y8','y10','y12','y14','y16','y18'], Util.getYLabels()); g.setSelection(9); - assertEquals("xvf9: y:yvf18", Util.getLegend()); + assertEquals("xvf9: y: yvf18", Util.getLegend()); }; // This is the same as the previous test, except that options are added @@ -419,7 +419,7 @@ AxisLabelsTestCase.prototype.testAxisLabelFormatterIncremental = function () { assertEquals(['y0','y2','y4','y6','y8','y10','y12','y14','y16','y18'], Util.getYLabels()); g.setSelection(9); - assertEquals("xvf9: y:yvf18", Util.getLegend()); + assertEquals("xvf9: y: yvf18", Util.getLegend()); }; AxisLabelsTestCase.prototype.testGlobalFormatters = function() { @@ -445,7 +445,7 @@ AxisLabelsTestCase.prototype.testGlobalFormatters = function() { assertEquals(['alf0','alf2','alf4','alf6','alf8','alf10','alf12','alf14','alf16','alf18'], Util.getYLabels()); g.setSelection(9); - assertEquals("vf9: y:vf18", Util.getLegend()); + assertEquals("vf9: y: vf18", Util.getLegend()); }; AxisLabelsTestCase.prototype.testSeriesOrder = function() { @@ -464,7 +464,7 @@ AxisLabelsTestCase.prototype.testSeriesOrder = function() { var g = new Dygraph(graph, data, opts); g.setSelection(2); - assertEquals('2: 00:103 01:203 10:303 11:403', Util.getLegend()); + assertEquals('2: 00: 103 01: 203 10: 303 11: 403', Util.getLegend()); // Sanity checks for indexFromSetName assertEquals(0, g.indexFromSetName("x")); diff --git a/auto_tests/tests/no_hours.js b/auto_tests/tests/no_hours.js index 4f782d5..1fde9ef 100644 --- a/auto_tests/tests/no_hours.js +++ b/auto_tests/tests/no_hours.js @@ -14,11 +14,6 @@ noHoursTestCase.prototype.setUp = function() { noHoursTestCase.prototype.tearDown = function() { }; -function getLegend() { - var legend = document.getElementsByClassName("dygraph-legend")[0]; - return legend.textContent; -} - noHoursTestCase.prototype.testNoHours = function() { var opts = { width: 480, @@ -35,16 +30,16 @@ noHoursTestCase.prototype.testNoHours = function() { var g = new Dygraph(graph, data, opts); g.setSelection(0); - assertEquals("2012/03/13: Y:-1", getLegend()); + assertEquals("2012/03/13: Y: -1", Util.getLegend()); g.setSelection(1); - assertEquals("2012/03/14: Y:0", getLegend()); + assertEquals("2012/03/14: Y: 0", Util.getLegend()); g.setSelection(2); - assertEquals("2012/03/15: Y:1", getLegend()); + assertEquals("2012/03/15: Y: 1", Util.getLegend()); g.setSelection(3); - assertEquals("2012/03/16: Y:0", getLegend()); + assertEquals("2012/03/16: Y: 0", Util.getLegend()); }; noHoursTestCase.prototype.testNoHoursDashed = function() { @@ -63,15 +58,15 @@ noHoursTestCase.prototype.testNoHoursDashed = function() { var g = new Dygraph(graph, data, opts); g.setSelection(0); - assertEquals("2012/03/13: Y:-1", getLegend()); + assertEquals("2012/03/13: Y: -1", Util.getLegend()); g.setSelection(1); - assertEquals("2012/03/14: Y:0", getLegend()); + assertEquals("2012/03/14: Y: 0", Util.getLegend()); g.setSelection(2); - assertEquals("2012/03/15: Y:1", getLegend()); + assertEquals("2012/03/15: Y: 1", Util.getLegend()); g.setSelection(3); - assertEquals("2012/03/16: Y:0", getLegend()); + assertEquals("2012/03/16: Y: 0", Util.getLegend()); }; diff --git a/auto_tests/tests/rolling_average.js b/auto_tests/tests/rolling_average.js index 2dd157f..e798ca6 100644 --- a/auto_tests/tests/rolling_average.js +++ b/auto_tests/tests/rolling_average.js @@ -12,10 +12,6 @@ rollingAverageTestCase.prototype.setUp = function() { rollingAverageTestCase.prototype.tearDown = function() { }; -rollingAverageTestCase.prototype.getLegend = function() { - return document.getElementsByClassName("dygraph-legend")[0].textContent; -}; - rollingAverageTestCase.prototype.testRollingAverage = function() { var opts = { width: 480, @@ -33,31 +29,31 @@ rollingAverageTestCase.prototype.testRollingAverage = function() { var graph = document.getElementById("graph"); var g = new Dygraph(graph, data, opts); - g.setSelection(0); assertEquals("0: Y:0", this.getLegend()); - g.setSelection(1); assertEquals("1: Y:1", this.getLegend()); - g.setSelection(2); assertEquals("2: Y:2", this.getLegend()); - g.setSelection(3); assertEquals("3: Y:3", this.getLegend()); + g.setSelection(0); assertEquals("0: Y: 0", Util.getLegend()); + g.setSelection(1); assertEquals("1: Y: 1", Util.getLegend()); + g.setSelection(2); assertEquals("2: Y: 2", Util.getLegend()); + g.setSelection(3); assertEquals("3: Y: 3", Util.getLegend()); assertEquals(1, g.rollPeriod()); g.updateOptions({rollPeriod: 2}); - g.setSelection(0); assertEquals("0: Y:0", this.getLegend()); - g.setSelection(1); assertEquals("1: Y:0.5", this.getLegend()); - g.setSelection(2); assertEquals("2: Y:1.5", this.getLegend()); - g.setSelection(3); assertEquals("3: Y:2.5", this.getLegend()); + g.setSelection(0); assertEquals("0: Y: 0", Util.getLegend()); + g.setSelection(1); assertEquals("1: Y: 0.5", Util.getLegend()); + g.setSelection(2); assertEquals("2: Y: 1.5", Util.getLegend()); + g.setSelection(3); assertEquals("3: Y: 2.5", Util.getLegend()); assertEquals(2, g.rollPeriod()); g.updateOptions({rollPeriod: 3}); - g.setSelection(0); assertEquals("0: Y:0", this.getLegend()); - g.setSelection(1); assertEquals("1: Y:0.5", this.getLegend()); - g.setSelection(2); assertEquals("2: Y:1", this.getLegend()); - g.setSelection(3); assertEquals("3: Y:2", this.getLegend()); + g.setSelection(0); assertEquals("0: Y: 0", Util.getLegend()); + g.setSelection(1); assertEquals("1: Y: 0.5", Util.getLegend()); + g.setSelection(2); assertEquals("2: Y: 1", Util.getLegend()); + g.setSelection(3); assertEquals("3: Y: 2", Util.getLegend()); assertEquals(3, g.rollPeriod()); g.updateOptions({rollPeriod: 4}); - g.setSelection(0); assertEquals("0: Y:0", this.getLegend()); - g.setSelection(1); assertEquals("1: Y:0.5", this.getLegend()); - g.setSelection(2); assertEquals("2: Y:1", this.getLegend()); - g.setSelection(3); assertEquals("3: Y:1.5", this.getLegend()); + g.setSelection(0); assertEquals("0: Y: 0", Util.getLegend()); + g.setSelection(1); assertEquals("1: Y: 0.5", Util.getLegend()); + g.setSelection(2); assertEquals("2: Y: 1", Util.getLegend()); + g.setSelection(3); assertEquals("3: Y: 1.5", Util.getLegend()); assertEquals(4, g.rollPeriod()); }; diff --git a/auto_tests/tests/stacked.js b/auto_tests/tests/stacked.js index f7ca442..706f56f 100644 --- a/auto_tests/tests/stacked.js +++ b/auto_tests/tests/stacked.js @@ -78,11 +78,7 @@ stackedTestCase.prototype.testSelectionValues = function() { g.setSelection(0); - var legend = document.getElementsByClassName("dygraph-legend"); - assertEquals(1, legend.length); - legend = legend[0]; - - assertEquals("0: Y1:1 Y2:1", legend.textContent); + assertEquals("0: Y1: 1 Y2: 1", Util.getLegend()); // Verify that the behavior is correct with highlightSeriesOpts as well. g.updateOptions({ @@ -93,8 +89,8 @@ stackedTestCase.prototype.testSelectionValues = function() { // NOTE: calling g.setSelection(0) here makes the test fail, due to an // unrelated bug. g.setSelection(1); - assertEquals("1: Y1:1 Y2:1", legend.textContent); + assertEquals("1: Y1: 1 Y2: 1", Util.getLegend()); g.setSelection(0, 'Y2'); - assertEquals("0: Y1:1 Y2:1", legend.textContent); + assertEquals("0: Y1: 1 Y2: 1", Util.getLegend()); }; -- 2.7.4