38 lines
1.1 KiB
Python
38 lines
1.1 KiB
Python
import datetime
|
|
|
|
from wcs.qommon.misc import strftime
|
|
|
|
|
|
def test():
|
|
# Make sure that the day names are in order
|
|
# from 1/1/1800 until 1/1/2100
|
|
s = strftime("%Y has the same days as 1980 and 2008",
|
|
datetime.date(1800, 9, 23))
|
|
if s != "1800 has the same days as 1980 and 2008":
|
|
raise AssertionError(s)
|
|
|
|
days = []
|
|
for i in range(1, 10):
|
|
days.append(datetime.date(2000, 1, i).strftime("%A"))
|
|
nextday = {}
|
|
for i in range(8):
|
|
nextday[days[i]] = days[i+1]
|
|
|
|
startdate = datetime.date(1800, 1, 1)
|
|
enddate = datetime.date(2100, 1, 1)
|
|
prevday = strftime('%A', startdate)
|
|
one_day = datetime.timedelta(1)
|
|
|
|
testdate = startdate + one_day
|
|
while testdate < enddate:
|
|
day = strftime('%A', testdate)
|
|
if nextday[prevday] != day:
|
|
raise AssertionError(str(testdate))
|
|
prevday = day
|
|
testdate = testdate + one_day
|
|
|
|
|
|
def test_types():
|
|
assert strftime('%Y-%m-%d %H:%M:%S', datetime.datetime(2017, 11, 19, 13, 8, 0).timetuple()) == '2017-11-19 13:08:00'
|
|
assert strftime('%Y-%m-%d %H:%M:%S', datetime.datetime(2017, 11, 19, 13, 8, 0)) == '2017-11-19 13:08:00'
|