From 8f88a01462641cbf930b3c43b780565d0fb7d37e Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Thu, 22 Jun 2023 20:53:34 +0200 Subject: Merging upstream version 16.4.0. Signed-off-by: Daniel Baumann --- tests/test_schema.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'tests/test_schema.py') diff --git a/tests/test_schema.py b/tests/test_schema.py index b03e7e7..23690b9 100644 --- a/tests/test_schema.py +++ b/tests/test_schema.py @@ -201,7 +201,7 @@ class TestSchema(unittest.TestCase): def test_schema_normalization(self): schema = MappingSchema( schema={"x": {"`y`": {"Z": {"a": "INT", "`B`": "VARCHAR"}, "w": {"C": "INT"}}}}, - dialect="spark", + dialect="clickhouse", ) table_z = exp.Table(this="z", db="y", catalog="x") @@ -228,4 +228,11 @@ class TestSchema(unittest.TestCase): # Check that the correct dialect is used when calling schema methods schema = MappingSchema(schema={"[Fo]": {"x": "int"}}, dialect="tsql") - self.assertEqual(schema.column_names("[Fo]"), schema.column_names("`Fo`", dialect="spark")) + self.assertEqual( + schema.column_names("[Fo]"), schema.column_names("`Fo`", dialect="clickhouse") + ) + + # Check that all column identifiers are normalized to lowercase for BigQuery, even quoted + # ones. Also, ensure that tables aren't normalized, since they're case-sensitive by default. + schema = MappingSchema(schema={"Foo": {"`BaR`": "int"}}, dialect="bigquery") + self.assertEqual(schema.column_names("Foo"), ["bar"]) -- cgit v1.2.3