from psycopg.types.composite import TupleDumper, TupleBinaryDumper
from ..utils import eur
+from ..fix_crdb import is_crdb, crdb_skip_message
+
+
+pytestmark = pytest.mark.crdb("skip", reason="composite")
tests_str = [
("", ()),
@pytest.fixture(scope="session")
def testcomp(svcconn):
+ if is_crdb(svcconn):
+ pytest.skip(crdb_skip_message("composite"))
cur = svcconn.cursor()
cur.execute(
"""
from psycopg import sql
from psycopg.adapt import PyFormat
+crdb_skip_cidr = pytest.mark.crdb("skip", reason="cidr")
+
@pytest.mark.parametrize("fmt_in", PyFormat)
@pytest.mark.parametrize("val", ["192.168.0.1", "2001:db8::"])
assert cur.fetchone()[0] is True
+@crdb_skip_cidr
@pytest.mark.parametrize("fmt_in", PyFormat)
@pytest.mark.parametrize("val", ["127.0.0.0/24", "::ffff:102:300/128"])
def test_network_dump(conn, fmt_in, val):
assert cur.fetchone()[0] is True
+@crdb_skip_cidr
@pytest.mark.parametrize("fmt_in", PyFormat)
def test_network_mixed_size_array(conn, fmt_in):
val = [
assert val == got
+@pytest.mark.crdb("skip", reason="copy")
@pytest.mark.parametrize("fmt_out", pq.Format)
@pytest.mark.parametrize("val", ["127.0.0.1/32", "::ffff:102:300/128"])
def test_inet_load_address(conn, fmt_out, val):
assert got == addr
+@pytest.mark.crdb("skip", reason="copy")
@pytest.mark.parametrize("fmt_out", pq.Format)
@pytest.mark.parametrize("val", ["127.0.0.1/24", "::ffff:102:300/127"])
def test_inet_load_network(conn, fmt_out, val):
assert got == pyval
+@crdb_skip_cidr
@pytest.mark.parametrize("fmt_out", pq.Format)
@pytest.mark.parametrize("val", ["127.0.0.0/24", "::ffff:102:300/128"])
def test_cidr_load(conn, fmt_out, val):
from psycopg.types.range import Range, RangeInfo, register_range
from ..utils import eur
+from ..fix_crdb import is_crdb, crdb_skip_message
+
+pytestmark = pytest.mark.crdb("skip", reason="range")
type2sub = {
"int4range": "int4",
def create_test_range(conn):
+ if is_crdb(conn):
+ pytest.skip(crdb_skip_message("range"))
+
conn.execute(
"""
create schema if not exists testschema;
from shapely.geometry import Point, Polygon, MultiPolygon # noqa: E402
from psycopg.types.shapely import register_shapely # noqa: E402
-pytestmark = [pytest.mark.postgis]
+pytestmark = [
+ pytest.mark.postgis,
+ pytest.mark.crdb("skip"),
+]
# real example, with CRS and "holes"
MULTIPOLYGON_GEOJSON = """