Adding upstream version 18.11.2.
Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
parent
be16920347
commit
47f2114347
88 changed files with 52059 additions and 46960 deletions
|
@ -9,6 +9,9 @@ class TestPostgres(Validator):
|
|||
dialect = "postgres"
|
||||
|
||||
def test_ddl(self):
|
||||
self.validate_identity(
|
||||
"CREATE INDEX foo ON bar.baz USING btree(col1 varchar_pattern_ops ASC, col2)"
|
||||
)
|
||||
self.validate_identity(
|
||||
"CREATE TABLE test (x TIMESTAMP WITHOUT TIME ZONE[][])",
|
||||
"CREATE TABLE test (x TIMESTAMP[][])",
|
||||
|
@ -149,15 +152,27 @@ class TestPostgres(Validator):
|
|||
)
|
||||
|
||||
def test_postgres(self):
|
||||
expr = parse_one("SELECT * FROM r CROSS JOIN LATERAL UNNEST(ARRAY[1]) AS s(location)")
|
||||
expr = parse_one(
|
||||
"SELECT * FROM r CROSS JOIN LATERAL UNNEST(ARRAY[1]) AS s(location)", read="postgres"
|
||||
)
|
||||
unnest = expr.args["joins"][0].this.this
|
||||
unnest.assert_is(exp.Unnest)
|
||||
|
||||
alter_table_only = """ALTER TABLE ONLY "Album" ADD CONSTRAINT "FK_AlbumArtistId" FOREIGN KEY ("ArtistId") REFERENCES "Artist" ("ArtistId") ON DELETE NO ACTION ON UPDATE NO ACTION"""
|
||||
expr = parse_one(alter_table_only)
|
||||
expr = parse_one(alter_table_only, read="postgres")
|
||||
|
||||
# Checks that user-defined types are parsed into DataType instead of Identifier
|
||||
parse_one("CREATE TABLE t (a udt)").this.expressions[0].args["kind"].assert_is(exp.DataType)
|
||||
parse_one("CREATE TABLE t (a udt)", read="postgres").this.expressions[0].args[
|
||||
"kind"
|
||||
].assert_is(exp.DataType)
|
||||
|
||||
# Checks that OID is parsed into a DataType (ObjectIdentifier)
|
||||
self.assertIsInstance(
|
||||
parse_one("CREATE TABLE public.propertydata (propertyvalue oid)", read="postgres").find(
|
||||
exp.DataType
|
||||
),
|
||||
exp.ObjectIdentifier,
|
||||
)
|
||||
|
||||
self.assertIsInstance(expr, exp.AlterTable)
|
||||
self.assertEqual(expr.sql(dialect="postgres"), alter_table_only)
|
||||
|
@ -192,7 +207,6 @@ class TestPostgres(Validator):
|
|||
self.validate_identity("SELECT ARRAY[1, 2, 3] @> ARRAY[1, 2]")
|
||||
self.validate_identity("SELECT ARRAY[1, 2, 3] <@ ARRAY[1, 2]")
|
||||
self.validate_identity("SELECT ARRAY[1, 2, 3] && ARRAY[1, 2]")
|
||||
self.validate_identity("$x")
|
||||
self.validate_identity("x$")
|
||||
self.validate_identity("SELECT ARRAY[1, 2, 3]")
|
||||
self.validate_identity("SELECT ARRAY(SELECT 1)")
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue