use low_expectations::types::SuiteValidationResult;
use low_expectations::ExpectationSuite;
use prosesmasher_domain_types::{CheckConfig, Document};
use crate::check::Check;
#[must_use]
pub fn run_checks(
checks: &[&dyn Check],
doc: &Document,
config: &CheckConfig,
) -> SuiteValidationResult {
let mut suite = ExpectationSuite::new("prosesmasher");
for check in checks {
if let Some(locales) = check.supported_locales()
&& !locales.contains(&doc.locale)
{
continue;
}
check.run(doc, config, &mut suite);
}
suite.into_suite_result()
}
#[cfg(test)]
#[path = "runner_tests.rs"]
mod tests;