Dygraph.dateString_: shows milliseconds if any. (#774)
[dygraphs.git] / auto_tests / tests / date_formats.js
CommitLineData
769e8bc7
DV
1/**
2 * @fileoverview Tests that various formats of date are understood by dygraphs.
3 *
4 * @author dan@dygraphs.com (Dan Vanderkam)
5 */
769e8bc7 6
e8c70e4e 7import * as utils from '../../src/dygraph-utils';
769e8bc7 8
e8c70e4e 9describe("date-formats", function() {
769e8bc7 10
89fdcedb 11it('testISO8601', function() {
769e8bc7
DV
12 // Format: YYYY-MM-DDTHH:MM:SS.ddddddZ
13 // The "Z" indicates UTC, so this test should pass regardless of the time
14 // zone of the machine on which it is run.
3438387b
DV
15
16 // Firefox <4 does not support this format:
17 // https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date/parse
0049ceb7 18 if (navigator.userAgent.indexOf("Firefox/3.5") == -1) {
e8c70e4e 19 assert.equal(946816496789, utils.dateParser("2000-01-02T12:34:56.789012Z"));
3438387b 20 }
89fdcedb 21});
769e8bc7 22
89fdcedb 23it('testHyphenatedDate', function() {
769e8bc7
DV
24 // Format: YYYY-MM-DD HH:MM
25
26 // Midnight February 2, 2000, UTC
27 var d = new Date(Date.UTC(2000, 1, 2));
28
29 // Convert to a string in the local time zone: YYYY-DD-MM HH:MM
30 var zp = function(x) { return x < 10 ? '0' + x : x; };
31 var str = d.getFullYear() + '-' +
32 zp(1 + d.getMonth()) + '-' +
33 zp(d.getDate()) + ' ' +
34 zp(d.getHours()) + ':' +
35 zp(d.getMinutes());
e8c70e4e 36 assert.equal(Date.UTC(2000, 1, 2), utils.dateParser(str));
89fdcedb
DV
37});
38
2d0fdf6e
PK
39it('testMillisecondsDate', function() {
40 // Format: YYYY-MM-DD HH:MM:SS.MS
41
42 // Midnight February 2, 2000 14:25:42.123 UTC
43 var ts = Date.UTC(2000, 1, 2, 14, 25, 42, 123);
44 assert.equal("2000/02/02 14:25:42.123", utils.dateString_(ts, true));
45});
46
89fdcedb 47});