This repository has been archived on 2023-02-21. You can view files and clone it, but cannot push or open issues or pull requests.
glasnost/tests/AppointmentsTests.py

70 lines
2.8 KiB
Python

# -*- coding: iso-8859-15 -*-
import sys
import unittest
glasnostPythonDir = '/usr/local/lib/glasnost-tests'
sys.path.insert(0, glasnostPythonDir)
from GlasnostTestCase import MinimalTestCase
from glasnost.web.AppointmentsWeb import weekNumberToDate, dateToWeekNumber
class WeekNumberKnownValuesTestCase(MinimalTestCase):
knownValues = ( ( (1995, 1), (1995, 1, 2) ),
( (1996, 1), (1996, 1, 1) ),
( (1997, 1), (1996, 12, 30) ),
( (1998, 1), (1997, 12, 29) ),
( (1999, 1), (1999, 1, 4) ),
( (2000, 1), (2000, 1, 3) ),
( (2001, 1), (2001, 1, 1) ),
( (2002, 1), (2001, 12, 31) ),
( (2003, 1), (2002, 12, 30) ),
( (2003, 2), (2003, 1, 6) ),
( (2003, 25), (2003, 6, 16) ),
( (2003, 52), (2003, 12, 22) ),
( (2004, 1), (2003, 12, 29) ),
( (1979, 24), (1979, 6, 11) ),
)
knownFromDateValues = ( ( (2003, 3, 16), (2003, 11) ),
( (2003, 3, 17), (2003, 12) ),
( (2003, 3, 18), (2003, 12) ),
( (2003, 3, 19), (2003, 12) ),
( (2003, 3, 20), (2003, 12) ),
( (2003, 3, 21), (2003, 12) ),
( (2003, 3, 22), (2003, 12) ),
( (2003, 3, 23), (2003, 12) ),
( (2003, 3, 24), (2003, 13) ),
( (1999, 12, 31), (1999, 52) ),
( (2000, 1, 1), (1999, 52) ),
( (2000, 1, 2), (1999, 52) ),
( (2000, 1, 3), (2000, 1) ),
)
def test01_ToDateKnownValues(self):
"""Convert week numbers to dates"""
for ywTuple, ymdTuple in self.knownValues:
date = weekNumberToDate(ywTuple[0], ywTuple[1])
self.assertEqual(date[:3], ymdTuple)
def test02_FromDateKnownValues(self):
"""Convert dates to week numbers"""
for ywTuple, ymdTuple in self.knownValues:
week = dateToWeekNumber(ymdTuple[0], ymdTuple[1], ymdTuple[2])
self.assertEqual(week, ywTuple)
def testFromDateMoreKnownValues(self):
"""Convert more dates to week numbers"""
for ymdTuple, ywTuple in self.knownFromDateValues:
week = dateToWeekNumber(ymdTuple[0], ymdTuple[1], ymdTuple[2])
self.assertEqual(week, ywTuple)
suite1 = unittest.makeSuite(WeekNumberKnownValuesTestCase, 'test')
allTests = unittest.TestSuite((suite1,))
if __name__ == '__main__':
unittest.TextTestRunner(verbosity=2).run(allTests)