summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorandy.boot <bootandy@gmail.com>2022-08-23 10:42:49 +0100
committerandy.boot <bootandy@gmail.com>2022-08-23 11:47:18 +0100
commiteebd9daf2a4c0d6abf166d6bb926a22680ac2d69 (patch)
tree240f0116d3131295f8c51ec9b3f1b6fa3bcacc8e
parent9bc1a6d6250be2a550098a84ae883908794cfd8d (diff)
Feature: Add error message on bad min-size
Log to stderr if the min-size from either parameter or config is invalid
-rw-r--r--src/config.rs15
1 files changed, 11 insertions, 4 deletions
diff --git a/src/config.rs b/src/config.rs
index 3cd2019..80c2216 100644
--- a/src/config.rs
+++ b/src/config.rs
@@ -77,12 +77,20 @@ fn convert_min_size(input: &str, iso: bool) -> Option<usize> {
let marker = pure * num.pow((i + 1) as u32);
Some(marker)
}
- Err(_) => None,
+ Err(_) => {
+ eprintln!("Ignoring invalid min-size: {}", input);
+ None
+ }
};
}
}
starts.push(*last);
- starts.parse().ok()
+ starts
+ .parse()
+ .map_err(|_| {
+ eprintln!("Ignoring invalid min-size: {}", input);
+ })
+ .ok()
}
None => None,
}
@@ -126,13 +134,12 @@ mod tests {
}
#[test]
- fn test_config_min_size() {
+ fn test_min_size_from_config_applied_or_overridden() {
let c = Config {
min_size: Some("1K".to_owned()),
..Default::default()
};
assert_eq!(c._get_min_size(None, false), Some(1024));
- assert_eq!(c._get_min_size(Some("100"), false), Some(100));
assert_eq!(c._get_min_size(Some("2K"), false), Some(2048));
assert_eq!(c._get_min_size(None, true), Some(1000));