@@ -190,7 +190,7 @@ def test_model_validation(query, error):
190190 assert error in str (ex .value )
191191
192192
193- def test_model_union_query ():
193+ def test_model_union_query (sushi_context , assert_exp_eq ):
194194 expressions = d .parse (
195195 """
196196 MODEL (
@@ -204,6 +204,37 @@ def test_model_union_query():
204204
205205 load_sql_based_model (expressions )
206206
207+ expressions = d .parse (
208+ """
209+ MODEL (
210+ name sushi.test,
211+ kind FULL,
212+ );
213+
214+ @union('all', sushi.marketing, sushi.marketing)
215+ """
216+ )
217+ sushi_context .upsert_model (load_sql_based_model (expressions , default_catalog = "memory" ))
218+ assert_exp_eq (
219+ sushi_context .get_model ("sushi.test" ).render_query (),
220+ """SELECT
221+ CAST("marketing"."customer_id" AS INT) AS "customer_id",
222+ CAST("marketing"."status" AS TEXT) AS "status",
223+ CAST("marketing"."updated_at" AS TIMESTAMP) AS "updated_at",
224+ CAST("marketing"."valid_from" AS TIMESTAMP) AS "valid_from",
225+ CAST("marketing"."valid_to" AS TIMESTAMP) AS "valid_to"
226+ FROM "memory"."sushi"."marketing" AS "marketing"
227+ UNION ALL
228+ SELECT
229+ CAST("marketing"."customer_id" AS INT) AS "customer_id",
230+ CAST("marketing"."status" AS TEXT) AS "status",
231+ CAST("marketing"."updated_at" AS TIMESTAMP) AS "updated_at",
232+ CAST("marketing"."valid_from" AS TIMESTAMP) AS "valid_from",
233+ CAST("marketing"."valid_to" AS TIMESTAMP) AS "valid_to"
234+ FROM "memory"."sushi"."marketing" AS "marketing"
235+ """ ,
236+ )
237+
207238
208239def test_model_validation_union_query ():
209240 expressions = d .parse (
0 commit comments