]> git.ipfire.org Git - thirdparty/psycopg.git/commitdiff
Fixed test run on non-local server
authorDaniele Varrazzo <daniele.varrazzo@gmail.com>
Tue, 27 Oct 2020 13:44:19 +0000 (14:44 +0100)
committerDaniele Varrazzo <daniele.varrazzo@gmail.com>
Tue, 27 Oct 2020 13:44:19 +0000 (14:44 +0100)
tests/pq/test_pgconn.py

index bc6d957db1aca71934c2b4e68a6a87670558f184..9781421bd6e0135cddb649d25865ca1d47bf16f4 100644 (file)
@@ -51,9 +51,16 @@ def test_connect_async(dsn):
 
 
 def test_connect_async_bad(dsn):
-    conn = pq.PGconn.connect_start(b"dbname=psycopg3_test_not_for_real")
+    parsed_dsn = {
+        e.keyword: e.val
+        for e in pq.Conninfo.parse(dsn.encode("utf8"))
+        if e.val
+    }
+    parsed_dsn[b"dbname"] = b"psycopg3_test_not_for_real"
+    dsn = b" ".join(b"%s='%s'" % item for item in parsed_dsn.items())
+    conn = pq.PGconn.connect_start(dsn)
     while 1:
-        assert conn.status != pq.ConnStatus.BAD
+        assert conn.status != pq.ConnStatus.BAD, conn.error_message
         rv = conn.connect_poll()
         if rv == pq.PollingStatus.FAILED:
             break