99from sqlglot .expressions import to_table
1010
1111import tests .utils .test_date as test_date
12+ from sqlmesh .core import constants as c
1213from sqlmesh .utils .errors import SQLMeshError
1314from sqlmesh .utils .metaprogramming import (
1415 Executable ,
@@ -41,7 +42,7 @@ def test_print_exception(mocker: MockerFixture):
4142
4243 expected_message = f"""Traceback (most recent call last):
4344
44- File "{ __file__ } ", line 38 , in test_print_exception
45+ File "{ __file__ } ", line 39 , in test_print_exception
4546 eval("test_fun()", env)
4647
4748 File "<string>", line 1, in <module>
@@ -95,11 +96,19 @@ def other_func(a: int) -> int:
9596 return X + a
9697
9798
99+ def noop_metadata () -> None :
100+ return None
101+
102+
103+ setattr (noop_metadata , c .SQLMESH_METADATA , True )
104+
105+
98106def main_func (y : int ) -> int :
99107 """DOC STRING"""
100108 sqlglot .parse_one ("1" )
101109 MyClass ()
102110 DataClass (x = y )
111+ noop_metadata ()
103112
104113 def closure (z : int ) -> int :
105114 return z + Z
@@ -113,6 +122,7 @@ def test_func_globals() -> None:
113122 "Z" : 3 ,
114123 "DataClass" : DataClass ,
115124 "MyClass" : MyClass ,
125+ "noop_metadata" : noop_metadata ,
116126 "other_func" : other_func ,
117127 "sqlglot" : sqlglot ,
118128 }
@@ -144,6 +154,7 @@ def test_normalize_source() -> None:
144154 sqlglot.parse_one('1')
145155 MyClass()
146156 DataClass(x=y)
157+ noop_metadata()
147158
148159 def closure(z: int):
149160 return z + Z
@@ -183,6 +194,7 @@ def test_serialize_env() -> None:
183194 sqlglot.parse_one('1')
184195 MyClass()
185196 DataClass(x=y)
197+ noop_metadata()
186198
187199 def closure(z: int):
188200 return z + Z
@@ -233,6 +245,13 @@ def baz(self):
233245 path = "test_metaprogramming.py" ,
234246 payload = "my_lambda = lambda : print('z')" ,
235247 ),
248+ "noop_metadata" : Executable (
249+ name = "noop_metadata" ,
250+ path = "test_metaprogramming.py" ,
251+ payload = """def noop_metadata():
252+ return None""" ,
253+ is_metadata = True ,
254+ ),
236255 "other_func" : Executable (
237256 name = "other_func" ,
238257 path = "test_metaprogramming.py" ,
0 commit comments