diff options
| author | Daniele Varrazzo <daniele.varrazzo@gmail.com> | 2018-05-20 14:07:10 +0100 |
|---|---|---|
| committer | Daniele Varrazzo <daniele.varrazzo@gmail.com> | 2018-05-20 14:07:10 +0100 |
| commit | aac8a20fc1d524460cec867353fcaf01c946edfb (patch) | |
| tree | 52588a97aa429f6491519e7716b1dab21791a7fb | |
| parent | 098c00d73e193f09ce9589a6bb574f5833be714e (diff) | |
| parent | 49d9edce01c64dadba4fcdcd8ddeb563cd2cff63 (diff) | |
| download | psycopg2-aac8a20fc1d524460cec867353fcaf01c946edfb.tar.gz | |
Merge branch 'fix-707'
| -rw-r--r-- | psycopg/typecast_datetime.c | 5 | ||||
| -rwxr-xr-x | tests/test_dates.py | 8 |
2 files changed, 13 insertions, 0 deletions
diff --git a/psycopg/typecast_datetime.c b/psycopg/typecast_datetime.c index f24223c..e34117d 100644 --- a/psycopg/typecast_datetime.c +++ b/psycopg/typecast_datetime.c @@ -406,6 +406,11 @@ typecast_PYINTERVAL_cast(const char *str, Py_ssize_t len, PyObject *curs) } break; + case 'P': + PyErr_SetString(NotSupportedError, + "iso_8601 intervalstyle currently not supported"); + return NULL; + default: break; } diff --git a/tests/test_dates.py b/tests/test_dates.py index 74dfc9a..bb5aee3 100755 --- a/tests/test_dates.py +++ b/tests/test_dates.py @@ -438,6 +438,14 @@ class DatetimeTests(ConnectingTestCase, CommonDatetimeTestsMixin): r = cur.fetchone()[0] self.assertEqual(r, v, "%s -> %s != %s" % (s, r, v)) + @skip_before_postgres(8, 4) + def test_interval_iso_8601_not_supported(self): + # We may end up supporting, but no pressure for it + cur = self.conn.cursor() + cur.execute("set local intervalstyle to iso_8601") + cur.execute("select '1 day 2 hours'::interval") + self.assertRaises(psycopg2.NotSupportedError, cur.fetchone) + # Only run the datetime tests if psycopg was compiled with support. if not hasattr(psycopg2.extensions, 'PYDATETIME'): |
