use http::StatusCode;
use parlov_core::{OracleClass, OracleResult};
use super::patterns;
pub(super) fn classify(baseline: StatusCode, probe: StatusCode) -> OracleResult {
let evidence = vec![format!(
"{} (baseline) vs {} (probe)",
baseline.as_u16(),
probe.as_u16(),
)];
let m = patterns::lookup(baseline, probe);
OracleResult {
class: OracleClass::Existence,
verdict: m.verdict,
evidence,
severity: m.severity,
label: m.label.map(String::from),
leaks: m.leaks.map(String::from),
rfc_basis: m.rfc_basis.map(String::from),
baseline_summary: None,
probe_summary: None,
header_diffs: vec![],
}
}
#[cfg(test)]
#[path = "classifier_tests.rs"]
mod tests;