mirror of
https://github.com/psycopg/psycopg2.git
synced 2024-11-22 00:46:33 +03:00
Merge branch 'connection_exception'
This commit is contained in:
commit
e85ef2298b
4
NEWS
4
NEWS
|
@ -5,6 +5,10 @@ What's new in psycopg 2.9
|
|||
-------------------------
|
||||
|
||||
- Dropped support for Python 3.4, 3.5 (:tickets:#1000, #1197).
|
||||
- Reclassified SQLSTATE connection exceptions (08XXX) as
|
||||
`~psycopg2.errors.OperationalError` (subclass of previously used
|
||||
`~psycopg2.errors.DatabaseError`) (:ticket:`#1148`).
|
||||
|
||||
|
||||
What's new in psycopg 2.8.6
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
|
@ -65,6 +65,8 @@ base_exception_from_sqlstate(const char *sqlstate)
|
|||
switch (sqlstate[0]) {
|
||||
case '0':
|
||||
switch (sqlstate[1]) {
|
||||
case '8': /* Class 08 - Connection Exception */
|
||||
return OperationalError;
|
||||
case 'A': /* Class 0A - Feature Not Supported */
|
||||
return NotSupportedError;
|
||||
}
|
||||
|
|
|
@ -62,6 +62,13 @@ class ErrorsTests(ConnectingTestCase):
|
|||
with self.assertRaises(KeyError):
|
||||
errors.lookup('XXXXX')
|
||||
|
||||
def test_connection_exceptions_backwards_compatibility(self):
|
||||
err = errors.lookup('08000')
|
||||
# connection exceptions are classified as operational errors
|
||||
self.assert_(issubclass(err, errors.OperationalError))
|
||||
# previously these errors were classified only as DatabaseError
|
||||
self.assert_(issubclass(err, errors.DatabaseError))
|
||||
|
||||
def test_has_base_exceptions(self):
|
||||
excs = []
|
||||
for n in dir(psycopg2):
|
||||
|
|
Loading…
Reference in New Issue
Block a user