Convert tests from jstd to Mocha.
[dygraphs.git] / auto_tests / tests / to_dom_coords.js
index 557d22c..c218e81 100644 (file)
@@ -4,19 +4,19 @@
  * @author danvk@google.com (Dan Vanderkam)
  */
 
-var ToDomCoordsTestCase = TestCase("to-dom-coords");
+describe("to-dom-coords", function() {
 
 var origFunc = Dygraph.getContext;
-ToDomCoordsTestCase.prototype.setUp = function() {
+beforeEach(function() {
   document.body.innerHTML = "<div id='graph'></div>";
   Dygraph.getContext = function(canvas) {
     return new Proxy(origFunc(canvas));
   }
-};
+});
 
-ToDomCoordsTestCase.prototype.tearDown = function() {
+afterEach(function() {
   Dygraph.getContext = origFunc;
-};
+});
 
 // Checks that toDomCoords and toDataCoords are inverses of one another.
 var checkForInverses = function(g) {
@@ -26,13 +26,13 @@ var checkForInverses = function(g) {
     var x = x_range[0] + i / 10.0 * (x_range[1] - x_range[0]);
     for (var j = 0; j <= 10; j++) {
       var y = y_range[0] + j / 10.0 * (y_range[1] - y_range[0]);
-      assertEquals(x, g.toDataXCoord(g.toDomXCoord(x)));
-      assertEquals(y, g.toDataYCoord(g.toDomYCoord(y)));
+      assert.equal(x, g.toDataXCoord(g.toDomXCoord(x)));
+      assert.equal(y, g.toDataYCoord(g.toDomYCoord(y)));
     }
   }
 };
 
-ToDomCoordsTestCase.prototype.testPlainChart = function() {
+it('testPlainChart', function() {
   var opts = {
     axes : {
       x : {
@@ -53,21 +53,21 @@ ToDomCoordsTestCase.prototype.testPlainChart = function() {
   }
 
   var graph = document.getElementById("graph");
-  g = new Dygraph(graph, [ [0,0], [100,100] ], opts);
+  var g = new Dygraph(graph, [ [0,0], [100,100] ], opts);
 
-  assertEquals([0, 100], g.toDataCoords(0, 0));
-  assertEquals([0, 0], g.toDataCoords(0, 400));
-  assertEquals([100, 100], g.toDataCoords(400, 0));
-  assertEquals([100, 0], g.toDataCoords(400, 400));
+  assert.deepEqual([0, 100], g.toDataCoords(0, 0));
+  assert.deepEqual([0, 0], g.toDataCoords(0, 400));
+  assert.deepEqual([100, 100], g.toDataCoords(400, 0));
+  assert.deepEqual([100, 0], g.toDataCoords(400, 400));
 
   checkForInverses(g);
 
   // TODO(konigsberg): This doesn't really belong here. Move to its own test.
   var htx = g.hidden_ctx_;
-  assertEquals(1, CanvasAssertions.numLinesDrawn(htx, '#ff0000'));
-}
+  assert.equal(1, CanvasAssertions.numLinesDrawn(htx, '#ff0000'));
+});
 
-ToDomCoordsTestCase.prototype.testChartWithAxes = function() {
+it('testChartWithAxes', function() {
   var opts = {
     axes : {
       x : {
@@ -91,17 +91,17 @@ ToDomCoordsTestCase.prototype.testChartWithAxes = function() {
   }
 
   var graph = document.getElementById("graph");
-  g = new Dygraph(graph, [ [0,0], [100,100] ], opts);
+  var g = new Dygraph(graph, [ [0,0], [100,100] ], opts);
 
-  assertEquals([0, 100], g.toDataCoords(100, 0));
-  assertEquals([0, 0], g.toDataCoords(100, 400));
-  assertEquals([100, 100], g.toDataCoords(500, 0));
-  assertEquals([100, 0], g.toDataCoords(500, 400));
+  assert.deepEqual([0, 100], g.toDataCoords(100, 0));
+  assert.deepEqual([0, 0], g.toDataCoords(100, 400));
+  assert.deepEqual([100, 100], g.toDataCoords(500, 0));
+  assert.deepEqual([100, 0], g.toDataCoords(500, 400));
 
   checkForInverses(g);
-}
+});
 
-ToDomCoordsTestCase.prototype.testChartWithAxesAndLabels = function() {
+it('testChartWithAxesAndLabels', function() {
   var opts = {
     axes : {
       x : {
@@ -130,17 +130,17 @@ ToDomCoordsTestCase.prototype.testChartWithAxesAndLabels = function() {
   }
 
   var graph = document.getElementById("graph");
-  g = new Dygraph(graph, [ [0,0], [100,100] ], opts);
+  var g = new Dygraph(graph, [ [0,0], [100,100] ], opts);
 
-  assertEquals([0, 100], g.toDataCoords(100, 25));
-  assertEquals([0, 0], g.toDataCoords(100, 425));
-  assertEquals([100, 100], g.toDataCoords(500, 25));
-  assertEquals([100, 0], g.toDataCoords(500, 425));
+  assert.deepEqual([0, 100], g.toDataCoords(100, 25));
+  assert.deepEqual([0, 0], g.toDataCoords(100, 425));
+  assert.deepEqual([100, 100], g.toDataCoords(500, 25));
+  assert.deepEqual([100, 0], g.toDataCoords(500, 425));
 
   checkForInverses(g);
-}
+});
 
-ToDomCoordsTestCase.prototype.testYAxisLabelWidth = function() {
+it('testYAxisLabelWidth', function() {
   var opts = {
     axes: { y: { axisLabelWidth: 100 } },
     axisTickSize: 0,
@@ -152,19 +152,19 @@ ToDomCoordsTestCase.prototype.testYAxisLabelWidth = function() {
   }
 
   var graph = document.getElementById("graph");
-  g = new Dygraph(graph, [ [0,0], [100,100] ], opts);
+  var g = new Dygraph(graph, [ [0,0], [100,100] ], opts);
 
-  assertEquals([100, 0], g.toDomCoords(0, 100));
-  assertEquals([500, 486], g.toDomCoords(100, 0));
+  assert.deepEqual([100, 0], g.toDomCoords(0, 100));
+  assert.deepEqual([500, 486], g.toDomCoords(100, 0));
 
   g.updateOptions({     
     axes: { y: { axisLabelWidth: 50 }},
   });
-  assertEquals([50, 0], g.toDomCoords(0, 100));
-  assertEquals([500, 486], g.toDomCoords(100, 0));
-}
+  assert.deepEqual([50, 0], g.toDomCoords(0, 100));
+  assert.deepEqual([500, 486], g.toDomCoords(100, 0));
+});
 
-ToDomCoordsTestCase.prototype.testAxisTickSize = function() {
+it('testAxisTickSize', function() {
   var opts = {
     axes: { y: { axisLabelWidth: 100 } },
     axisTickSize: 0,
@@ -176,17 +176,17 @@ ToDomCoordsTestCase.prototype.testAxisTickSize = function() {
   }
 
   var graph = document.getElementById("graph");
-  g = new Dygraph(graph, [ [0,0], [100,100] ], opts);
+  var g = new Dygraph(graph, [ [0,0], [100,100] ], opts);
 
-  assertEquals([100, 0], g.toDomCoords(0, 100));
-  assertEquals([500, 486], g.toDomCoords(100, 0));
+  assert.deepEqual([100, 0], g.toDomCoords(0, 100));
+  assert.deepEqual([500, 486], g.toDomCoords(100, 0));
 
   g.updateOptions({ axisTickSize : 50 });
-  assertEquals([200, 0], g.toDomCoords(0, 100));
-  assertEquals([500, 386], g.toDomCoords(100, 0));
-}
+  assert.deepEqual([200, 0], g.toDomCoords(0, 100));
+  assert.deepEqual([500, 386], g.toDomCoords(100, 0));
+});
 
-ToDomCoordsTestCase.prototype.testChartLogarithmic_YAxis = function() {
+it('testChartLogarithmic_YAxis', function() {
   var opts = {
     rightGap: 0,
     valueRange: [1, 4],
@@ -208,23 +208,23 @@ ToDomCoordsTestCase.prototype.testChartLogarithmic_YAxis = function() {
   }
 
   var graph = document.getElementById("graph");
-  g = new Dygraph(graph, [ [1,1], [4,4] ], opts);
+  var g = new Dygraph(graph, [ [1,1], [4,4] ], opts);
 
   var epsilon = 1e-8;
-  assertEqualsDelta([0, 4], g.toDataCoords(0, 0), epsilon);
-  assertEqualsDelta([0, 1], g.toDataCoords(0, 400), epsilon);
-  assertEqualsDelta([10, 4], g.toDataCoords(400, 0), epsilon);
-  assertEqualsDelta([10, 1], g.toDataCoords(400, 400), epsilon);
-  assertEqualsDelta([10, 2], g.toDataCoords(400, 200), epsilon);
+  assert.equalsDelta([0, 4], g.toDataCoords(0, 0), epsilon);
+  assert.equalsDelta([0, 1], g.toDataCoords(0, 400), epsilon);
+  assert.equalsDelta([10, 4], g.toDataCoords(400, 0), epsilon);
+  assert.equalsDelta([10, 1], g.toDataCoords(400, 400), epsilon);
+  assert.equalsDelta([10, 2], g.toDataCoords(400, 200), epsilon);
   
-  assertEquals([0, 0], g.toDomCoords(0, 4));
-  assertEquals([0, 400], g.toDomCoords(0, 1));
-  assertEquals([400, 0], g.toDomCoords(10, 4));
-  assertEquals([400, 400], g.toDomCoords(10, 1));
-  assertEquals([400, 200], g.toDomCoords(10, 2));
-}
-
-ToDomCoordsTestCase.prototype.testChartLogarithmic_XAxis = function() {
+  assert.deepEqual([0, 0], g.toDomCoords(0, 4));
+  assert.deepEqual([0, 400], g.toDomCoords(0, 1));
+  assert.deepEqual([400, 0], g.toDomCoords(10, 4));
+  assert.deepEqual([400, 400], g.toDomCoords(10, 1));
+  assert.deepEqual([400, 200], g.toDomCoords(10, 2));
+});
+
+it('testChartLogarithmic_XAxis', function() {
   var opts = {
     rightGap: 0,
     valueRange: [1, 1000],
@@ -246,41 +246,43 @@ ToDomCoordsTestCase.prototype.testChartLogarithmic_XAxis = function() {
   }
 
   var graph = document.getElementById("graph");
-  g = new Dygraph(graph, [ [1,1], [10, 10], [100,100], [1000,1000] ], opts);
+  var g = new Dygraph(graph, [ [1,1], [10, 10], [100,100], [1000,1000] ], opts);
 
   var epsilon = 1e-8;
-  assertEqualsDelta(1, g.toDataXCoord(0), epsilon);
-  assertEqualsDelta(5.623413251903489, g.toDataXCoord(100), epsilon);
-  assertEqualsDelta(31.62277660168378, g.toDataXCoord(200), epsilon);
-  assertEqualsDelta(177.8279410038921, g.toDataXCoord(300), epsilon);
-  assertEqualsDelta(1000, g.toDataXCoord(400), epsilon);
-
-  assertEqualsDelta(0, g.toDomXCoord(1), epsilon);
-  assertEqualsDelta(3.6036036036036037, g.toDomXCoord(10), epsilon);
-  assertEqualsDelta(39.63963963963964, g.toDomXCoord(100), epsilon);
-  assertEqualsDelta(400, g.toDomXCoord(1000), epsilon);
-
-  assertEqualsDelta(0, g.toPercentXCoord(1), epsilon);
-  assertEqualsDelta(0.3333333333, g.toPercentXCoord(10), epsilon);
-  assertEqualsDelta(0.6666666666, g.toPercentXCoord(100), epsilon);
-  assertEqualsDelta(1, g.toPercentXCoord(1000), epsilon);
+  assert.equalsDelta(1, g.toDataXCoord(0), epsilon);
+  assert.equalsDelta(5.623413251903489, g.toDataXCoord(100), epsilon);
+  assert.equalsDelta(31.62277660168378, g.toDataXCoord(200), epsilon);
+  assert.equalsDelta(177.8279410038921, g.toDataXCoord(300), epsilon);
+  assert.equalsDelta(1000, g.toDataXCoord(400), epsilon);
+
+  assert.equalsDelta(0, g.toDomXCoord(1), epsilon);
+  assert.equalsDelta(3.6036036036036037, g.toDomXCoord(10), epsilon);
+  assert.equalsDelta(39.63963963963964, g.toDomXCoord(100), epsilon);
+  assert.equalsDelta(400, g.toDomXCoord(1000), epsilon);
+
+  assert.equalsDelta(0, g.toPercentXCoord(1), epsilon);
+  assert.equalsDelta(0.3333333333, g.toPercentXCoord(10), epsilon);
+  assert.equalsDelta(0.6666666666, g.toPercentXCoord(100), epsilon);
+  assert.equalsDelta(1, g.toPercentXCoord(1000), epsilon);
  
   // Now zoom in and ensure that the methods return reasonable values.
   g.updateOptions({dateWindow: [ 10, 100 ]});
 
-  assertEqualsDelta(10, g.toDataXCoord(0), epsilon);
-  assertEqualsDelta(17.78279410038923, g.toDataXCoord(100), epsilon);
-  assertEqualsDelta(31.62277660168379, g.toDataXCoord(200), epsilon);
-  assertEqualsDelta(56.23413251903491, g.toDataXCoord(300), epsilon);
-  assertEqualsDelta(100, g.toDataXCoord(400), epsilon);
-
-  assertEqualsDelta(-40, g.toDomXCoord(1), epsilon);
-  assertEqualsDelta(0, g.toDomXCoord(10), epsilon);
-  assertEqualsDelta(400, g.toDomXCoord(100), epsilon);
-  assertEqualsDelta(4400, g.toDomXCoord(1000), epsilon);
-
-  assertEqualsDelta(-1, g.toPercentXCoord(1), epsilon);
-  assertEqualsDelta(0, g.toPercentXCoord(10), epsilon);
-  assertEqualsDelta(1, g.toPercentXCoord(100), epsilon);
-  assertEqualsDelta(2, g.toPercentXCoord(1000), epsilon);
-}
+  assert.equalsDelta(10, g.toDataXCoord(0), epsilon);
+  assert.equalsDelta(17.78279410038923, g.toDataXCoord(100), epsilon);
+  assert.equalsDelta(31.62277660168379, g.toDataXCoord(200), epsilon);
+  assert.equalsDelta(56.23413251903491, g.toDataXCoord(300), epsilon);
+  assert.equalsDelta(100, g.toDataXCoord(400), epsilon);
+
+  assert.equalsDelta(-40, g.toDomXCoord(1), epsilon);
+  assert.equalsDelta(0, g.toDomXCoord(10), epsilon);
+  assert.equalsDelta(400, g.toDomXCoord(100), epsilon);
+  assert.equalsDelta(4400, g.toDomXCoord(1000), epsilon);
+
+  assert.equalsDelta(-1, g.toPercentXCoord(1), epsilon);
+  assert.equalsDelta(0, g.toPercentXCoord(10), epsilon);
+  assert.equalsDelta(1, g.toPercentXCoord(100), epsilon);
+  assert.equalsDelta(2, g.toPercentXCoord(1000), epsilon);
+});
+
+});