source: Dev/trunk/src/client/dojo/tests/date/stamp.js @ 528

Last change on this file since 528 was 483, checked in by hendrikvanantwerpen, 11 years ago

Added Dojo 1.9.3 release.

File size: 2.3 KB
Line 
1define(["doh", "dojo/date/stamp"], function(doh, stamp){
2
3
4doh.register("tests.date.stamp", [
5
6function test_date_iso(t){
7        var rfc  = "2005-06-29T08:05:00-07:00";
8        var date = stamp.fromISOString(rfc);
9        t.is(2005,date.getFullYear());
10        t.is(5,date.getMonth());
11        t.is(29,date.getUTCDate());
12        t.is(15,date.getUTCHours());
13        t.is(5,date.getUTCMinutes());
14        t.is(0,date.getSeconds());
15
16        rfc  = "2004-02-29";
17        date = stamp.fromISOString(rfc);
18        t.is(2004,date.getFullYear());
19        t.is(1,date.getMonth());
20        t.is(29,date.getDate());
21
22        rfc  = "2004-01";
23        date = stamp.fromISOString(rfc);
24        t.is(2004,date.getFullYear());
25        t.is(0,date.getMonth());
26        t.is(1,date.getDate());
27
28        // No TZ info means local time
29        rfc  = "2004-02-29T01:23:45";
30        date = stamp.fromISOString(rfc);
31        t.is(2004,date.getFullYear());
32        t.is(1,date.getMonth());
33        t.is(29,date.getDate());
34        t.is(1,date.getHours());
35
36        date = new Date(2005,5,29,8,5,0);
37        rfc = stamp.toISOString(date);
38        //truncate for comparison
39        t.is("2005-06",rfc.substring(0,7));
40
41        date = new Date(101,0,2);
42        date.setFullYear(101);
43        rfc = stamp.toISOString(date);
44        //truncate for comparison
45        t.is("0101-01",rfc.substring(0,7));
46
47        rfc  = "0101-01-01";
48        date = stamp.fromISOString(rfc);
49        t.is(101,date.getFullYear());
50        t.is(0,date.getMonth());
51        t.is(1,date.getDate());
52
53        rfc = "0001-01T00:00:00";
54        date = stamp.fromISOString(rfc);
55        t.is(1,date.getFullYear());
56
57        date = stamp.fromISOString("T18:46:39");
58        t.is(18, date.getHours());
59        t.is(46, date.getMinutes());
60        t.is(39, date.getSeconds());
61},
62
63function test_date_iso_tz(t){
64
65        //23:59:59.9942 or 235959.9942
66//      var date = stamp.fromISOString("T18:46:39.9942");
67//      t.is(18, date.getHours());
68//      t.is(46, date.getMinutes());
69//      t.is(39, date.getSeconds());
70//      t.is(994, date.getMilliseconds());
71       
72        //1995-02-04 24:00 = 1995-02-05 00:00
73
74        //timezone tests
75        var offset = new Date().getTimezoneOffset()/60;
76        date = stamp.fromISOString("T18:46:39+07:00");
77        t.is(11, date.getUTCHours());
78
79        date = stamp.fromISOString("T18:46:39+00:00");
80        t.is(18, date.getUTCHours());
81
82        date = stamp.fromISOString("T18:46:39Z");
83        t.is(18, date.getUTCHours());
84
85        date = stamp.fromISOString("T16:46:39-07:00");
86        t.is(23, date.getUTCHours());
87       
88        date = stamp.fromISOString("T00:00:00Z", new Date(2010,3,1));
89        t.is(0, date.getUTCHours());
90        t.is(2010, date.getFullYear());
91       
92        //+hh:mm, +hhmm, or +hh
93       
94        //-hh:mm, -hhmm, or -hh
95}
96]);
97
98});
Note: See TracBrowser for help on using the repository browser.