@@ -57,8 +57,9 @@ def generate_test_data(session, sql_simplifier_enabled):
5757 }
5858
5959
60+ @pytest .mark .parametrize ("snowpark_connect_compatible_mode" , [True , False ])
6061@pytest .mark .parametrize (
61- "op,sql_simplifier,line_to_expected_sql" ,
62+ "op,sql_simplifier,line_to_expected_sql,snowpark_connect_compatible_mode_sql " ,
6263 [
6364 (
6465 lambda data : data ["df1" ].union (data ["df2" ]),
@@ -68,10 +69,14 @@ def generate_test_data(session, sql_simplifier_enabled):
6869 6 : 'SELECT $1 AS "_1", $2 AS "_2", $3 AS "_3" FROM VALUES (1 :: INT, \' A\' :: STRING, 100 :: INT), (2 :: INT, \' B\' :: STRING, 200 :: INT)' ,
6970 10 : 'SELECT "_1" AS "ID", "_2" AS "NAME", "_3" AS "VALUE" FROM ( SELECT $1 AS "_1", $2 AS "_2", $3 AS "_3" FROM VALUES (3 :: INT, \' C\' :: STRING, 300 :: INT), (4 :: INT, \' D\' :: STRING, 400 :: INT) )' ,
7071 },
72+ None ,
7173 ),
7274 (
7375 lambda data : data ["df1" ].filter (data ["df1" ].value > 150 ),
7476 True ,
77+ {
78+ 8 : 'SELECT $1 AS "_1", $2 AS "_2", $3 AS "_3" FROM VALUES (1 :: INT, \' A\' :: STRING, 100 :: INT), (2 :: INT, \' B\' :: STRING, 200 :: INT)'
79+ },
7580 {
7681 8 : """SELECT "_1" AS "ID", "_2" AS "NAME", "_3" AS "VALUE" FROM (SELECT $1 AS "_1", $2 AS "_2", $3 AS "_3" FROM VALUES (1 :: INT, 'A' :: STRING, 100 :: INT), (2 :: INT, 'B' :: STRING, 200 :: INT)) WHERE ("VALUE" > 150)""" ,
7782 },
@@ -83,6 +88,7 @@ def generate_test_data(session, sql_simplifier_enabled):
8388 1 : 'SELECT "_1" AS "ID", "_2" AS "NAME" FROM ( SELECT $1 AS "_1", $2 AS "_2", $3 AS "_3" FROM VALUES (1 :: INT, \' A\' :: STRING, 100 :: INT), (2 :: INT, \' B\' :: STRING, 200 :: INT) )' ,
8489 4 : 'SELECT $1 AS "_1", $2 AS "_2", $3 AS "_3" FROM VALUES (1 :: INT, \' A\' :: STRING, 100 :: INT), (2 :: INT, \' B\' :: STRING, 200 :: INT)' ,
8590 },
91+ None ,
8692 ),
8793 (
8894 lambda data : data ["df1" ].pivot (F .col ("name" )).sum (F .col ("value" )),
@@ -92,12 +98,26 @@ def generate_test_data(session, sql_simplifier_enabled):
9298 6 : 'SELECT $1 AS "_1", $2 AS "_2", $3 AS "_3" FROM VALUES (1 :: INT, \' A\' :: STRING, 100 :: INT), (2 :: INT, \' B\' :: STRING, 200 :: INT)' ,
9399 9 : 'SELECT * FROM ( SELECT "_1" AS "ID", "_2" AS "NAME", "_3" AS "VALUE" FROM ( SELECT $1 AS "_1", $2 AS "_2", $3 AS "_3" FROM VALUES (1 :: INT, \' A\' :: STRING, 100 :: INT), (2 :: INT, \' B\' :: STRING, 200 :: INT) ) ) PIVOT ( sum("VALUE") FOR "NAME" IN ( ANY ) )' ,
94100 },
101+ None ,
95102 ),
96103 ],
97104)
98105def test_get_plan_from_line_numbers_sql_content (
99- session , op , sql_simplifier , line_to_expected_sql
106+ session ,
107+ op ,
108+ sql_simplifier ,
109+ line_to_expected_sql ,
110+ snowpark_connect_compatible_mode_sql ,
111+ snowpark_connect_compatible_mode ,
112+ monkeypatch ,
100113):
114+ if snowpark_connect_compatible_mode :
115+ import snowflake .snowpark .context as context
116+
117+ monkeypatch .setattr (context , "_is_snowpark_connect_compatible_mode" , True )
118+ line_to_expected_sql = (
119+ snowpark_connect_compatible_mode_sql or line_to_expected_sql
120+ )
101121 session .sql_simplifier_enabled = sql_simplifier
102122 df = op (generate_test_data (session , sql_simplifier ))
103123
0 commit comments