def test_normalizer_separate_time_filters_bad_format(): rules_def = [{ "type": "not_null", "column": "a", "separate_time_filters": [{ "column": "c" }] }] with pytest.raises(ValueError): results = RuleNormalizer().normalize(rules_def)
def test_normalizer_separate_time_filters(rules_def, normalized): def sort_rules(rule): return ( rule["type"], rule["column"], rule["time_filter"][0]["column"] if isinstance( rule["time_filter"], list) else rule["time_filter"]["column"], ) results = RuleNormalizer().normalize(rules_def) expected = sorted(normalized, key=sort_rules) results_sorted = sorted(results, key=sort_rules) assert expected == results_sorted
def normalize_rules(self, raw_rules): return RuleNormalizer.normalize(raw_rules)
def test_normalizer(rules_def, normalized): results = RuleNormalizer().normalize(rules_def) op = operator.itemgetter("name", "type", "column", "time_filter") expected = sorted(normalized, key=op) results_sorted = sorted(results, key=op) assert expected == results_sorted
def test_normalizer_condition(rules_def, normalized): results = RuleNormalizer().normalize(rules_def) op = operator.itemgetter("type", "column", "condition") expected = sorted(normalized, key=op) results_sorted = sorted(results, key=op) assert expected == results_sorted