from typing import cast, NamedTuple, Optional, Union
from .abc import PGconn, PGresult
-from ._enums import ConnStatus, TransactionStatus
+from ._enums import ConnStatus, TransactionStatus, PipelineStatus
from .._encodings import pgconn_encoding
"""
parts = []
if pgconn.status == ConnStatus.OK:
-
+ # Put together the [STATUS]
status = TransactionStatus(pgconn.transaction_status).name
+ if pgconn.pipeline_status:
+ status += f", pipeline={PipelineStatus(pgconn.pipeline_status).name}"
+
+ # Put together the (CONNECTION)
if not pgconn.host.startswith(b"/"):
parts.append(("host", pgconn.host.decode()))
if pgconn.port != b"5432":
if pgconn.user != pgconn.db:
parts.append(("user", pgconn.user.decode()))
parts.append(("database", pgconn.db.decode()))
+
else:
status = ConnStatus(pgconn.status).name
def test_repr(conn):
with conn.pipeline() as p:
assert "psycopg.Pipeline" in repr(p)
- assert "[IDLE]" in repr(p)
+ assert "[IDLE, pipeline=ON]" in repr(p)
conn.close()
assert "[BAD]" in repr(p)
async def test_repr(aconn):
async with aconn.pipeline() as p:
assert "psycopg.AsyncPipeline" in repr(p)
- assert "[IDLE]" in repr(p)
+ assert "[IDLE, pipeline=ON]" in repr(p)
await aconn.close()
assert "[BAD]" in repr(p)