Passing text makes for a cast rejected by fields with a stricter cast.
from ..proto import Transformer
TEXT_OID = 25 # TODO: builtins["text"].oid
+UNKNOWN_OID = 705 # TODO: builtins["unknown"].oid
class QueryPart(NamedTuple):
self.types.append(dumper.oid)
else:
self.params.append(None)
- self.types.append(TEXT_OID)
+ self.types.append(UNKNOWN_OID)
else:
for i in range(len(params)):
param = params[i]
assert res == obj
+@pytest.mark.parametrize("fmt_in", [Format.TEXT, Format.BINARY])
+def test_none_type_argument(conn, fmt_in):
+ cur = conn.cursor()
+ cur.execute(
+ """
+ create table test_none_type_argument (
+ id serial primary key, num integer
+ )
+ """
+ )
+ cur.execute(
+ "insert into test_none_type_argument (num) values (%s) returning id",
+ (None,),
+ )
+ assert cur.fetchone()[0]
+
+
def make_dumper(suffix):
"""Create a test dumper appending a suffix to the bytes representation."""