From 70fee96574d64b23b971b7cfdf5302d210c84c1a Mon Sep 17 00:00:00 2001 From: Iaroslav Zeigerman Date: Wed, 20 Aug 2025 15:40:37 -0700 Subject: [PATCH 1/4] Fix: Snowflake integration tests --- .../integration/test_integration.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/tests/core/engine_adapter/integration/test_integration.py b/tests/core/engine_adapter/integration/test_integration.py index 3e50cf4da9..7ece562c99 100644 --- a/tests/core/engine_adapter/integration/test_integration.py +++ b/tests/core/engine_adapter/integration/test_integration.py @@ -15,6 +15,7 @@ import pytz from sqlglot import exp, parse_one from sqlglot.optimizer.normalize_identifiers import normalize_identifiers +from sqlglot.optimizer.qualify_columns import quote_identifiers from sqlmesh import Config, Context from sqlmesh.cli.project_init import init_example_project @@ -1954,11 +1955,17 @@ def test_sushi(ctx: TestContext, tmp_path_factory: pytest.TempPathFactory): ], personal_paths=[pathlib.Path("~/.sqlmesh/config.yaml").expanduser()], ) - config.before_all = [ + before_all = [ f"CREATE SCHEMA IF NOT EXISTS {raw_test_schema}", f"DROP VIEW IF EXISTS {raw_test_schema}.demographics", f"CREATE VIEW {raw_test_schema}.demographics AS (SELECT 1 AS customer_id, '00000' AS zip)", ] + config.before_all = [ + quote_identifiers(parse_one(e, dialect=ctx.dialect), dialect=ctx.dialect).sql( + dialect=ctx.dialect + ) + for e in before_all + ] # To enable parallelism in integration tests config.gateways = {ctx.gateway: config.gateways[ctx.gateway]} @@ -2883,16 +2890,12 @@ def _run_plan(sqlmesh_context: Context, environment: str = None) -> PlanResults: assert plan_1.snapshot_for(model_a).model.view_name in plan_1.schema_metadata.views assert plan_1.snapshot_for(model_b).model.view_name in plan_1.schema_metadata.views - assert len(plan_1.internal_schema_metadata.tables) == 3 + assert len(plan_1.internal_schema_metadata.tables) == 1 assert plan_1.table_name_for(model_a) in plan_1.internal_schema_metadata.tables - assert plan_1.dev_table_name_for(model_a) in plan_1.internal_schema_metadata.tables assert ( plan_1.table_name_for(model_b) not in plan_1.internal_schema_metadata.tables ) # because its a managed table - assert ( - plan_1.dev_table_name_for(model_b) in plan_1.internal_schema_metadata.tables - ) # its dev table is a normal table however assert len(plan_1.internal_schema_metadata.managed_tables) == 1 assert plan_1.table_name_for(model_b) in plan_1.internal_schema_metadata.managed_tables From 9412bf2f0a74ba310de2b9362c3b8ff9653ef27d Mon Sep 17 00:00:00 2001 From: Iaroslav Zeigerman Date: Wed, 20 Aug 2025 15:42:03 -0700 Subject: [PATCH 2/4] temporarily enable cloud integration tests --- .circleci/continue_config.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.circleci/continue_config.yml b/.circleci/continue_config.yml index 8f8324a2a0..b00d9fa273 100644 --- a/.circleci/continue_config.yml +++ b/.circleci/continue_config.yml @@ -310,10 +310,10 @@ workflows: - athena - fabric - gcp-postgres - filters: - branches: - only: - - main + # filters: + # branches: + # only: + # - main - ui_style - ui_test - vscode_test From becdfdc052ae52a79e24c627bddc6230927ce7b2 Mon Sep 17 00:00:00 2001 From: Iaroslav Zeigerman Date: Wed, 20 Aug 2025 15:57:50 -0700 Subject: [PATCH 3/4] only quote for snowflake --- tests/core/engine_adapter/integration/test_integration.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/tests/core/engine_adapter/integration/test_integration.py b/tests/core/engine_adapter/integration/test_integration.py index 7ece562c99..ec5c6b4208 100644 --- a/tests/core/engine_adapter/integration/test_integration.py +++ b/tests/core/engine_adapter/integration/test_integration.py @@ -1961,9 +1961,10 @@ def test_sushi(ctx: TestContext, tmp_path_factory: pytest.TempPathFactory): f"CREATE VIEW {raw_test_schema}.demographics AS (SELECT 1 AS customer_id, '00000' AS zip)", ] config.before_all = [ - quote_identifiers(parse_one(e, dialect=ctx.dialect), dialect=ctx.dialect).sql( - dialect=ctx.dialect - ) + quote_identifiers( + parse_one(e, dialect=config.model_defaults.dialect), + dialect=config.model_defaults.dialect, + ).sql(dialect=config.model_defaults.dialect) for e in before_all ] From f93eb39ceaef4ef000853aedff831f5eef125a26 Mon Sep 17 00:00:00 2001 From: Iaroslav Zeigerman Date: Wed, 20 Aug 2025 16:39:58 -0700 Subject: [PATCH 4/4] Revert "temporarily enable cloud integration tests" This reverts commit 31bcbdb3da747e2c0811ff855cf7d13f33f4a010. --- .circleci/continue_config.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.circleci/continue_config.yml b/.circleci/continue_config.yml index b00d9fa273..8f8324a2a0 100644 --- a/.circleci/continue_config.yml +++ b/.circleci/continue_config.yml @@ -310,10 +310,10 @@ workflows: - athena - fabric - gcp-postgres - # filters: - # branches: - # only: - # - main + filters: + branches: + only: + - main - ui_style - ui_test - vscode_test