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