blazediff_interpret/
severity.rs1use super::types::ChangeSeverity;
2
3pub fn classify_severity(diff_percentage: f64) -> ChangeSeverity {
8 if diff_percentage < 1.0 {
9 ChangeSeverity::Low
10 } else if diff_percentage <= 10.0 {
11 ChangeSeverity::Medium
12 } else {
13 ChangeSeverity::High
14 }
15}
16
17#[cfg(test)]
18mod tests {
19 use super::*;
20
21 #[test]
22 fn test_low_severity() {
23 assert_eq!(classify_severity(0.0), ChangeSeverity::Low);
24 assert_eq!(classify_severity(0.5), ChangeSeverity::Low);
25 assert_eq!(classify_severity(0.99), ChangeSeverity::Low);
26 }
27
28 #[test]
29 fn test_medium_severity() {
30 assert_eq!(classify_severity(1.0), ChangeSeverity::Medium);
31 assert_eq!(classify_severity(5.0), ChangeSeverity::Medium);
32 assert_eq!(classify_severity(10.0), ChangeSeverity::Medium);
33 }
34
35 #[test]
36 fn test_high_severity() {
37 assert_eq!(classify_severity(10.1), ChangeSeverity::High);
38 assert_eq!(classify_severity(50.0), ChangeSeverity::High);
39 assert_eq!(classify_severity(100.0), ChangeSeverity::High);
40 }
41}