Skip to main content

fallow_cli/report/ci/
severity.rs

1use fallow_config::Severity;
2
3#[must_use]
4pub const fn sarif_level(severity: Severity) -> &'static str {
5    match severity {
6        Severity::Error => "error",
7        Severity::Warn => "warning",
8        Severity::Off => unreachable!(),
9    }
10}
11
12#[must_use]
13pub const fn review_label(severity: Severity) -> &'static str {
14    match severity {
15        Severity::Error => "error",
16        Severity::Warn => "warn",
17        Severity::Off => "off",
18    }
19}
20
21#[cfg(test)]
22mod tests {
23    use super::*;
24
25    #[test]
26    fn maps_error_across_ci_surfaces() {
27        assert_eq!(sarif_level(Severity::Error), "error");
28        assert_eq!(review_label(Severity::Error), "error");
29    }
30
31    #[test]
32    fn maps_warn_across_ci_surfaces() {
33        assert_eq!(sarif_level(Severity::Warn), "warning");
34        assert_eq!(review_label(Severity::Warn), "warn");
35    }
36}