diff options
author | Daniele Varrazzo <daniele.varrazzo@gmail.com> | 2017-03-22 03:03:02 +0000 |
---|---|---|
committer | Daniele Varrazzo <daniele.varrazzo@gmail.com> | 2017-03-22 03:03:02 +0000 |
commit | 7214c6652e579ebf8b52c41473f7253866b3d646 (patch) | |
tree | ce128fb56c2b6eb895db480bf1288f0f935393cc /tests | |
parent | 31f91e033f208064393f5e333f5b8a4e82f643b3 (diff) | |
download | psycopg2-7214c6652e579ebf8b52c41473f7253866b3d646.tar.gz |
Return objects with timezone parsing infinity timestamptz
Close #536.
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/test_dates.py | 19 |
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'): |