[Zope3-checkins] CVS: Zope3/src/datetime/tests - test_datetime.py:1.31
Tim Peters
tim.one@comcast.net
Thu, 6 Feb 2003 11:41:35 -0500
Update of /cvs-repository/Zope3/src/datetime/tests
In directory cvs.zope.org:/tmp/cvs-serv20280/src/datetime/tests
Modified Files:
test_datetime.py
Log Message:
SF bug 680864: test_datetime fails for non-unix epoch
Apparently MAC OS 9 doesn't have POSIX-conforming timestamps. A test
fails as a result, but at least for this specific test it's easy enough
to get the POSIX epoch out of it.
=== Zope3/src/datetime/tests/test_datetime.py 1.30 => 1.31 ===
--- Zope3/src/datetime/tests/test_datetime.py:1.30 Wed Feb 5 17:30:06 2003
+++ Zope3/src/datetime/tests/test_datetime.py Thu Feb 6 11:41:33 2003
@@ -2257,18 +2257,17 @@
self.assertRaises(TypeError, meth)
# Try to make sure tz= actually does some conversion.
- timestamp = 1000000000 # 2001-09-09 01:46:40 UTC, give or take
- utc = FixedOffset(0, "utc", 0)
- expected = datetime(2001, 9, 9, 1, 46, 40)
- got = datetime.utcfromtimestamp(timestamp)
- # We don't support leap seconds, but maybe the platfrom insists
- # on using them, so don't demand exact equality).
- self.failUnless(abs(got - expected) < timedelta(minutes=1))
-
- est = FixedOffset(-5*60, "est", 0)
- expected -= timedelta(hours=5)
- got = datetime.fromtimestamp(timestamp, est).replace(tzinfo=None)
- self.failUnless(abs(got - expected) < timedelta(minutes=1))
+ timestamp = 1000000000
+ utcdatetime = datetime.utcfromtimestamp(timestamp)
+ # In POSIX (epoch 1970), that's 2001-09-09 01:46:40 UTC, give or take.
+ # But on some flavor of Mac, it's nowhere near that. So we can't have
+ # any idea here what time that actually is, we can only test that
+ # relative changes match.
+ utcoffset = timedelta(hours=-15, minutes=39) # arbitrary, but not zero
+ tz = FixedOffset(utcoffset, "tz", 0)
+ expected = utcdatetime + utcoffset
+ got = datetime.fromtimestamp(timestamp, tz)
+ self.assertEqual(expected, got.replace(tzinfo=None))
def test_tzinfo_utcnow(self):
meth = self.theclass.utcnow