[Python-checkins] CVS: python/nondist/sandbox/datetime test_datetime.py,1.40,1.41

Guido van Rossum gvanrossum@users.sourceforge.net
Tue, 19 Mar 2002 09:10:19 -0800


Update of /cvsroot/python/python/nondist/sandbox/datetime
In directory usw-pr-cvs1:/tmp/cvs-serv5977

Modified Files:
	test_datetime.py 
Log Message:
Add basic test for timezone support.


Index: test_datetime.py
===================================================================
RCS file: /cvsroot/python/python/nondist/sandbox/datetime/test_datetime.py,v
retrieving revision 1.40
retrieving revision 1.41
diff -C2 -d -r1.40 -r1.41
*** test_datetime.py	18 Mar 2002 23:06:30 -0000	1.40
--- test_datetime.py	19 Mar 2002 17:10:17 -0000	1.41
***************
*** 517,523 ****
--- 517,569 ----
  
  
+ class FixedOffset(object):
+     def __init__(self, offset, name):
+         self.__offset = offset
+         self.__name = name
+     def __repr__(self):
+         return self.__name.lower()
+     def utcoffset(self, dt):
+         return self.__offset
+     def tzname(self, dt):
+         return self.__name
+     def dst(self, dt):
+         return 0
+ 
+ 
  class TestDateTimeTZ(TestDateTime):
  
      theclass = datetimetz
+ 
+     def test_zones(self):
+         est = FixedOffset(-300, "EST")
+         utc = FixedOffset(0, "UTC")
+         met = FixedOffset(60, "MET")
+         t1 = datetimetz(2002, 3, 19,  7, 47, tzinfo=est)
+         t2 = datetimetz(2002, 3, 19, 12, 47, tzinfo=utc)
+         t3 = datetimetz(2002, 3, 19, 13, 47, tzinfo=met)
+         self.assertEqual(t1.tzinfo(), est)
+         self.assertEqual(t2.tzinfo(), utc)
+         self.assertEqual(t3.tzinfo(), met)
+         self.assertEqual(t1.utcoffset(), -300)
+         self.assertEqual(t2.utcoffset(), 0)
+         self.assertEqual(t3.utcoffset(), 60)
+         self.assertEqual(t1.tzname(), "EST")
+         self.assertEqual(t2.tzname(), "UTC")
+         self.assertEqual(t3.tzname(), "MET")
+         self.assertEqual(hash(t1), hash(t2))
+         self.assertEqual(hash(t1), hash(t3))
+         self.assertEqual(hash(t2), hash(t3))
+         self.assertEqual(t1, t2)
+         self.assertEqual(t1, t3)
+         self.assertEqual(t2, t3)
+         self.assertEqual(str(t1), "2002-03-19 07:47:00.000000-05:00")
+         self.assertEqual(str(t2), "2002-03-19 12:47:00.000000+00:00")
+         self.assertEqual(str(t3), "2002-03-19 13:47:00.000000+01:00")
+         self.assertEqual(repr(t1),
+                          "datetimetz(2002, 3, 19, 7, 47, tzinfo=est)")
+         self.assertEqual(repr(t2),
+                          "datetimetz(2002, 3, 19, 12, 47, tzinfo=utc)")
+         self.assertEqual(repr(t3),
+                          "datetimetz(2002, 3, 19, 13, 47, tzinfo=met)")