]> git.pond.sub.org Git - eow/blob - static/dojo-release-1.1.1/dojo/tests/date/stamp.js
add Dojo 1.1.1
[eow] / static / dojo-release-1.1.1 / dojo / tests / date / stamp.js
1 if(!dojo._hasResource["tests.date.stamp"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
2 dojo._hasResource["tests.date.stamp"] = true;
3 dojo.provide("tests.date.stamp");
4
5 dojo.require("dojo.date.stamp");
6
7 tests.register("tests.date.stamp", 
8         [
9 function test_date_iso(t){
10         var rfc  = "2005-06-29T08:05:00-07:00";
11         var date = dojo.date.stamp.fromISOString(rfc);
12         t.is(2005,date.getFullYear());
13         t.is(5,date.getMonth());
14         t.is(29,date.getUTCDate());
15         t.is(15,date.getUTCHours());
16         t.is(5,date.getMinutes());
17         t.is(0,date.getSeconds());
18
19         rfc  = "2004-02-29";
20         date = dojo.date.stamp.fromISOString(rfc);
21         t.is(2004,date.getFullYear());
22         t.is(1,date.getMonth());
23         t.is(29,date.getDate());
24
25         rfc  = "2004-01";
26         date = dojo.date.stamp.fromISOString(rfc);
27         t.is(2004,date.getFullYear());
28         t.is(0,date.getMonth());
29         t.is(1,date.getDate());
30
31         // No TZ info means local time
32         rfc  = "2004-02-29T01:23:45";
33         date = dojo.date.stamp.fromISOString(rfc);
34         t.is(2004,date.getFullYear());
35         t.is(1,date.getMonth());
36         t.is(29,date.getDate());
37         t.is(1,date.getHours());
38
39         date = new Date(2005,5,29,8,5,0);
40         rfc = dojo.date.stamp.toISOString(date);
41         //truncate for comparison
42         t.is("2005-06",rfc.substring(0,7));
43
44         date = new Date(101,0,2);
45         date.setFullYear(101);
46         rfc = dojo.date.stamp.toISOString(date);
47         //truncate for comparison
48         t.is("0101-01",rfc.substring(0,7));
49
50         rfc  = "0101-01-01";
51         date = dojo.date.stamp.fromISOString(rfc);
52         t.is(101,date.getFullYear());
53         t.is(0,date.getMonth());
54         t.is(1,date.getDate());
55
56         date = dojo.date.stamp.fromISOString("T18:46:39");
57         t.is(18, date.getHours());
58         t.is(46, date.getMinutes());
59         t.is(39, date.getSeconds());
60 },
61
62 function test_date_iso_tz(t){
63
64         //23:59:59.9942 or 235959.9942
65 //      var date = dojo.date.stamp.fromISOString("T18:46:39.9942");
66 //      t.is(18, date.getHours());
67 //      t.is(46, date.getMinutes());
68 //      t.is(39, date.getSeconds());
69 //      t.is(994, date.getMilliseconds());
70         
71         //1995-02-04 24:00 = 1995-02-05 00:00
72
73         //timezone tests
74         var offset = new Date().getTimezoneOffset()/60;
75         date = dojo.date.stamp.fromISOString("T18:46:39+07:00");
76         t.is(11, date.getUTCHours());
77
78         date = dojo.date.stamp.fromISOString("T18:46:39+00:00");
79         t.is(18, date.getUTCHours());
80
81         date = dojo.date.stamp.fromISOString("T18:46:39Z");
82         t.is(18, date.getUTCHours());
83
84         date = dojo.date.stamp.fromISOString("T16:46:39-07:00");
85         t.is(23, date.getUTCHours());
86         
87         //+hh:mm, +hhmm, or +hh
88         
89         //-hh:mm, -hhmm, or -hh
90         }
91         ]
92 );
93
94 }