summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArmin Brauns <armin.brauns@embedded-solutions.at>2022-11-14 14:31:07 +0100
committerGitHub <noreply@github.com>2022-11-14 08:31:07 -0500
commit7f23cd63a51d45415bb3df28d053562844194767 (patch)
tree1e81b5bcd806bd168c2834b1f71537c0db03831c
parent8905d54a9f25f4c1e4e3ca8331f517473e174d87 (diff)
ignore/types: add automated test for sortedness
People occasionally get this wrong and I've been manually checking it. Instead, let's have CI do it automatically. PR #2351
-rw-r--r--crates/ignore/src/default_types.rs23
1 files changed, 23 insertions, 0 deletions
diff --git a/crates/ignore/src/default_types.rs b/crates/ignore/src/default_types.rs
index ffd721dd..e6a3a8f3 100644
--- a/crates/ignore/src/default_types.rs
+++ b/crates/ignore/src/default_types.rs
@@ -291,3 +291,26 @@ pub const DEFAULT_TYPES: &[(&str, &[&str])] = &[
]),
("zstd", &["*.zst", "*.zstd"]),
];
+
+#[cfg(test)]
+mod tests {
+ use super::DEFAULT_TYPES;
+
+ #[test]
+ fn default_types_are_sorted() {
+ let mut names = DEFAULT_TYPES.iter().map(|(name, _exts)| name);
+
+ let Some(mut previous_name) = names.next() else { return; };
+
+ for name in names {
+ assert!(
+ name > previous_name,
+ r#""{}" should be sorted before "{}" in `DEFAULT_TYPES`"#,
+ name,
+ previous_name
+ );
+
+ previous_name = name;
+ }
+ }
+}