1 USING: calendar.format calendar kernel math tools.test
2 io.streams.string accessors io math.order sequences ;
3 IN: calendar.format.tests
6 "Z" [ read1 read-rfc3339-gmt-offset ] with-string-reader duration>hours
10 "+01" [ read1 read-rfc3339-gmt-offset ] with-string-reader duration>hours
14 "-01" [ read1 read-rfc3339-gmt-offset ] with-string-reader duration>hours
18 "-01:30" [ read1 read-rfc3339-gmt-offset ] with-string-reader duration>hours
22 "+01:30" [ read1 read-rfc3339-gmt-offset ] with-string-reader duration>hours
25 [ ] [ now timestamp>rfc3339 drop ] unit-test
26 [ ] [ now timestamp>rfc822 drop ] unit-test
29 "2008-04-19T04:56:00.008-04:00" rfc3339>timestamp
30 [ second>> ] [ gmt-offset>> hour>> ] bi
33 [ T{ duration f 0 0 0 0 0 0 } ] [
34 "GMT" parse-rfc822-gmt-offset
37 [ T{ duration f 0 0 0 -5 0 0 } ] [
38 "-0500" parse-rfc822-gmt-offset
41 [ T{ timestamp f 2008 4 22 14 36 12 T{ duration f 0 0 0 0 0 0 } } ] [
42 "Tue, 22 Apr 2008 14:36:12 GMT" rfc822>timestamp
45 [ t ] [ now dup timestamp>rfc822 rfc822>timestamp time- 1 seconds before? ] unit-test
47 [ t ] [ now dup timestamp>cookie-string cookie-string>timestamp time- 1 seconds before? ] unit-test
49 [ "Sun, 4 May 2008 07:00:00" ] [
50 "Sun May 04 07:00:00 2008 GMT" cookie-string>timestamp
54 [ "20080504070000" ] [
55 "Sun May 04 07:00:00 2008 GMT" cookie-string>timestamp
67 T{ duration f 0 0 0 -5 0 0 }
69 ] [ "2008-05-26T00:37:42.12345-05:00" rfc3339>timestamp ] unit-test
79 { gmt-offset T{ duration f 0 0 0 0 0 0 } }
81 ] [ "Thursday, 02-Oct-2008 23:59:59 GMT" cookie-string>timestamp ] unit-test
85 [ { 2008 2009 } [ year. ] each ] unit-test
96 ] [ "2013-04-23T13:50:24" rfc3339>timestamp ] unit-test
98 { "2001-12-14T21:59:43.100000-05:00" } [ "2001-12-14T21:59:43.1-05:00" rfc3339>timestamp timestamp>rfc3339 ] unit-test
109 ] [ "2001-12-15 02:59:43.1Z" rfc3339>timestamp ] unit-test
120 ] [ "2001-12-15 02:59:43.1Z" rfc3339>timestamp ] unit-test