summaryrefslogtreecommitdiff
path: root/tests/test_dates.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_dates.py')
-rwxr-xr-xtests/test_dates.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/test_dates.py b/tests/test_dates.py
index 98b1f55..83eea32 100755
--- a/tests/test_dates.py
+++ b/tests/test_dates.py
@@ -392,6 +392,25 @@ class DatetimeTests(ConnectingTestCase, CommonDatetimeTestsMixin):
self.assertRaises(OverflowError, f, '00:00:100000000000000000:00')
self.assertRaises(OverflowError, f, '00:00:00.100000000000000000')
+ def test_adapt_infinity_tz(self):
+ from datetime import datetime
+
+ t = self.execute("select 'infinity'::timestamp")
+ self.assert_(t.tzinfo is None)
+ self.assert_(t > datetime(4000, 1, 1))
+
+ t = self.execute("select '-infinity'::timestamp")
+ self.assert_(t.tzinfo is None)
+ self.assert_(t < datetime(1000, 1, 1))
+
+ t = self.execute("select 'infinity'::timestamptz")
+ self.assert_(t.tzinfo is not None)
+ self.assert_(t > datetime(4000, 1, 1, tzinfo=FixedOffsetTimezone()))
+
+ t = self.execute("select '-infinity'::timestamptz")
+ self.assert_(t.tzinfo is not None)
+ self.assert_(t < datetime(1000, 1, 1, tzinfo=FixedOffsetTimezone()))
+
# Only run the datetime tests if psycopg was compiled with support.
if not hasattr(psycopg2.extensions, 'PYDATETIME'):