def test_get_failures( failures: List[Tuple], include_rule_modes: Set[RuleMode], exclude_rule_modes: Set[RuleMode], expected_result: List[Failure], ): result = Result() for failure in failures: result.add_failure(*failure) assert compare_lists_of_failures(result.get_failures(include_rule_modes, exclude_rule_modes), expected_result)
def format_result_txt(result: Result) -> str: result_lines = [f"Valid: {result.valid}"] blocking_rules = result.get_failures( include_rule_modes={RuleMode.BLOCKING}) if blocking_rules: result_lines.append("Issues found:") [ result_lines.append(f"\t- {r.rule}: {r.reason}") for r in blocking_rules ] monitoring_rules = result.get_failures( include_rule_modes={RuleMode.MONITOR}) if monitoring_rules: result_lines.append("Monitored issues found:") [ result_lines.append(f"\t- {r.rule}: {r.reason}") for r in monitoring_rules ] return "\n".join(result_lines)