]> git.ipfire.org Git - thirdparty/psycopg.git/commitdiff
Catch explicit exception type in test_connect_badargs()
authorDenis Laxalde <denis.laxalde@dalibo.com>
Fri, 5 Nov 2021 10:47:10 +0000 (11:47 +0100)
committerDaniele Varrazzo <daniele.varrazzo@gmail.com>
Wed, 10 Nov 2021 01:57:39 +0000 (02:57 +0100)
Work around the type of pytest.raises() which appears too strict.

tests/test_connection.py
tests/test_connection_async.py

index dc8c6bc59f493bde3c2c1d86d3f6395ce398414f..977361f1dcea6d322501def7fe946f294e7306eb 100644 (file)
@@ -334,20 +334,20 @@ def test_connect_args(monkeypatch, pgconn, args, kwargs, want):
 
 
 @pytest.mark.parametrize(
-    "args, kwargs",
+    "args, kwargs, exctype",
     [
-        (("host=foo", "host=bar"), {}),
-        (("", ""), {}),
-        ((), {"nosuchparam": 42}),
+        (("host=foo", "host=bar"), {}, TypeError),
+        (("", ""), {}, TypeError),
+        ((), {"nosuchparam": 42}, psycopg.ProgrammingError),
     ],
 )
-def test_connect_badargs(monkeypatch, pgconn, args, kwargs):
+def test_connect_badargs(monkeypatch, pgconn, args, kwargs, exctype):
     def fake_connect(conninfo):
         return pgconn
         yield
 
     monkeypatch.setattr(psycopg.connection, "connect", fake_connect)
-    with pytest.raises((TypeError, psycopg.ProgrammingError)):
+    with pytest.raises(exctype):
         psycopg.Connection.connect(*args, **kwargs)
 
 
index 579b6335eb036cd3121aa69437bab9aabba1b42f..568ea39bb3f7c03e2b91a8952b6d8871a558dea7 100644 (file)
@@ -344,20 +344,20 @@ async def test_connect_args(monkeypatch, pgconn, args, kwargs, want):
 
 
 @pytest.mark.parametrize(
-    "args, kwargs",
+    "args, kwargs, exctype",
     [
-        (("host=foo", "host=bar"), {}),
-        (("", ""), {}),
-        ((), {"nosuchparam": 42}),
+        (("host=foo", "host=bar"), {}, TypeError),
+        (("", ""), {}, TypeError),
+        ((), {"nosuchparam": 42}, psycopg.ProgrammingError),
     ],
 )
-async def test_connect_badargs(monkeypatch, pgconn, args, kwargs):
+async def test_connect_badargs(monkeypatch, pgconn, args, kwargs, exctype):
     def fake_connect(conninfo):
         return pgconn
         yield
 
     monkeypatch.setattr(psycopg.connection, "connect", fake_connect)
-    with pytest.raises((TypeError, psycopg.ProgrammingError)):
+    with pytest.raises(exctype):
         await psycopg.AsyncConnection.connect(*args, **kwargs)