summaryrefslogtreecommitdiff
path: root/Lib/test/test_datetime.py
diff options
context:
space:
mode:
authorAlexander Belopolsky <alexander.belopolsky@gmail.com>2010-07-05 15:05:33 +0000
committerAlexander Belopolsky <alexander.belopolsky@gmail.com>2010-07-05 15:05:33 +0000
commit10590f9aa4c508a005f432654af3636492ba1342 (patch)
treef03456342a47f421bc69048eda690c277d50c3e9 /Lib/test/test_datetime.py
parent846dc919549844167d990ebbc49b65149b10ae10 (diff)
downloadcpython-10590f9aa4c508a005f432654af3636492ba1342.tar.gz
Added more tests for utctimetuple()
Diffstat (limited to 'Lib/test/test_datetime.py')
-rw-r--r--Lib/test/test_datetime.py22
1 files changed, 21 insertions, 1 deletions
diff --git a/Lib/test/test_datetime.py b/Lib/test/test_datetime.py
index fb1ce4ce24..4423d9b26b 100644
--- a/Lib/test/test_datetime.py
+++ b/Lib/test/test_datetime.py
@@ -3008,7 +3008,7 @@ class TestDateTimeTZ(TestDateTime, TZInfoBase, unittest.TestCase):
def test_utctimetuple(self):
class DST(tzinfo):
- def __init__(self, dstvalue):
+ def __init__(self, dstvalue=0):
if isinstance(dstvalue, int):
dstvalue = timedelta(minutes=dstvalue)
self.dstvalue = dstvalue
@@ -3043,6 +3043,26 @@ class TestDateTimeTZ(TestDateTime, TZInfoBase, unittest.TestCase):
# is never in effect for a UTC time.
self.assertEqual(0, t.tm_isdst)
+ # For naive datetime, utctimetuple == timetuple except for isdst
+ d = cls(1, 2, 3, 10, 20, 30, 40)
+ t = d.utctimetuple()
+ self.assertEqual(t[:-1], d.timetuple()[:-1])
+ self.assertEqual(0, t.tm_isdst)
+ # Same if utcoffset is None
+ class NOFS(DST):
+ def utcoffset(self, dt):
+ return None
+ d = cls(1, 2, 3, 10, 20, 30, 40, tzinfo=NOFS())
+ t = d.utctimetuple()
+ self.assertEqual(t[:-1], d.timetuple()[:-1])
+ self.assertEqual(0, t.tm_isdst)
+ # Check that bad tzinfo is detected
+ class BOFS(DST):
+ def utcoffset(self, dt):
+ return "EST"
+ d = cls(1, 2, 3, 10, 20, 30, 40, tzinfo=BOFS())
+ self.assertRaises(TypeError, d.utctimetuple)
+
# Check that utctimetuple() is the same as
# astimezone(utc).timetuple()
d = cls(2010, 11, 13, 14, 15, 16, 171819)