Skip to content

Commit d3829c4

Browse files
authored
Fix!: dont wrap macro vars and str replacements in intervals (#4073)
1 parent b8d9c17 commit d3829c4

2 files changed

Lines changed: 8 additions & 0 deletions

File tree

sqlmesh/core/dialect.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1035,6 +1035,12 @@ def extend_sqlglot() -> None:
10351035
MacroDef,
10361036
)
10371037

1038+
generator.UNWRAPPED_INTERVAL_VALUES = (
1039+
*generator.UNWRAPPED_INTERVAL_VALUES,
1040+
MacroStrReplace,
1041+
MacroVar,
1042+
)
1043+
10381044
_override(Parser, _parse_select)
10391045
_override(Parser, _parse_statement)
10401046
_override(Parser, _parse_join)

tests/core/test_dialect.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,8 @@ def test_format_model_expressions():
260260

261261
def test_macro_format():
262262
assert parse_one("@EACH(ARRAY(1,2), x -> x)").sql() == "@EACH(ARRAY(1, 2), x -> x)"
263+
assert parse_one("INTERVAL @x DAY").sql() == "INTERVAL @x DAY"
264+
assert parse_one("INTERVAL @'@{bar}' DAY").sql() == "INTERVAL @'@{bar}' DAY"
263265

264266

265267
def test_format_body_macros():

0 commit comments

Comments
 (0)