Bug fix for dygraph point selection touch event.
[dygraphs.git] / auto_tests / tests / date_ticker.js
index 665a463..fc18733 100644 (file)
@@ -6,22 +6,23 @@
  * @author danvdk@gmail.com (Dan Vanderkam)
  */
 
+import * as DygraphTickers from '../../src/dygraph-tickers';
+import DEFAULT_ATTRS from '../../src/dygraph-default-attrs';
+
 describe("date-ticker-tests", function() {
 
-beforeEach(function() {
-  document.body.innerHTML = "<div id='graph'></div>";
-});
+cleanupAfterEach();
 
 var createOptionsViewForAxis = function(axis, dict) {
   return function (x) {
     if (dict && dict.hasOwnProperty(x)) {
       return dict[x];
     }
-    if (Dygraph.DEFAULT_ATTRS.axes[axis].hasOwnProperty(x)) {
-      return Dygraph.DEFAULT_ATTRS.axes[axis][x];
+    if (DEFAULT_ATTRS.axes[axis].hasOwnProperty(x)) {
+      return DEFAULT_ATTRS.axes[axis][x];
     }
-    if (Dygraph.DEFAULT_ATTRS.hasOwnProperty(x)) {
-      return Dygraph.DEFAULT_ATTRS[x];
+    if (DEFAULT_ATTRS.hasOwnProperty(x)) {
+      return DEFAULT_ATTRS[x];
     }
     if (x == 'axisLabelFormatter') return null;
     throw "mysterious " + axis + "-axis option: " + x;
@@ -41,7 +42,7 @@ it('testBasicDateTicker', function() {
   var opts = {labelsUTC: true};
   var options = createOptionsViewForAxis('x', opts);
   
-  var ticks = Dygraph.dateTicker(-1797534000000, 1255579200000, 800, options);
+  var ticks = DygraphTickers.dateTicker(-1797534000000, 1255579200000, 800, options);
   var expected_ticks = [
       {"v":-1577923200000,"label":"1920"},
       {"v":-1262304000000,"label":"1930"},
@@ -53,12 +54,12 @@ it('testBasicDateTicker', function() {
       {"v": 631152000000, "label":"1990"},
       {"v": 946684800000, "label":"2000"}
   ];
-  assert.equal(expected_ticks, ticks);
+  assert.deepEqual(expected_ticks, ticks);
   
   var start = Date.UTC(1999, 11, 31, 14, 0, 0);
   var end = Date.UTC(2000,  0,  1, 12, 0, 0);
-  var granularity = Dygraph.TWO_HOURLY;
-  ticks = Dygraph.getDateAxis(start, end, granularity, options);
+  var granularity = DygraphTickers.Granularity.TWO_HOURLY;
+  ticks = DygraphTickers.getDateAxis(start, end, granularity, options);
   changeNbspToSpace(ticks);
   expected_ticks = [ // months of the year are zero-based.
       {v: Date.UTC(1999, 11, 31, 14, 0, 0), label: '14:00'},
@@ -74,7 +75,7 @@ it('testBasicDateTicker', function() {
       {v: Date.UTC(2000,  0,  1, 10, 0, 0), label: '10:00'},
       {v: Date.UTC(2000,  0,  1, 12, 0, 0), label: '12:00'}
   ];
-  assert.equal(expected_ticks, ticks);
+  assert.deepEqual(expected_ticks, ticks);
 });
 
 it('testAllDateTickers', function() {
@@ -86,7 +87,7 @@ it('testAllDateTickers', function() {
   // In these tests, those spurious ticks are removed to test new behavior.
 
   var ticker = function() {
-    var ticks = Dygraph.dateTicker.apply(null, arguments);
+    var ticks = DygraphTickers.dateTicker.apply(null, arguments);
     changeNbspToSpace(ticks);
     return ticks;
   };
@@ -262,6 +263,19 @@ it('testAllDateTickers', function() {
   assert.deepEqual([{"v":1307908020000,"label":"19:47"},{"v":1307908050000,"label":"19:47:30"},{"v":1307908080000,"label":"19:48"},{"v":1307908110000,"label":"19:48:30"},{"v":1307908140000,"label":"19:49"},{"v":1307908170000,"label":"19:49:30"}], ticker(1307908000112, 1307908172259, 800, options));
   assert.deepEqual([{"v":1307908020000,"label":"19:47"},{"v":1307908050000,"label":"19:47:30"},{"v":1307908080000,"label":"19:48"},{"v":1307908110000,"label":"19:48:30"},{"v":1307908140000,"label":"19:49"},{"v":1307908170000,"label":"19:49:30"}], ticker(1307908000112, 1307908173260, 800, options));
   assert.deepEqual([{"v":978307200000,"label":"Jan 2001"},{"v":986083200000,"label":"Apr 2001"},{"v":993945600000,"label":"Jul 2001"},{"v":1001894400000,"label":"Oct 2001"}], ticker(978307200000, 1001894400000, 400, options));
+
+  assert.deepEqual([{"v":1307908000110,"label":"40.110"},{"v":1307908000111,"label":"40.111"},{"v":1307908000112,"label":"40.112"},{"v":1307908000113,"label":"40.113"}], ticker(1307908000110, 1307908000113, 200, options));
+  assert.deepEqual([{"v":1307908000110,"label":"40.110"},{"v":1307908000112,"label":"40.112"},{"v":1307908000114,"label":"40.114"},{"v":1307908000116,"label":"40.116"}], ticker(1307908000110, 1307908000116, 200, options));
+  assert.deepEqual([{"v":1307908000110,"label":"40.110"},{"v":1307908000115,"label":"40.115"},{"v":1307908000120,"label":"40.120"},{"v":1307908000125,"label":"40.125"}], ticker(1307908000110, 1307908000125, 200, options));
+  assert.deepEqual([{"v":1307908000110,"label":"40.110"},{"v":1307908000120,"label":"40.120"},{"v":1307908000130,"label":"40.130"},{"v":1307908000140,"label":"40.140"}], ticker(1307908000110, 1307908000140, 200, options));
+
+  assert.deepEqual([{"v":1307908000100,"label":"40.100"},{"v":1307908000150,"label":"40.150"},{"v":1307908000200,"label":"40.200"},{"v":1307908000250,"label":"40.250"}], ticker(1307908000100, 1307908000250, 200, options));
+  assert.deepEqual([{"v":1307908000100,"label":"40.100"},{"v":1307908000150,"label":"40.150"},{"v":1307908000200,"label":"40.200"},{"v":1307908000250,"label":"40.250"}], ticker(1307908000090, 1307908000260, 200, options));
+
+  assert.deepEqual([{"v":1307908000100,"label":"40.100"},{"v":1307908000200,"label":"40.200"},{"v":1307908000300,"label":"40.300"},{"v":1307908000400,"label":"40.400"}], ticker(1307908000100, 1307908000400, 200, options));
+  assert.deepEqual([{"v":1307908000100,"label":"40.100"},{"v":1307908000200,"label":"40.200"},{"v":1307908000300,"label":"40.300"},{"v":1307908000400,"label":"40.400"}], ticker(1307908000100, 1307908000410, 200, options));
+
+  assert.deepEqual([{"v":1307908000000,"label":"40.000"},{"v":1307908000500,"label":"40.500"},{"v":1307908001000,"label":"41.000"},{"v":1307908001500,"label":"41.500"}], ticker(1307908000000, 1307908001500, 200, options));
 });
 
 });