Skip to content

Commit c29eca4

Browse files
Add unit test for evaluating two rulesets at once (#1871)
* Add unit test for evaluating two rulesets at once * Re-add type ignore
1 parent 10fdfb3 commit c29eca4

File tree

1 file changed

+43
-0
lines changed

1 file changed

+43
-0
lines changed

tests/test_data_quality.py

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,3 +196,46 @@ def test_update_ruleset_does_not_exists(df: pd.DataFrame, glue_ruleset: str) ->
196196
updated_name=f"{glue_ruleset} 2.0",
197197
df_rules=df_rules,
198198
)
199+
200+
201+
def test_two_evaluations_at_once(
202+
df: pd.DataFrame, glue_database: str, glue_table: str, glue_ruleset: str, glue_data_quality_role: str
203+
) -> None:
204+
df_rules1 = pd.DataFrame(
205+
[
206+
{
207+
"rule_type": "RowCount",
208+
"parameter": None,
209+
"expression": "between 1 and 6",
210+
}
211+
]
212+
)
213+
df_rules2 = pd.DataFrame(
214+
[
215+
{
216+
"rule_type": "IsComplete",
217+
"parameter": "c0",
218+
"expression": None,
219+
}
220+
]
221+
)
222+
223+
wr.data_quality.create_ruleset(
224+
name=glue_ruleset,
225+
database=glue_database,
226+
table=glue_table,
227+
df_rules=df_rules1,
228+
)
229+
wr.data_quality.create_ruleset(
230+
name=f"{glue_ruleset}2",
231+
database=glue_database,
232+
table=glue_table,
233+
df_rules=df_rules2,
234+
)
235+
236+
df_results = wr.data_quality.evaluate_ruleset(
237+
name=[glue_ruleset, f"{glue_ruleset}2"],
238+
iam_role_arn=glue_data_quality_role,
239+
number_of_workers=2,
240+
)
241+
assert df_results["Result"].eq("PASS").all()

0 commit comments

Comments
 (0)