author | Claus Gittinger <cg@exept.de> |
Thu, 17 May 2018 23:12:15 +0200 | |
changeset 1936 | 023087e8177f |
parent 1927 | ac82d7231d95 |
child 1940 | 8e0e4fbf523d |
permissions | -rw-r--r-- |
1924 | 1 |
"{ Encoding: utf8 }" |
2 |
||
1447 | 3 |
"{ Package: 'stx:goodies/regression' }" |
346 | 4 |
|
5 |
"{ NameSpace: RegressionTests }" |
|
6 |
||
7 |
TestCase subclass:#TimeAndDateTest |
|
8 |
instanceVariableNames:'' |
|
9 |
classVariableNames:'' |
|
10 |
poolDictionaries:'' |
|
1077 | 11 |
category:'tests-Regression-DateAndTime' |
346 | 12 |
! |
13 |
||
14 |
||
15 |
!TimeAndDateTest methodsFor:'Testing'! |
|
16 |
||
1886 | 17 |
test_01a_ReadingTimes |
18 |
self assert:(Time readFrom:'0:00' ) = (Time hours:0 minutes:0 seconds:0). |
|
19 |
self assert:(Time readFrom:'2:00' ) = (Time hours:2 minutes:0 seconds:0). |
|
20 |
self assert:(Time readFrom:'12:00' ) = (Time hours:12 minutes:0 seconds:0). |
|
21 |
self assert:(Time readFrom:'14:00' ) = (Time hours:14 minutes:0 seconds:0). |
|
22 |
self assert:(Time readFrom:'23:00' ) = (Time hours:23 minutes:0 seconds:0). |
|
346 | 23 |
|
1886 | 24 |
self assert:(Time readFrom:'18:22:00') = (Time hours:18 minutes:22 seconds:0). |
25 |
self assert:(Time readFrom:'14:00:11') = (Time hours:14 minutes:0 seconds:11). |
|
26 |
self assert:(Time readFrom:'7:00:11' ) = (Time hours:7 minutes:0 seconds:11). |
|
27 |
self assert:(Time readFrom:'0:00:00' ) = (Time hours:0 minutes:0 seconds:0). |
|
28 |
self assert:(Time readFrom:'12:00:00') = (Time hours:12 minutes:0 seconds:0). |
|
29 |
self assert:(Time readFrom:'0:00:00' ) = (Time hours:0 minutes:0 seconds:0). |
|
30 |
||
31 |
self assert:(Time readFrom:'14' ) = (Time hours:14 minutes:0 seconds:0). |
|
32 |
||
33 |
self assert:(Time readFrom:'2 am' ) = (Time hours:2 minutes:0 seconds:0). |
|
34 |
self assert:(Time readFrom:'2 pm' ) = (Time hours:14 minutes:0 seconds:0). |
|
346 | 35 |
|
1886 | 36 |
self assert:(Time readFrom:'2:30 am' ) = (Time hours:2 minutes:30 seconds:0). |
37 |
self assert:(Time readFrom:'2:30 pm' ) = (Time hours:14 minutes:30 seconds:0). |
|
38 |
self assert:(Time readFrom:'12:05 pm') = (Time hours:12 minutes:5 seconds:0). |
|
39 |
self assert:(Time readFrom:'12:06 am') = (Time hours:0 minutes:6 seconds:0). |
|
40 |
||
41 |
self assert:(Time readFrom:'6:22:00 pm' ) = (Time hours:18 minutes:22 seconds:0). |
|
42 |
self assert:(Time readFrom:'2:00:11 pm' ) = (Time hours:14 minutes:0 seconds:11). |
|
43 |
self assert:(Time readFrom:'7:00:11 am' ) = (Time hours:7 minutes:0 seconds:11). |
|
44 |
self assert:(Time readFrom:'12:00:00 am') = (Time hours:0 minutes:0 seconds:0). |
|
45 |
self assert:(Time readFrom:'0:00:00 am' ) = (Time hours:0 minutes:0 seconds:0). |
|
46 |
self assert:(Time readFrom:'12:00:00 pm') = (Time hours:12 minutes:0 seconds:0). |
|
47 |
self assert:(Time readFrom:'0:00:00 pm' onError:'invalid') = 'invalid'. |
|
48 |
||
49 |
self assert:(Time readFrom:'24:00' ) = (Time hours:0 minutes:0 seconds:0). |
|
50 |
self assert:(Time readFrom:'24:00:00') = (Time hours:0 minutes:0 seconds:0). |
|
51 |
||
52 |
self should:[Time readFrom:'24:00:00 am' ] raise:TimeConversionError. |
|
53 |
self should:[Time readFrom:'24:00:00 pm' ] raise:TimeConversionError. |
|
346 | 54 |
|
55 |
" |
|
1886 | 56 |
self new test_01a_ReadingTimes |
57 |
" |
|
58 |
||
59 |
"Created: / 09-11-2017 / 10:17:37 / cg" |
|
60 |
! |
|
61 |
||
62 |
test_01b_ReadingTimeDurations |
|
63 |
self assert:(TimeDuration readFrom:'0:00' ) = (TimeDuration hours:0 minutes:0 seconds:0). |
|
64 |
self assert:(TimeDuration readFrom:'2:00' ) = (TimeDuration hours:2 minutes:0 seconds:0). |
|
65 |
self assert:(TimeDuration readFrom:'12:00' ) = (TimeDuration hours:12 minutes:0 seconds:0). |
|
66 |
self assert:(TimeDuration readFrom:'14:00' ) = (TimeDuration hours:14 minutes:0 seconds:0). |
|
67 |
self assert:(TimeDuration readFrom:'23:00' ) = (TimeDuration hours:23 minutes:0 seconds:0). |
|
68 |
||
69 |
self assert:(TimeDuration readFrom:'18:22:00') = (TimeDuration hours:18 minutes:22 seconds:0). |
|
70 |
self assert:(TimeDuration readFrom:'14:00:11') = (TimeDuration hours:14 minutes:0 seconds:11). |
|
71 |
self assert:(TimeDuration readFrom:'7:00:11' ) = (TimeDuration hours:7 minutes:0 seconds:11). |
|
72 |
self assert:(TimeDuration readFrom:'0:00:00' ) = (TimeDuration hours:0 minutes:0 seconds:0). |
|
73 |
self assert:(TimeDuration readFrom:'12:00:00') = (TimeDuration hours:12 minutes:0 seconds:0). |
|
74 |
self assert:(TimeDuration readFrom:'0:00:00' ) = (TimeDuration hours:0 minutes:0 seconds:0). |
|
75 |
||
76 |
self assert:(TimeDuration readFrom:'14' ) = (TimeDuration hours:0 minutes:0 seconds:14). |
|
77 |
||
78 |
" |
|
79 |
self new test_01b_ReadingTimeDurations |
|
346 | 80 |
" |
1652 | 81 |
|
1886 | 82 |
"Created: / 09-11-2017 / 10:16:58 / cg" |
83 |
! |
|
84 |
||
85 |
test_01c_ReadingTimeStamps |
|
1924 | 86 |
|t| |
87 |
||
1886 | 88 |
self assert:(Timestamp readFrom:'2017-11-09 10:18:03.236') = (Timestamp year:2017 month:11 day:9 hour:10 minute:18 second:3 millisecond:236). |
89 |
||
90 |
"/ standard format |
|
91 |
self assert:(Timestamp readFrom:'2017-11-09') = (Timestamp year:2017 month:11 day:9 hour:0 minute:0 second:0). |
|
92 |
||
93 |
"/ US format |
|
94 |
self assert:(Timestamp readFrom:'12/09/2017') = (Timestamp year:2017 month:12 day:9 hour:0 minute:0 second:0). |
|
95 |
||
96 |
"/ european format |
|
97 |
self assert:(Timestamp readFrom:'9.11.2017') = (Timestamp year:2017 month:11 day:9 hour:0 minute:0 second:0). |
|
98 |
||
99 |
"/ explicit format |
|
100 |
self assert:(Timestamp readFrom:'9-nov-2017') = (Timestamp year:2017 month:11 day:9 hour:0 minute:0 second:0). |
|
101 |
"/ explicit format |
|
102 |
self assert:(Timestamp readFrom:'9. nov 2017') = (Timestamp year:2017 month:11 day:9 hour:0 minute:0 second:0). |
|
103 |
"/ explicit format |
|
104 |
self assert:(Timestamp readFrom:'9 nov 2017') = (Timestamp year:2017 month:11 day:9 hour:0 minute:0 second:0). |
|
105 |
||
1924 | 106 |
"/ milliseconds |
107 |
t := Timestamp readFrom:'2017-11-09 10:18:03.123'. |
|
108 |
self assert:(t milliseconds = 123). |
|
109 |
||
110 |
"/ microseconds |
|
111 |
t := Timestamp readFrom:'2017-11-09 10:18:03.123456'. |
|
112 |
self assert:(t microseconds = 123456). |
|
113 |
||
114 |
"/ nanoseconds |
|
115 |
t := Timestamp readFrom:'2017-11-09 10:18:03.123456789'. |
|
116 |
self assert:(t nanoseconds = 123456789). |
|
117 |
||
118 |
"/ picoseconds |
|
119 |
t := Timestamp readFrom:'2017-11-09 10:18:03.123456789012'. |
|
120 |
self assert:(t picoseconds = 123456789012). |
|
121 |
||
122 |
self assert:(t := Timestamp readFrom:'20-2-1995 13:11:06' format:'%day-%month-%year %h:%m:%s' language:nil onError:[self error] |
|
123 |
) = (Timestamp year:1995 month:2 day:20 hour:13 minute:11 second:6 millisecond:0). |
|
124 |
self assert:(t := Timestamp readFrom:'20021995131106' format:'%2d%2month%4y%2h%2m%2s' language:nil onError:[self error] |
|
125 |
) = (Timestamp year:1995 month:2 day:20 hour:13 minute:11 second:6 millisecond:0). |
|
126 |
self assert:(t := Timestamp readFrom:'200295131106' format:'%2d%2month%2y%2h%2m%2s' language:nil onError:[self error] |
|
127 |
) = (Timestamp year:95 month:2 day:20 hour:13 minute:11 second:6 millisecond:0). |
|
128 |
self assert:(t := Timestamp readFrom:'200260131106' format:'%2d%2month%2(y1900)%2h%2m%2s' language:nil onError:[self error] |
|
129 |
) = (Timestamp year:1960 month:2 day:20 hour:13 minute:11 second:6 millisecond:0). |
|
130 |
self assert:(t := Timestamp readFrom:'200260131106' format:'%2d%2month%2(y2000)%2h%2m%2s' language:nil onError:[self error] |
|
131 |
) = (Timestamp year:2060 month:2 day:20 hour:13 minute:11 second:6 millisecond:0). |
|
132 |
self assert:(t := Timestamp readFrom:'200260131106' format:'%2d%2month%2(y1950)%2h%2m%2s' language:nil onError:[self error] |
|
133 |
) = (Timestamp year:1960 month:2 day:20 hour:13 minute:11 second:6 millisecond:0). |
|
134 |
self assert:(t := Timestamp readFrom:'200260131106' format:'%2d%2month%2(y1980)%2h%2m%2s' language:nil onError:[self error] |
|
135 |
) = (Timestamp year:2060 month:2 day:20 hour:13 minute:11 second:6 millisecond:0). |
|
136 |
self assert:(t := Timestamp readFrom:'March 7 2009 2:30pm ' format:'%monthName %day %year %u:%m%a' language:#en onError:[self error] |
|
137 |
) = (Timestamp year:2009 month:3 day:7 hour:14 minute:30 second:0 millisecond:0). "/ EST is 5hrs behind |
|
138 |
self assert:(t := Timestamp readFrom:'March 7 2009 2:30am ' format:'%monthName %day %year %u:%m%a' language:#en onError:[self error] |
|
139 |
) = (Timestamp year:2009 month:3 day:7 hour:2 minute:30 second:0 millisecond:0). "/ EST is 5hrs behind |
|
140 |
||
1927 | 141 |
"/ Timestamp readIso8601FormatFrom:'20090307T183000-05' |
142 |
"/ Timestamp readIso8601FormatFrom:'20090307T233000Z' |
|
143 |
self assert:(t := Timestamp readFrom:'March 7 2009 6:30pm EST' format:'%monthName %day %year %u:%m%a %tz' language:#en onError:[self error] |
|
144 |
) = (UtcTimestamp year:2009 month:3 day:7 hour:23 minute:30 second:0 millisecond:0). "/ EST is 5hrs behind |
|
1924 | 145 |
|
146 |
self assert:(t := Timestamp readFrom:'March 7 2009 7:30pm UTC' format:'%monthName %day %year %u:%m%a %tz' language:#en onError:[self error] |
|
1927 | 147 |
) = (UtcTimestamp year:2009 month:3 day:7 hour:19 minute:30 second:0 millisecond:0). |
1924 | 148 |
|
149 |
self assert:(t := Timestamp readFrom:'2015103' format:'%4y%3dayOfYear' onError:[self error] |
|
1927 | 150 |
) = (Timestamp year:2015 month:4 day:13 hour:0 minute:0 second:0 millisecond:0). |
151 |
self assert:t asDate dayOfYear == 103. |
|
1924 | 152 |
|
153 |
self assert:(t := Timestamp readFrom:'20-2-1995 13:11:06.999' format:'%day-%month-%year %h:%m:%s.%i' language:nil onError:[self error] |
|
154 |
) = (Timestamp year:1995 month:2 day:20 hour:13 minute:11 second:6 millisecond:999). |
|
155 |
self assert:(t := Timestamp readFrom:'20-2-1995 13:11:06.100' format:'%day-%month-%year %h:%m:%s.%i' language:nil onError:[self error] |
|
156 |
) = (Timestamp year:1995 month:2 day:20 hour:13 minute:11 second:6 millisecond:100). |
|
157 |
self assert:(t := Timestamp readFrom:'20-2-1995 13:11:06.010' format:'%day-%month-%year %h:%m:%s.%i' language:nil onError:[self error] |
|
1927 | 158 |
) = (Timestamp year:1995 month:2 day:20 hour:13 minute:11 second:6 millisecond:10). |
1924 | 159 |
|
160 |
self assert:(t := Timestamp readFrom:'20-2-1995 13:11:06.1' format:'%day-%month-%year %h:%m:%s.%f' language:nil onError:[self error] |
|
161 |
) = (Timestamp year:1995 month:2 day:20 hour:13 minute:11 second:6 millisecond:100). |
|
162 |
self assert:(t := Timestamp readFrom:'20-2-1995 13:11:06.01' format:'%day-%month-%year %h:%m:%s.%f' language:nil onError:[self error] |
|
163 |
) = (Timestamp year:1995 month:2 day:20 hour:13 minute:11 second:6 millisecond:10). |
|
164 |
self assert:(t := Timestamp readFrom:'20-2-1995 13:11:06.001' format:'%day-%month-%year %h:%m:%s.%f' language:nil onError:[self error] |
|
165 |
) = (Timestamp year:1995 month:2 day:20 hour:13 minute:11 second:6 millisecond:1). |
|
1927 | 166 |
|
1924 | 167 |
self assert:(t := Timestamp readFrom:'20-2-1995 13:11:06.12345' format:'%day-%month-%year %h:%m:%s.%f' language:nil onError:[self error] |
1927 | 168 |
) = (Timestamp year:1995 month:2 day:20 hour:13 minute:11 second:6 microsecond:123000). |
169 |
||
170 |
self assert:(t := Timestamp readFrom:'20-2-1995 13:11:06.12345' format:'%day-%month-%year %h:%m:%s.%F' language:nil onError:[self error] |
|
1924 | 171 |
) = (Timestamp year:1995 month:2 day:20 hour:13 minute:11 second:6 microsecond:123450). |
172 |
||
1927 | 173 |
self assert:(t := Timestamp readFrom:'20-2-1995 13:11:06.12345678' format:'%day-%month-%year %h:%m:%s.%F' language:nil onError:[self error] |
174 |
) = ((Timestamp year:1995 month:2 day:20 hour:13 minute:11 second:6)+123456780 nanoseconds). |
|
175 |
||
176 |
self assert:(t := Timestamp readFrom:'20-2-1995 13:11:06.123456' format:'%day-%month-%year %h:%m:%s.%F' language:nil onError:[self error] |
|
177 |
) = ((Timestamp year:1995 month:2 day:20 hour:13 minute:11 second:6)+123456 microseconds). |
|
178 |
||
179 |
self assert:(t := Timestamp readFrom:'20-2-1995 13:11:06.123456789' format:'%day-%month-%year %h:%m:%s.%F' language:nil onError:[self error] |
|
180 |
) = ((Timestamp year:1995 month:2 day:20 hour:13 minute:11 second:6)+123456789 nanoseconds). |
|
181 |
||
182 |
self assert:(t := Timestamp readFrom:'20-2-1995 13:11:06.123456789012' format:'%day-%month-%year %h:%m:%s.%F' language:nil onError:[self error] |
|
183 |
) = ((Timestamp year:1995 month:2 day:20 hour:13 minute:11 second:6)+123456789012 picoseconds). |
|
184 |
||
1886 | 185 |
" |
186 |
self new test_01c_ReadingTimeStamps |
|
187 |
" |
|
188 |
||
189 |
"Created: / 09-11-2017 / 10:19:19 / cg" |
|
365 | 190 |
! |
191 |
||
192 |
test_02_ReadingDates |
|
193 |
||
1447 | 194 |
self assert:(Date |
195 |
readFrom:'2-may-2010' |
|
196 |
printFormat:'%d-%shortMonthName-%y' |
|
197 |
language:'en' |
|
198 |
onError:[self error] |
|
199 |
) = (Date newDay:2 month:5 year:2010). |
|
365 | 200 |
|
736 | 201 |
{ |
1447 | 202 |
{ '3-jan-2012' . (Date newDay:3 month:1 year:2012) } . |
203 |
{ '15-feb-2012' . (Date newDay:15 month:2 year:2012) } . |
|
204 |
{ '06-mar-2011' . (Date newDay:6 month:3 year:2011) } . |
|
205 |
{ '19-apr-2013' . (Date newDay:19 month:4 year:2013) } . |
|
206 |
{ '21-may-2015' . (Date newDay:21 month:5 year:2015) } . |
|
207 |
{ '21-jun-2015' . (Date newDay:21 month:6 year:2015) } . |
|
208 |
{ '21-jul-2015' . (Date newDay:21 month:7 year:2015) } . |
|
209 |
{ '21-aug-2015' . (Date newDay:21 month:8 year:2015) } . |
|
210 |
{ '21-sep-2015' . (Date newDay:21 month:9 year:2015) } . |
|
211 |
{ '21-oct-2015' . (Date newDay:21 month:10 year:2015) } . |
|
212 |
{ '21-nov-2015' . (Date newDay:21 month:11 year:2015) } . |
|
213 |
{ '21-dec-2015' . (Date newDay:21 month:12 year:2015) } . |
|
736 | 214 |
} do:[:eachTestPair | |
1447 | 215 |
self assert:(Date |
216 |
readFrom:(eachTestPair first) |
|
217 |
printFormat:'%d-%shortMonthName-%y' |
|
218 |
language:'en' |
|
219 |
onError:[self error] |
|
220 |
) = (eachTestPair second). |
|
736 | 221 |
]. |
222 |
||
1447 | 223 |
self assert:(Date |
224 |
readFrom:'2-may-2010' |
|
225 |
printFormat:'%d-%monthName-%y' |
|
226 |
language:'en' |
|
227 |
onError:[self error] |
|
228 |
) = (Date newDay:2 month:5 year:2010). |
|
365 | 229 |
|
1447 | 230 |
self assert:(Date |
231 |
readFrom:'2-may-2010' |
|
232 |
printFormat:'%d-%(shortMonthName)-%y' |
|
233 |
language:'en' |
|
234 |
onError:[self error] |
|
235 |
) = (Date newDay:2 month:5 year:2010). |
|
366 | 236 |
|
1447 | 237 |
self assert:(Date |
238 |
readFrom:'2-may-2010' |
|
239 |
printFormat:'%d-%(monthName)-%y' |
|
240 |
language:'en' |
|
241 |
onError:[self error] |
|
242 |
) = (Date newDay:2 month:5 year:2010). |
|
366 | 243 |
|
1447 | 244 |
self assert:(Date |
245 |
readFrom:'2-5-2010' |
|
246 |
printFormat:'%d-%m-%y' |
|
247 |
onError:[self error] |
|
248 |
) = (Date newDay:2 month:5 year:2010). |
|
365 | 249 |
|
1447 | 250 |
self assert:(Date |
251 |
readFrom:'5/2/2010' |
|
252 |
printFormat:'%m/%d/%y' |
|
253 |
onError:[self error] |
|
254 |
) = (Date newDay:2 month:5 year:2010). |
|
365 | 255 |
|
1447 | 256 |
self assert:(Date |
257 |
readFrom:'2010-5-2' |
|
258 |
printFormat:'%y-%m-%d' |
|
259 |
onError:[self error] |
|
260 |
) = (Date newDay:2 month:5 year:2010). |
|
365 | 261 |
|
262 |
" |
|
263 |
self new test_02_ReadingDates |
|
264 |
" |
|
736 | 265 |
! |
266 |
||
267 |
test_03_calenderWeek |
|
268 |
self assert:(Date newDay:5 month:11 year:2012) weekInYear == 45. |
|
269 |
self assert:(Date newDay:11 month:11 year:2012) weekInYear == 45. |
|
270 |
||
271 |
self assert:(Date newDay:4 month:11 year:2012) weekInYear == 44. |
|
272 |
self assert:(Date newDay:12 month:11 year:2012) weekInYear == 46. |
|
273 |
||
737
06d8d2821c46
changed: #test_03_calenderWeek
Claus Gittinger <cg@exept.de>
parents:
736
diff
changeset
|
274 |
self assert:(Date newDay:29 month:12 year:2014) weekInYear == 1. "/ YES!! |
06d8d2821c46
changed: #test_03_calenderWeek
Claus Gittinger <cg@exept.de>
parents:
736
diff
changeset
|
275 |
self assert:(Date newDay:30 month:12 year:2014) weekInYear == 1. "/ YES!! |
06d8d2821c46
changed: #test_03_calenderWeek
Claus Gittinger <cg@exept.de>
parents:
736
diff
changeset
|
276 |
self assert:(Date newDay:31 month:12 year:2014) weekInYear == 1. "/ YES!! |
06d8d2821c46
changed: #test_03_calenderWeek
Claus Gittinger <cg@exept.de>
parents:
736
diff
changeset
|
277 |
self assert:(Date newDay:1 month:1 year:2015) weekInYear == 1. |
06d8d2821c46
changed: #test_03_calenderWeek
Claus Gittinger <cg@exept.de>
parents:
736
diff
changeset
|
278 |
self assert:(Date newDay:2 month:1 year:2015) weekInYear == 1. |
06d8d2821c46
changed: #test_03_calenderWeek
Claus Gittinger <cg@exept.de>
parents:
736
diff
changeset
|
279 |
self assert:(Date newDay:3 month:1 year:2015) weekInYear == 1. |
06d8d2821c46
changed: #test_03_calenderWeek
Claus Gittinger <cg@exept.de>
parents:
736
diff
changeset
|
280 |
self assert:(Date newDay:4 month:1 year:2015) weekInYear == 1. |
06d8d2821c46
changed: #test_03_calenderWeek
Claus Gittinger <cg@exept.de>
parents:
736
diff
changeset
|
281 |
|
06d8d2821c46
changed: #test_03_calenderWeek
Claus Gittinger <cg@exept.de>
parents:
736
diff
changeset
|
282 |
self assert:(Date newDay:5 month:1 year:2015) weekInYear == 2. |
06d8d2821c46
changed: #test_03_calenderWeek
Claus Gittinger <cg@exept.de>
parents:
736
diff
changeset
|
283 |
|
745
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
284 |
"/ every 4th of january is in the 1st week |
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
285 |
1902 to:2100 do:[:y | |
1447 | 286 |
|d| |
287 |
d := Date newDay:4 month:1 year:y. |
|
288 |
self assert:d weekInYear == 1. |
|
745
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
289 |
]. |
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
290 |
|
736 | 291 |
" |
292 |
self new test_03_calenderWeek |
|
293 |
" |
|
745
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
294 |
! |
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
295 |
|
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
296 |
test_04_calenderWeek_fails |
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
297 |
<test: broken> |
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
298 |
^ self. |
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
299 |
"/ currently fails for date before 1901 |
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
300 |
1900 to:1905 do:[:y | |
1447 | 301 |
|d| |
302 |
d := Date newDay:4 month:1 year:y. |
|
303 |
self assert:d weekInYear == 1. |
|
745
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
304 |
]. |
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
305 |
|
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
306 |
" |
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
307 |
self new test_04_calenderWeek_fails |
fde865b5dece
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
737
diff
changeset
|
308 |
" |
1217
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
309 |
! |
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
310 |
|
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
311 |
test_05_weekDayConversion |
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
312 |
{ |
1447 | 313 |
{ #( 6 53 2004) "2004-W53-6" . (Date newDay:1 month:1 year:2005) } . |
314 |
{ #( 7 53 2004) "2004-W53-7" . (Date newDay:2 month:1 year:2005) } . |
|
315 |
{ #( 6 52 2005) "2005-W52-6" . (Date newDay:31 month:12 year:2005) } . |
|
316 |
{ #( 1 1 2007) "2007-W01-1" . (Date newDay:1 month:1 year:2007) } . |
|
317 |
{ #( 7 52 2007) "2007-W52-7" . (Date newDay:30 month:12 year:2007) } . |
|
1217
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
318 |
|
1447 | 319 |
{ #( 1 1 2008) "2008-W01-1" . (Date newDay:31 month:12 year:2007) } . |
320 |
{ #( 2 1 2008) "2008-W01-2" . (Date newDay:1 month:1 year:2008) } . |
|
321 |
{ #( 7 52 2008) "2008-W52-7" . (Date newDay:28 month:12 year:2008) } . |
|
1217
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
322 |
|
1447 | 323 |
{ #( 1 1 2009) "2009-W01-1" . (Date newDay:29 month:12 year:2008) } . |
324 |
{ #( 2 1 2009) "2009-W01-2" . (Date newDay:30 month:12 year:2008) } . |
|
325 |
{ #( 3 1 2009) "2009-W01-3" . (Date newDay:31 month:12 year:2008) } . |
|
326 |
{ #( 4 1 2009) "2009-W01-4" . (Date newDay:1 month:1 year:2009) } . |
|
1217
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
327 |
|
1447 | 328 |
{ #( 4 53 2009) "2009-W53-4" . (Date newDay:31 month:12 year:2009) } . |
329 |
{ #( 5 53 2009) "2009-W53-5" . (Date newDay:1 month:1 year:2010) } . |
|
330 |
{ #( 6 53 2009) "2009-W53-6" . (Date newDay:2 month:1 year:2010) } . |
|
331 |
{ #( 7 53 2009) "2009-W53-7" . (Date newDay:3 month:1 year:2010) } . |
|
1219
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
332 |
|
1447 | 333 |
{ #( 1 1 1997) "1997-W01-1" . (Date newDay:30 month:12 year:1996) } . |
1217
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
334 |
} do:[:eachPair | |
1447 | 335 |
|dwy d1 d2 dayInWeek weekNr year| |
1217
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
336 |
|
1447 | 337 |
dwy := eachPair first. |
338 |
dayInWeek := dwy first. |
|
339 |
weekNr := dwy second. |
|
340 |
year := dwy third. |
|
341 |
d1 := Date newDayInWeek:dayInWeek week:weekNr year:year. |
|
1218
efecc8c6f1fe
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1217
diff
changeset
|
342 |
|
1447 | 343 |
d2 := eachPair second. |
344 |
self assert:(d1 = d2) description:'wrong: ',d1 printString, ' vs. ',d2 printString. |
|
345 |
self assert:(d1 weekInYear == weekNr). |
|
346 |
self assert:(d1 dayInWeek == dayInWeek). |
|
1217
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
347 |
] |
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
348 |
|
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
349 |
" |
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
350 |
self new test_05_weekDayConversion |
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
351 |
" |
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
352 |
! |
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
353 |
|
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
354 |
test_06_readingISO8601 |
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
355 |
{ |
1447 | 356 |
{ '2004-W53-6' . 'sat' . (Date newDay:1 month:1 year:2005) } . |
357 |
{ '2004-W53-7' . 'sun' . (Date newDay:2 month:1 year:2005) } . |
|
358 |
{ '2005-W52-6' . 'sat' . (Date newDay:31 month:12 year:2005) } . |
|
359 |
{ '2007-W01-1' . 'mon' . (Date newDay:1 month:1 year:2007) } . |
|
360 |
{ '2007-W52-7' . 'sun' . (Date newDay:30 month:12 year:2007) } . |
|
1217
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
361 |
|
1447 | 362 |
{ '2008-W01-1' . 'mon' . (Date newDay:31 month:12 year:2007) } . |
363 |
{ '2008-W01-2' . 'tue' . (Date newDay:1 month:1 year:2008) } . |
|
364 |
{ '2008-W52-7' . 'sun' . (Date newDay:28 month:12 year:2008) } . |
|
1217
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
365 |
|
1447 | 366 |
{ '2009-W01-1' . 'mon' . (Date newDay:29 month:12 year:2008) } . |
367 |
{ '2009-W01-2' . 'tue' . (Date newDay:30 month:12 year:2008) } . |
|
368 |
{ '2009-W01-3' . 'wed' . (Date newDay:31 month:12 year:2008) } . |
|
369 |
{ '2009-W01-4' . 'thu' . (Date newDay:1 month:1 year:2009) } . |
|
1217
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
370 |
|
1447 | 371 |
{ '2009-W53-4' . 'thu' . (Date newDay:31 month:12 year:2009) } . |
372 |
{ '2009-W53-5' . 'fri' . (Date newDay:1 month:1 year:2010) } . |
|
373 |
{ '2009-W53-6' . 'sat' . (Date newDay:2 month:1 year:2010) } . |
|
374 |
{ '2009-W53-7' . 'sun' . (Date newDay:3 month:1 year:2010) } . |
|
1217
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
375 |
} do:[:eachTriple | |
1447 | 376 |
|input expected expectedDayName got gotName| |
1217
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
377 |
|
1447 | 378 |
input := eachTriple first. |
379 |
expectedDayName := eachTriple second. |
|
380 |
expected := eachTriple third. |
|
381 |
got := (Timestamp readIso8601FormatFrom:input onError:nil) asDate. |
|
382 |
self assert:(got = expected) description:'wrong: ',input. |
|
383 |
gotName := got abbreviatedDayNameForLanguage:#en. |
|
384 |
self assert:gotName = expectedDayName description:'expected: ',expectedDayName asString,' got: ',gotName asString. |
|
1217
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
385 |
] |
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
386 |
|
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
387 |
" |
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
388 |
self new test_06_calenderWeek_fails |
ee9044742185
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1077
diff
changeset
|
389 |
" |
1219
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
390 |
! |
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
391 |
|
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
392 |
test_07_readingISO8601 |
1226
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
393 |
"tests reading into a 'natural' timestamp - that is if there was a TZ info, |
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
394 |
that will be printed. If not, it will remain a local timestamp. |
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
395 |
Presenting timestamps this way is not usually a good idea, except for GUI |
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
396 |
(but not for data exchange)" |
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
397 |
|
1219
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
398 |
{ |
1447 | 399 |
{ '1995-02-20T13:11:06.123' . '1995-02-20 13:11:06.123' } . |
400 |
{ '1995-02-20T13:11:06' . '1995-02-20 13:11:06' } . |
|
401 |
{ '1995-02T13:11:06' . '1995-02-01 13:11:06' } . |
|
402 |
{ '1995T13:11:06' . '1995-01-01 13:11:06' } . |
|
403 |
{ '1995T13:11' . '1995-01-01 13:11:00' } . |
|
404 |
{ '1995T13:11.5' . '1995-01-01 13:11:30' } . |
|
405 |
{ '1995T13:11,5' . '1995-01-01 13:11:30' } . |
|
406 |
{ '1995T13' . '1995-01-01 13:00:00' } . |
|
407 |
{ '1995T13.25' . '1995-01-01 13:15:00' } . |
|
408 |
{ '1995T13.333333' . '1995-01-01 13:19:59.999' } . |
|
409 |
{ '1995' . '1995-01-01 00:00:00' } . |
|
410 |
{ '1995-02' . '1995-02-01 00:00:00' } . |
|
411 |
{ '19950204' . '1995-02-04 00:00:00' } . |
|
1219
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
412 |
|
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
413 |
"/ day in year |
1447 | 414 |
{ '1995-001' . '1995-01-01 00:00:00' } . |
415 |
{ '1995-035' . '1995-02-04 00:00:00' } . |
|
416 |
{ '1995035' . '1995-02-04 00:00:00' } . |
|
1219
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
417 |
|
1447 | 418 |
{ '1997-01-01' . '1997-01-01 00:00:00' } . |
1219
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
419 |
"/ week and weekday |
1447 | 420 |
{ '1997-W01' . '1996-12-30 00:00:00' } . |
421 |
{ '1997W01' . '1996-12-30 00:00:00' } . |
|
422 |
{ '1997W01-1' . '1996-12-30 00:00:00' } . |
|
423 |
{ '1997W011' . '1996-12-30 00:00:00' } . |
|
424 |
{ '1997W01' . '1996-12-30 00:00:00' } . |
|
425 |
{ '1997W01-2' . '1996-12-31 00:00:00' } . |
|
426 |
{ '1997-W01-2' . '1996-12-31 00:00:00' } . |
|
427 |
{ '1997W012' . '1996-12-31 00:00:00' } . |
|
428 |
{ '2014W40' . '2014-09-29 00:00:00' } . |
|
429 |
{ '2014W44-4' . '2014-10-30 00:00:00' } . |
|
430 |
{ '2014W01' . '2013-12-30 00:00:00' } . |
|
431 |
{ '2014W01-1' . '2013-12-30 00:00:00' } . |
|
432 |
{ '2014W01-2' . '2013-12-31 00:00:00' } . |
|
433 |
{ '2014W01-3' . '2014-01-01 00:00:00' } . |
|
1219
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
434 |
|
1447 | 435 |
{ '1995-02-20 13:11' . '1995-02-20 13:11:00' } . |
436 |
{ '1995-02-20 1311' . '1995-02-20 13:11:00' } . |
|
437 |
{ '1995-02-20 13' . '1995-02-20 13:00:00' } . |
|
438 |
{ '1995-02-20 235959' . '1995-02-20 23:59:59' } . |
|
439 |
{ '19950220 235959' . '1995-02-20 23:59:59' } . |
|
440 |
{ '19950220 23:59:59.9942' . '1995-02-20 23:59:59.994' } . |
|
441 |
{ '19950220 235959.9942' . '1995-02-20 23:59:59.994' } . |
|
1219
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
442 |
|
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
443 |
"/ local vs. UTC |
1447 | 444 |
{ '1995-02-20 13:11:06' . '1995-02-20 13:11:06' } . |
445 |
{ '1995-02-20 13:11:06Z' . '1995-02-20 13:11:06Z' } . |
|
446 |
{ '1995-02-20 13:11:06+01' . '1995-02-20 13:11:06+01' } . |
|
447 |
{ '1995-02-20 13:11:06+01:00' . '1995-02-20 13:11:06+01' } . |
|
448 |
{ '1995-02-20 13:11:06+01:30' . '1995-02-20 13:11:06+01:30' } . |
|
449 |
{ '1995-02-20 13:11:06+0130' . '1995-02-20 13:11:06+01:30' } . |
|
450 |
{ '1995-02-20 13:11:06-01' . '1995-02-20 13:11:06-01' } . |
|
451 |
{ '1995-02-20 13:11:06-01:00' . '1995-02-20 13:11:06-01' } . |
|
452 |
{ '1995-02-20 13:11:06-01:30' . '1995-02-20 13:11:06-01:30' } . |
|
453 |
{ '1995-02-20 13:11:06-0130' . '1995-02-20 13:11:06-01:30' } . |
|
1219
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
454 |
|
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
455 |
"/ 24 is allowed with ISO, and is 00:00 of the next day: |
1447 | 456 |
{ '1995-02-20 24:00:00' . '1995-02-21 00:00:00' } . |
1219
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
457 |
} do:[:eachPair | |
1447 | 458 |
|s1 t expected got| |
1219
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
459 |
|
1447 | 460 |
s1 := eachPair first. |
461 |
t := Timestamp readIso8601FormatFrom:s1. |
|
462 |
expected := eachPair second. |
|
463 |
got := t asString. |
|
464 |
self assert:(got = expected) description:'expected: ',expected,' got:',got. |
|
1226
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
465 |
]. |
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
466 |
|
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
467 |
" |
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
468 |
self new test_07_readingISO8601 |
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
469 |
" |
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
470 |
! |
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
471 |
|
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
472 |
test_07b_readingISO8601UTC |
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
473 |
"tests reading into an utc timestamp" |
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
474 |
|
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
475 |
{ |
1447 | 476 |
{ '1995-02-20T13:11:06.123' . '1995-02-20 13:11:06.123Z' } . |
477 |
{ '1995-02-20T13:11:06' . '1995-02-20 13:11:06Z' } . |
|
478 |
{ '1995-02T13:11:06' . '1995-02-01 13:11:06Z' } . |
|
479 |
{ '1995T13:11:06' . '1995-01-01 13:11:06Z' } . |
|
480 |
{ '1995T13:11' . '1995-01-01 13:11:00Z' } . |
|
481 |
{ '1995T13:11.5' . '1995-01-01 13:11:30Z' } . |
|
482 |
{ '1995T13:11,5' . '1995-01-01 13:11:30Z' } . |
|
483 |
{ '1995T13' . '1995-01-01 13:00:00Z' } . |
|
484 |
{ '1995T13.25' . '1995-01-01 13:15:00Z' } . |
|
485 |
{ '1995T13.333333' . '1995-01-01 13:19:59.999Z' } . |
|
486 |
{ '1995' . '1995-01-01 00:00:00Z' } . |
|
487 |
{ '1995-02' . '1995-02-01 00:00:00Z' } . |
|
488 |
{ '19950204' . '1995-02-04 00:00:00Z' } . |
|
1226
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
489 |
|
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
490 |
"/ day in year |
1447 | 491 |
{ '1995-001' . '1995-01-01 00:00:00Z' } . |
492 |
{ '1995-035' . '1995-02-04 00:00:00Z' } . |
|
493 |
{ '1995035' . '1995-02-04 00:00:00Z' } . |
|
1226
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
494 |
|
1447 | 495 |
{ '1997-01-01' . '1997-01-01 00:00:00Z' } . |
1226
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
496 |
"/ week and weekday |
1447 | 497 |
{ '1997-W01' . '1996-12-30 00:00:00Z' } . |
498 |
{ '1997W01' . '1996-12-30 00:00:00Z' } . |
|
499 |
{ '1997W01-1' . '1996-12-30 00:00:00Z' } . |
|
500 |
{ '1997W011' . '1996-12-30 00:00:00Z' } . |
|
501 |
{ '1997W01' . '1996-12-30 00:00:00Z' } . |
|
502 |
{ '1997W01-2' . '1996-12-31 00:00:00Z' } . |
|
503 |
{ '1997-W01-2' . '1996-12-31 00:00:00Z' } . |
|
504 |
{ '1997W012' . '1996-12-31 00:00:00Z' } . |
|
505 |
{ '2014W40' . '2014-09-29 00:00:00Z' } . |
|
506 |
{ '2014W44-4' . '2014-10-30 00:00:00Z' } . |
|
507 |
{ '2014W01' . '2013-12-30 00:00:00Z' } . |
|
508 |
{ '2014W01-1' . '2013-12-30 00:00:00Z' } . |
|
509 |
{ '2014W01-2' . '2013-12-31 00:00:00Z' } . |
|
510 |
{ '2014W01-3' . '2014-01-01 00:00:00Z' } . |
|
1226
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
511 |
|
1447 | 512 |
{ '1995-02-20 13:11' . '1995-02-20 13:11:00Z' } . |
513 |
{ '1995-02-20 1311' . '1995-02-20 13:11:00Z' } . |
|
514 |
{ '1995-02-20 13' . '1995-02-20 13:00:00Z' } . |
|
515 |
{ '1995-02-20 235959' . '1995-02-20 23:59:59Z' } . |
|
516 |
{ '19950220 235959' . '1995-02-20 23:59:59Z' } . |
|
517 |
{ '19950220 23:59:59.9942' . '1995-02-20 23:59:59.994Z' } . |
|
518 |
{ '19950220 235959.9942' . '1995-02-20 23:59:59.994Z' } . |
|
1226
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
519 |
|
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
520 |
"/ local vs. UTC |
1447 | 521 |
{ '1995-02-20 13:11:06' . '1995-02-20 13:11:06Z' } . |
522 |
{ '1995-02-20 13:11:06Z' . '1995-02-20 13:11:06Z' } . |
|
1226
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
523 |
{ '1995-02-20 13:11:06+01' . '1995-02-20 12:11:06Z' } . "/ notice the changed time here!!!!!! |
1447 | 524 |
{ '1995-02-20 13:11:06+01:00' . '1995-02-20 12:11:06Z' } . "/ notice the changed time here!!!!!! |
525 |
{ '1995-02-20 13:11:06+01:30' . '1995-02-20 11:41:06Z' } . "/ notice the changed time here!!!!!! |
|
526 |
{ '1995-02-20 13:11:06+0130' . '1995-02-20 11:41:06Z' } . "/ notice the changed time here!!!!!! |
|
527 |
{ '1995-02-20 13:11:06-01' . '1995-02-20 14:11:06Z' } . |
|
528 |
{ '1995-02-20 13:11:06-01:00' . '1995-02-20 14:11:06Z' } . |
|
529 |
{ '1995-02-20 13:11:06-01:30' . '1995-02-20 14:41:06Z' } . |
|
530 |
{ '1995-02-20 13:11:06-0130' . '1995-02-20 14:41:06Z' } . |
|
1226
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
531 |
|
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
532 |
"/ 24 is allowed with ISO, and is 00:00 of the next day: |
1447 | 533 |
{ '1995-02-20 24:00:00' . '1995-02-21 00:00:00Z' } . |
1226
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
534 |
} do:[:eachPair | |
1447 | 535 |
|s1 t expected got| |
1226
b5123dd5c3da
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1225
diff
changeset
|
536 |
|
1447 | 537 |
s1 := eachPair first. |
538 |
t := UtcTimestamp readIso8601FormatFrom:s1. |
|
539 |
expected := eachPair second. |
|
540 |
got := t asString. |
|
541 |
self assert:(got = expected) description:'expected: ',expected,' got:',got. |
|
1219
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
542 |
]. |
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
543 |
|
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
544 |
" |
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
545 |
self new test_07_readingISO8601 |
369f5bac6379
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1218
diff
changeset
|
546 |
" |
1220
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
547 |
! |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
548 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
549 |
test_08_readingISO8601_date |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
550 |
"/ the old ISO8601Builder tests moved to here |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
551 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
552 |
| ts reader | |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
553 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
554 |
reader := Timestamp::TimestampISO8601Builder. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
555 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
556 |
ts := UtcTimestamp |
1447 | 557 |
year: 2005 month: 6 day: 15 |
558 |
hour: 0 minute: 0 second: 0 millisecond: 0. |
|
1220
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
559 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
560 |
"Test common dates" |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
561 |
self assert: ts = (reader read: '20050615' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
562 |
self assert: ts = (reader read: '2005-06-15' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
563 |
self assert: ts = (reader read: '05-06-15' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
564 |
self assert: ts = (reader read: '05-0615' withClass:UtcTimestamp). "/ Is this correct? |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
565 |
self assert: ts = (reader read: ':50615' withClass:UtcTimestamp). "/ Should not happen and should not appear after 2009 |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
566 |
self assert: ts = (reader read: '200506-15' withClass:UtcTimestamp). "/ Is this corect? |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
567 |
self assert: ts = (reader read: '105-06-15' withClass:UtcTimestamp). "/ Should not happen |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
568 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
569 |
"Test week numbers" |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
570 |
self assert: ts = (reader read: '05W243' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
571 |
self assert: ts = (reader read: '2005W24-3' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
572 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
573 |
"Test day numbers" |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
574 |
self assert: ts = (reader read: '2005-166' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
575 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
576 |
ts := UtcTimestamp year: 2004 month: 12 day: 31 hour: 0 minute: 0 second: 0 millisecond: 0. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
577 |
self assert: ts = (reader read: '2004-366' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
578 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
579 |
ts := UtcTimestamp year: 2005 month: 12 day: 31 hour: 0 minute: 0 second: 0 millisecond: 0. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
580 |
self assert: ts = (reader read: '2005-365' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
581 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
582 |
"Test february" |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
583 |
ts := UtcTimestamp year: 2000 month: 2 day: 28 hour: 0 minute: 0 second: 0 millisecond: 0. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
584 |
self assert: ts = (reader read: '20000228' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
585 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
586 |
ts := UtcTimestamp year: 2000 month: 2 day: 29 hour: 0 minute: 0 second: 0 millisecond: 0. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
587 |
self assert: ts = (reader read: '20000229' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
588 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
589 |
" |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
590 |
self new test_08_readingISO8601 |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
591 |
" |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
592 |
! |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
593 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
594 |
test_09_readingISO8601_edge |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
595 |
"/ the old ISO8601Builder tests moved to here |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
596 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
597 |
| ts reader | |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
598 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
599 |
reader := Timestamp::TimestampISO8601Builder. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
600 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
601 |
self should: [reader read: '20050229' withClass:UtcTimestamp] raise:ConversionError. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
602 |
self should: [reader read: '20050029' withClass:UtcTimestamp] raise:ConversionError. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
603 |
self should: [reader read: '20050332' withClass:UtcTimestamp] raise:ConversionError. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
604 |
self should: [reader read: '2005-366' withClass:UtcTimestamp] raise:ConversionError. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
605 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
606 |
ts := UtcTimestamp year: 2005 month: 1 day: 1 hour: 0 minute: 0 second: 0 millisecond: 0. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
607 |
self assert: ts = (reader read: '20041231T22-0200' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
608 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
609 |
ts := UtcTimestamp year: 2004 month: 12 day: 31 hour: 22 minute: 0 second: 0 millisecond: 0. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
610 |
self assert: ts = (reader read: '20050101T0000+0200' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
611 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
612 |
" |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
613 |
self new test_08_readingISO8601 |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
614 |
" |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
615 |
! |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
616 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
617 |
test_10_readingISO8601_time |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
618 |
"/ the old ISO8601Builder tests moved to here |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
619 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
620 |
| ts reader | |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
621 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
622 |
reader := Timestamp::TimestampISO8601Builder. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
623 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
624 |
ts := UtcTimestamp year: 2005 month: 6 day: 15 hour: 17 minute: 37 second: 0 millisecond: 0. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
625 |
self assert: ts = (reader read: '2005-06-15 17:37' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
626 |
self assert: ts = (reader read: '20050615T1737' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
627 |
self assert: ts = (reader read: '05-0615T17:3700' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
628 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
629 |
ts := UtcTimestamp year: 2005 month: 6 day: 15 hour: 17 minute: 37 second: 0 millisecond: 30. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
630 |
self assert: ts = (reader read: '05-0615T17:3700.03' withClass:UtcTimestamp). |
1924 | 631 |
self assert: ts = (reader read: '2005-06-15T17:37:00.030' withClass:UtcTimestamp). |
632 |
||
633 |
ts := UtcTimestamp year: 2005 month: 6 day: 15 hour: 17 minute: 37 second: 0 microsecond:300. |
|
634 |
self assert: ts = (reader read: '05-0615T17:3700.0003' withClass:UtcTimestamp). |
|
635 |
self assert: ts = (reader read: '2005-06-15T17:37:00.0003-00:00' withClass:UtcTimestamp). |
|
1220
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
636 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
637 |
" |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
638 |
self new test_10_readingISO8601_time |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
639 |
" |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
640 |
! |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
641 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
642 |
test_11_readingISO8601_timezone |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
643 |
"/ the old ISO8601Builder tests moved to here |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
644 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
645 |
| ts reader | |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
646 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
647 |
reader := Timestamp::TimestampISO8601Builder. |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
648 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
649 |
ts := UtcTimestamp |
1447 | 650 |
year: 2005 month: 6 day: 15 |
651 |
hour: 17 minute: 37 second: 0 millisecond: 0. |
|
1220
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
652 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
653 |
self assert: ts = (reader read: '2005-06-15T17:37Z' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
654 |
self assert: ts = (reader read: '2005-06-15T17:37+0000' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
655 |
self assert: ts = (reader read: '2005-06-15T17:37-00:00' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
656 |
self assert: ts = (reader read: '2005-06-15T15:37:00-0200' withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
657 |
self assert: ts = (reader read: '2005-06-15T19:37:00+0200'withClass:UtcTimestamp). |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
658 |
|
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
659 |
" |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
660 |
self new test_11_readingISO8601_timezone |
e8277d9a8677
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1219
diff
changeset
|
661 |
" |
1222
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
662 |
! |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
663 |
|
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
664 |
test_12_dateQueries |
1224
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
665 |
|d1 d2 d3| |
1222
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
666 |
|
1447 | 667 |
d1 := Date newDay:1 month:2 year:1940. |
668 |
d2 := Date newDay:1 month:2 year:1941. |
|
1222
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
669 |
self assert:(d2 - d1) = 366. |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
670 |
|
1225
67d011bbcad5
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1224
diff
changeset
|
671 |
d1 := Date newDay:1 month:2 year:1840. |
1447 | 672 |
d2 := Date newDay:1 month:2 year:1841. |
1222
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
673 |
self assert:(d2 - d1) = 366. |
1225
67d011bbcad5
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1224
diff
changeset
|
674 |
self assert:(d1 addDays:366) = d2. |
1222
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
675 |
|
1447 | 676 |
Date leapYear:1540. |
677 |
d1 := Date newDay:1 month:2 year:1540. |
|
678 |
d2 := Date newDay:1 month:2 year:1541. |
|
1225
67d011bbcad5
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1224
diff
changeset
|
679 |
self assert:(d2 - d1) = 366. |
1222
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
680 |
|
1224
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
681 |
d1 := Date newDay:1 year:1901. |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
682 |
self assert:(d1 day = 1). |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
683 |
self assert:(d1 month = 1). |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
684 |
self assert:(d1 year = 1901). |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
685 |
|
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
686 |
"/ 1900 was NOT a leap year |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
687 |
self assert:(Date leapYear:1900) not. |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
688 |
"/ 2000 was a leap year |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
689 |
self assert:(Date leapYear:2000). |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
690 |
|
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
691 |
d2 := d1 subtractDays:365. |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
692 |
self assert:(d2 day = 1). |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
693 |
self assert:(d2 month = 1). |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
694 |
self assert:(d2 year = 1900). |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
695 |
|
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
696 |
d3 := d2 subtractDays:365. |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
697 |
self assert:(d3 day = 1). |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
698 |
self assert:(d3 month = 1). |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
699 |
self assert:(d3 year = 1899). |
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
700 |
|
1447 | 701 |
d1 := Date newDay:1 month:2 year:2540. |
702 |
d2 := Date newDay:1 month:2 year:2541. |
|
1229
881b11022fea
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1227
diff
changeset
|
703 |
self assert:(d2 - d1) = 366. |
881b11022fea
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1227
diff
changeset
|
704 |
|
1224
85b0ce90c09b
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1222
diff
changeset
|
705 |
|
1222
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
706 |
" |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
707 |
self new test_12_dateQueries |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
708 |
" |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
709 |
! |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
710 |
|
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
711 |
test_13_timestampQueries |
1231
f07f482db8d0
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1230
diff
changeset
|
712 |
|d1 d2 local utc| |
1222
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
713 |
|
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
714 |
d1 := UtcTimestamp newDay:1 month:1 year:2000. |
1447 | 715 |
d2 := UtcTimestamp newDay:1 month:1 year:2001. |
1222
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
716 |
self assert:(d2 - d1) days = 366. |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
717 |
|
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
718 |
d1 := UtcTimestamp newDay:2 month:1 year:1940. |
1447 | 719 |
d2 := UtcTimestamp newDay:2 month:1 year:1941. |
1222
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
720 |
self assert:d1 asDate year = 1940. |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
721 |
self assert:d2 asDate year = 1941. |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
722 |
self assert:d1 asDate month = 1. |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
723 |
self assert:d2 asDate month = 1. |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
724 |
self assert:d1 asDate day = 2. |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
725 |
self assert:d2 asDate day = 2. |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
726 |
|
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
727 |
self assert:d1 asDate isLeapYear. |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
728 |
self assert:d2 asDate isLeapYear not. |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
729 |
self assert:(d2 - d1) days = 366. |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
730 |
|
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
731 |
d1 := UtcTimestamp newDay:1 month:1 year:1840. |
1447 | 732 |
d2 := UtcTimestamp newDay:1 month:1 year:1841. |
1222
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
733 |
self assert:d1 asDate isLeapYear. |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
734 |
self assert:d2 asDate isLeapYear not. |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
735 |
self assert:(d2 - d1) days = 366. |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
736 |
|
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
737 |
self assert:(d1 addDays:366) = d2. |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
738 |
|
1225
67d011bbcad5
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1224
diff
changeset
|
739 |
d1 := UtcTimestamp newDay:1 month:1 year:1540. |
1447 | 740 |
d2 := UtcTimestamp newDay:1 month:1 year:1541. |
1225
67d011bbcad5
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1224
diff
changeset
|
741 |
self assert:d1 asDate isLeapYear. |
67d011bbcad5
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1224
diff
changeset
|
742 |
self assert:d2 asDate isLeapYear not. |
67d011bbcad5
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1224
diff
changeset
|
743 |
self assert:(d2 - d1) days = 366. |
67d011bbcad5
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1224
diff
changeset
|
744 |
|
1227
d303d4c8b01d
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1226
diff
changeset
|
745 |
d1 := Timestamp newDay:1 month:1 year:1540. |
1447 | 746 |
d2 := Timestamp newDay:1 month:1 year:1541. |
1227
d303d4c8b01d
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1226
diff
changeset
|
747 |
self assert:d1 asDate isLeapYear. |
d303d4c8b01d
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1226
diff
changeset
|
748 |
self assert:d2 asDate isLeapYear not. |
d303d4c8b01d
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1226
diff
changeset
|
749 |
self assert:(d2 - d1) days = 366. |
d303d4c8b01d
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1226
diff
changeset
|
750 |
|
1229
881b11022fea
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1227
diff
changeset
|
751 |
d1 := Timestamp newDay:1 month:1 year:2038. |
1447 | 752 |
d2 := Timestamp newDay:1 month:1 year:2039. |
1230
a26cae3351a6
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1229
diff
changeset
|
753 |
self assert:d1 asDate isLeapYear not. |
1229
881b11022fea
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1227
diff
changeset
|
754 |
self assert:d2 asDate isLeapYear not. |
1230
a26cae3351a6
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1229
diff
changeset
|
755 |
self assert:(d2 - d1) days = 365. |
1229
881b11022fea
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1227
diff
changeset
|
756 |
|
881b11022fea
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1227
diff
changeset
|
757 |
d1 := Timestamp newDay:1 month:1 year:2540. |
1447 | 758 |
d2 := Timestamp newDay:1 month:1 year:2541. |
1229
881b11022fea
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1227
diff
changeset
|
759 |
self assert:d1 asDate isLeapYear. |
881b11022fea
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1227
diff
changeset
|
760 |
self assert:d2 asDate isLeapYear not. |
881b11022fea
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1227
diff
changeset
|
761 |
self assert:(d2 - d1) days = 366. |
881b11022fea
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1227
diff
changeset
|
762 |
|
1231
f07f482db8d0
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1230
diff
changeset
|
763 |
d1 := Timestamp newDay:1 month:1 year:3540. |
1447 | 764 |
d2 := Timestamp newDay:1 month:1 year:3541. |
1231
f07f482db8d0
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1230
diff
changeset
|
765 |
self assert:d1 asDate isLeapYear. |
f07f482db8d0
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1230
diff
changeset
|
766 |
self assert:d2 asDate isLeapYear not. |
f07f482db8d0
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1230
diff
changeset
|
767 |
self assert:(d2 - d1) days = 366. |
f07f482db8d0
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1230
diff
changeset
|
768 |
|
1404 | 769 |
d1 := Timestamp newDay:1 month:1 year:1969. |
1447 | 770 |
d2 := Timestamp newDay:1 month:1 year:1970. |
1404 | 771 |
self assert:d1 asDate isLeapYear not. |
772 |
self assert:d2 asDate isLeapYear not. |
|
773 |
self assert:(d2 - d1) days = 365. |
|
774 |
||
775 |
d1 := Timestamp newDay:1 month:1 year:1600. |
|
1447 | 776 |
d2 := Timestamp newDay:1 month:1 year:1601. |
1404 | 777 |
self assert:d1 asDate isLeapYear. |
778 |
self assert:d2 asDate isLeapYear not. |
|
779 |
self assert:(d2 - d1) days = 366. |
|
780 |
||
1222
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
781 |
"/ local time vs. utc time |
1231
f07f482db8d0
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1230
diff
changeset
|
782 |
local := Timestamp newDay:1 month:1 year:1940. |
f07f482db8d0
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1230
diff
changeset
|
783 |
utc := UtcTimestamp newDay:1 month:1 year:1940. |
1277
8cebe2c950ad
class: RegressionTests::TimeAndDateTest
Stefan Vogel <sv@exept.de>
parents:
1244
diff
changeset
|
784 |
self assert:(local asUtcTimestamp - utc asUtcTimestamp) asSeconds = local utcOffset. |
1222
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
785 |
|
1227
d303d4c8b01d
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1226
diff
changeset
|
786 |
"/ tz time vs. utc time |
1231
f07f482db8d0
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1230
diff
changeset
|
787 |
utc := Timestamp readFrom:'20000102T123000Z'. |
1447 | 788 |
local := Timestamp readFrom:'20000102T123000+02'. |
1231
f07f482db8d0
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1230
diff
changeset
|
789 |
self assert:(utc - local) asSeconds = 7200. |
1227
d303d4c8b01d
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1226
diff
changeset
|
790 |
|
d303d4c8b01d
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1226
diff
changeset
|
791 |
"/ tz time vs. utc time |
1231
f07f482db8d0
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1230
diff
changeset
|
792 |
utc := UtcTimestamp readFrom:'20000102T123000Z'. |
1447 | 793 |
local := UtcTimestamp readFrom:'20000102T123000-02'. |
1231
f07f482db8d0
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1230
diff
changeset
|
794 |
self assert:(utc - local) asSeconds = -7200. |
1227
d303d4c8b01d
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1226
diff
changeset
|
795 |
|
1222
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
796 |
" |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
797 |
self new test_13_timestampQueries |
b476e1efa7f1
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1220
diff
changeset
|
798 |
" |
1232
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
799 |
! |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
800 |
|
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
801 |
test_14_arithmetic |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
802 |
|t1 t2 t3 s| |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
803 |
|
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
804 |
t1 := UtcTimestamp newDay:1 month:1 year:2000. |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
805 |
t2 := t1 addDays:1. |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
806 |
self assert:(t2 - t1) days = 1. |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
807 |
|
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
808 |
t2 := t1 addHours:1. |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
809 |
self assert:(t2 - t1) hours = 1. |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
810 |
|
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
811 |
t2 := t1 addSeconds:1. |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
812 |
self assert:(t2 - t1) seconds = 1. |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
813 |
|
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
814 |
t1 := UtcTimestamp readFrom:'20000102T133045Z'. |
1447 | 815 |
t2 := t1 addDays:1. |
1232
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
816 |
self assert:(t2 printString = '2000-01-03 13:30:45Z'). |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
817 |
|
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
818 |
t1 := Timestamp readFrom:'20000102T133045+01'. |
1447 | 819 |
t2 := t1 addDays:1. |
1232
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
820 |
self assert:(t2 printString = '2000-01-03 13:30:45+01'). |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
821 |
|
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
822 |
t1 := UtcTimestamp readFrom:'20000102T133045Z'. |
1447 | 823 |
t2 := Timestamp readFrom:'20000102T133045Z'. |
1232
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
824 |
self assert:(t1 = t2). |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
825 |
|
1447 | 826 |
t2 := Timestamp readFrom:'20000102T143045+01'. |
1232
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
827 |
self assert:(t1 = t2). |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
828 |
|
1447 | 829 |
t2 := Timestamp readFrom:'20000102T123045-01'. |
1232
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
830 |
self assert:(t1 = t2). |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
831 |
|
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
832 |
t2 := Timestamp readFrom:'20000102T123045'. "/ a local one |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
833 |
s := t2 storeString. |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
834 |
t3 := Timestamp readFrom:s. |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
835 |
|
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
836 |
self assert:(t2 = t3). |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
837 |
|
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
838 |
t1 := TZTimestamp readFrom:'20000102T133045Z'. |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
839 |
self assert:(t1 printString = '2000-01-02 13:30:45+00'). |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
840 |
t1 := UtcTimestamp readFrom:'20000102T133045Z'. |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
841 |
self assert:(t1 printString = '2000-01-02 13:30:45Z'). |
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
842 |
|
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
843 |
" |
1447 | 844 |
self new test_14_arithmetic |
1232
01e685de57e3
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1231
diff
changeset
|
845 |
" |
1233
c72fec37a673
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1232
diff
changeset
|
846 |
! |
c72fec37a673
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1232
diff
changeset
|
847 |
|
c72fec37a673
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1232
diff
changeset
|
848 |
test_15_misc |
c72fec37a673
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1232
diff
changeset
|
849 |
#( 1700 1800 1900 2100 2200 ) do:[:y | |
1447 | 850 |
self assert:(Date leapYear:y) not |
1233
c72fec37a673
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1232
diff
changeset
|
851 |
]. |
c72fec37a673
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1232
diff
changeset
|
852 |
#( 1600 2000 2400 ) do:[:y | |
1447 | 853 |
self assert:(Date leapYear:y) |
1233
c72fec37a673
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1232
diff
changeset
|
854 |
]. |
c72fec37a673
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1232
diff
changeset
|
855 |
|
c72fec37a673
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1232
diff
changeset
|
856 |
" |
1447 | 857 |
self new test_15_misc |
1233
c72fec37a673
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1232
diff
changeset
|
858 |
" |
1244
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
859 |
! |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
860 |
|
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
861 |
test_16_readingOtherFormats |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
862 |
| ts | |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
863 |
|
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
864 |
"/ european format |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
865 |
ts := Timestamp readFrom: '16-09-2013 00:42:35' readStream. |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
866 |
|
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
867 |
self assert: ts day = 16. |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
868 |
self assert: ts month = 9. |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
869 |
self assert: ts year = 2013. |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
870 |
self assert: ts hours = 0. |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
871 |
self assert: ts minutes = 42. |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
872 |
self assert: ts seconds = 35. |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
873 |
|
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
874 |
"/ us format |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
875 |
ts := Timestamp readFrom: '11/21/2013 00:42:35' readStream. |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
876 |
|
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
877 |
self assert: ts day = 21. |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
878 |
self assert: ts month = 11. |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
879 |
self assert: ts year = 2013. |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
880 |
self assert: ts hours = 0. |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
881 |
self assert: ts minutes = 42. |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
882 |
self assert: ts seconds = 35. |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
883 |
|
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
884 |
" |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
885 |
self new test_16_readingOtherFormats |
850ca3a30a23
class: RegressionTests::TimeAndDateTest
Claus Gittinger <cg@exept.de>
parents:
1233
diff
changeset
|
886 |
" |
1886 | 887 |
! |
888 |
||
889 |
test_17_readingBrokenStrings |
|
890 |
"endless loop happened with: |
|
891 |
Timestamp readFrom:'0' onError:#foo |
|
892 |
" |
|
893 |
||
894 |
#( |
|
895 |
'' |
|
896 |
'0' |
|
897 |
'1' |
|
898 |
'1-' |
|
899 |
'1-1' |
|
900 |
'1-1-' |
|
901 |
'1-1-1 10' |
|
902 |
'0-0-0' |
|
903 |
) do:[:eachBadString | |
|
904 |
| ts | |
|
905 |
||
906 |
"/ should not run into an endless loop |
|
907 |
[ |
|
908 |
ts := Timestamp readFrom:eachBadString onError:#foo. |
|
909 |
] valueWithTimeout:(50 milliseconds). |
|
910 |
||
911 |
self assert: (ts notNil) description:'timestamp reading leads to endless loop'. |
|
912 |
self assert: ts == #foo. |
|
913 |
]. |
|
914 |
||
915 |
" |
|
916 |
self new test_17_readingBrokenStrings |
|
917 |
" |
|
918 |
||
919 |
"Created: / 09-11-2017 / 10:00:30 / cg" |
|
1924 | 920 |
! |
921 |
||
922 |
test_18_moreTimestampArithmetic |
|
923 |
|t1 t2| |
|
924 |
||
925 |
t1 := Timestamp year:2000 month:1 day:1. |
|
926 |
t2 := t1 addMilliseconds:1. |
|
927 |
self assert:t1 seconds = 0. |
|
928 |
self assert:t2 seconds = 0. |
|
929 |
self assert:t1 exactSeconds = 0. |
|
930 |
self assert:t2 exactSeconds = 0.001. |
|
931 |
self assert:t1 milliseconds = 0. |
|
932 |
self assert:t2 milliseconds = 1. |
|
933 |
self assert:t1 microseconds = 0. |
|
934 |
self assert:t2 microseconds = 1000. |
|
935 |
self assert:t1 nanoseconds = 0. |
|
936 |
self assert:t2 nanoseconds = 1000000. |
|
937 |
self assert:t1 picoseconds = 0. |
|
938 |
self assert:t2 picoseconds = 1000000000. |
|
939 |
||
940 |
self assert:(t2 - t1) milliseconds = 1. |
|
941 |
self assert:(t2 - t1) microseconds = 1000. |
|
942 |
self assert:(t2 - t1) nanoseconds = 1000000. |
|
943 |
self assert:(t2 - t1) picoseconds = 1000000000. |
|
944 |
||
945 |
" |
|
946 |
self new test_18_moreArithmetic |
|
947 |
" |
|
948 |
! |
|
949 |
||
950 |
test_19_comparing |
|
951 |
|t1 t2| |
|
952 |
||
953 |
t1 := Time now. |
|
954 |
t2 := t1 addMilliseconds:1. |
|
955 |
||
956 |
self assert:t2 > t1. |
|
957 |
self assert:t2 >= t1. |
|
958 |
self assert:(t2 = t1) not. |
|
959 |
self assert:(t2 <= t1) not. |
|
960 |
self assert:(t2 < t1) not. |
|
961 |
||
962 |
t1 := Time now. |
|
963 |
t2 := t1 subtractMilliseconds:1. |
|
964 |
||
965 |
self assert:t2 < t1. |
|
966 |
self assert:t2 <= t1. |
|
967 |
self assert:(t2 = t1) not. |
|
968 |
self assert:(t2 >= t1) not. |
|
969 |
self assert:(t2 > t1) not. |
|
970 |
||
971 |
t1 := Time now. |
|
972 |
t2 := t1 + 1 milliseconds. |
|
973 |
self assert:t2 = (t1 addMilliseconds:1). |
|
974 |
||
975 |
t2 := t1 - 1 milliseconds. |
|
976 |
self assert:t2 = (t1 addMilliseconds:-1). |
|
977 |
self assert:t2 = (t1 subtractMilliseconds:1). |
|
978 |
||
979 |
" |
|
980 |
self new test_19_comparing |
|
981 |
" |
|
982 |
! |
|
983 |
||
984 |
test_20_comparing |
|
985 |
|t1 t2| |
|
986 |
||
987 |
t1 := Timestamp now. |
|
988 |
t2 := t1 addMilliseconds:1. |
|
989 |
||
990 |
self assert:t2 > t1. |
|
991 |
self assert:t2 >= t1. |
|
992 |
self assert:(t2 = t1) not. |
|
993 |
self assert:(t2 <= t1) not. |
|
994 |
self assert:(t2 < t1) not. |
|
995 |
||
996 |
t1 := Timestamp now. |
|
997 |
t2 := t1 subtractMilliseconds:1. |
|
998 |
||
999 |
self assert:t2 < t1. |
|
1000 |
self assert:t2 <= t1. |
|
1001 |
self assert:(t2 = t1) not. |
|
1002 |
self assert:(t2 >= t1) not. |
|
1003 |
self assert:(t2 > t1) not. |
|
1004 |
||
1005 |
t1 := Timestamp now. |
|
1006 |
t2 := t1 + 1 milliseconds. |
|
1007 |
self assert:t2 = (t1 addMilliseconds:1). |
|
1008 |
||
1009 |
t2 := t1 - 1 milliseconds. |
|
1010 |
self assert:t2 = (t1 addMilliseconds:-1). |
|
1011 |
self assert:t2 = (t1 subtractMilliseconds:1). |
|
1012 |
||
1013 |
t1 := Timestamp now. |
|
1014 |
t2 := t1 + 1 microseconds. |
|
1015 |
||
1016 |
self assert:t2 > t1. |
|
1017 |
self assert:t2 >= t1. |
|
1018 |
self assert:(t2 = t1) not. |
|
1019 |
self assert:(t2 <= t1) not. |
|
1020 |
self assert:(t2 < t1) not. |
|
1021 |
||
1022 |
t1 := Timestamp now. |
|
1023 |
t2 := t1 - 1 microseconds. |
|
1024 |
||
1025 |
self assert:t2 < t1. |
|
1026 |
self assert:t2 <= t1. |
|
1027 |
self assert:(t2 = t1) not. |
|
1028 |
self assert:(t2 >= t1) not. |
|
1029 |
self assert:(t2 > t1) not. |
|
1030 |
||
1031 |
t1 := Timestamp now. |
|
1032 |
t2 := t1 + 1 microseconds. |
|
1033 |
self assert:t2 = (t1 addMilliseconds:0.001). |
|
1034 |
||
1035 |
t2 := t1 - 1 microseconds. |
|
1036 |
self assert:t2 = (t1 addMilliseconds:-0.001). |
|
1037 |
self assert:t2 = (t1 subtractMilliseconds:0.001). |
|
1038 |
||
1039 |
" |
|
1040 |
self new test_20_comparing |
|
1041 |
" |
|
346 | 1042 |
! ! |
1043 |
||
1044 |
!TimeAndDateTest class methodsFor:'documentation'! |
|
1045 |
||
1046 |
version |
|
1047 |
^ '$Header$' |
|
737
06d8d2821c46
changed: #test_03_calenderWeek
Claus Gittinger <cg@exept.de>
parents:
736
diff
changeset
|
1048 |
! |
06d8d2821c46
changed: #test_03_calenderWeek
Claus Gittinger <cg@exept.de>
parents:
736
diff
changeset
|
1049 |
|
06d8d2821c46
changed: #test_03_calenderWeek
Claus Gittinger <cg@exept.de>
parents:
736
diff
changeset
|
1050 |
version_CVS |
06d8d2821c46
changed: #test_03_calenderWeek
Claus Gittinger <cg@exept.de>
parents:
736
diff
changeset
|
1051 |
^ '$Header$' |
346 | 1052 |
! ! |
1077 | 1053 |