Skip to content

Commit 9309293

Browse files
committed
Test partial column order should stay the same
1 parent d7dda8f commit 9309293

File tree

2 files changed

+37
-1
lines changed

2 files changed

+37
-1
lines changed

sqlmesh/core/test/definition.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -649,7 +649,7 @@ def _create_df(
649649
_raise_if_unexpected_columns(columns, referenced_columns)
650650

651651
if partial:
652-
columns = referenced_columns
652+
columns = [str(c) for c in columns if str(c) in referenced_columns]
653653

654654
return pd.DataFrame.from_records(
655655
rows, columns=[str(c) for c in columns] if columns else None

tests/core/test_test.py

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -770,6 +770,42 @@ def test_partial_data_column_order(sushi_context: Context) -> None:
770770
).run()
771771
)
772772

773+
# - output df must differ if sorted by (id, event_date) vs. (event_date, id)
774+
# - output partial must be true
775+
_check_successful_or_raise(
776+
_create_test(
777+
body=load_yaml(
778+
"""
779+
test_foo:
780+
model: sushi.foo
781+
inputs:
782+
sushi.items:
783+
- id: 9876
784+
event_date: 2020-01-01
785+
- id: 1234
786+
name: hello
787+
event_date: 2020-01-02
788+
outputs:
789+
partial: true
790+
query:
791+
- event_date: 2020-01-01
792+
id: 9876
793+
- event_date: 2020-01-02
794+
id: 1234
795+
name: hello
796+
"""
797+
),
798+
test_name="test_foo",
799+
model=sushi_context.upsert_model(
800+
_create_model(
801+
"SELECT id, name, price, event_date FROM sushi.items",
802+
default_catalog=sushi_context.default_catalog,
803+
)
804+
),
805+
context=sushi_context,
806+
).run()
807+
)
808+
773809

774810
def test_partial_data_missing_schemas(sushi_context: Context) -> None:
775811
_check_successful_or_raise(

0 commit comments

Comments
 (0)