From af2dba1c8f9411702146a3754beb41a225430e67 Mon Sep 17 00:00:00 2001 From: Martin von Zweigbergk Date: Sun, 6 Aug 2023 15:10:24 -0700 Subject: [PATCH] merge: move `tests` module to end of file I used IntelliJ to move the `Merge` type from the `conflict` module and didn't notice until now that it put the moved items after the tests. --- lib/src/merge.rs | 134 +++++++++++++++++++++++------------------------ 1 file changed, 67 insertions(+), 67 deletions(-) diff --git a/lib/src/merge.rs b/lib/src/merge.rs index 1923a394a..755cfe957 100644 --- a/lib/src/merge.rs +++ b/lib/src/merge.rs @@ -98,73 +98,6 @@ where } } -#[cfg(test)] -mod tests { - use super::*; - - #[test] - fn test_trivial_merge() { - assert_eq!(trivial_merge(&[], &[0]), Some(&0)); - assert_eq!(trivial_merge(&[0], &[0, 0]), Some(&0)); - assert_eq!(trivial_merge(&[0], &[0, 1]), Some(&1)); - assert_eq!(trivial_merge(&[0], &[1, 0]), Some(&1)); - assert_eq!(trivial_merge(&[0], &[1, 1]), Some(&1)); - assert_eq!(trivial_merge(&[0], &[1, 2]), None); - assert_eq!(trivial_merge(&[0, 0], &[0, 0, 0]), Some(&0)); - assert_eq!(trivial_merge(&[0, 0], &[0, 0, 1]), Some(&1)); - assert_eq!(trivial_merge(&[0, 0], &[0, 1, 0]), Some(&1)); - assert_eq!(trivial_merge(&[0, 0], &[0, 1, 1]), Some(&1)); - assert_eq!(trivial_merge(&[0, 0], &[0, 1, 2]), None); - assert_eq!(trivial_merge(&[0, 0], &[1, 0, 0]), Some(&1)); - assert_eq!(trivial_merge(&[0, 0], &[1, 0, 1]), Some(&1)); - assert_eq!(trivial_merge(&[0, 0], &[1, 0, 2]), None); - assert_eq!(trivial_merge(&[0, 0], &[1, 1, 0]), Some(&1)); - assert_eq!(trivial_merge(&[0, 0], &[1, 1, 1]), Some(&1)); - assert_eq!(trivial_merge(&[0, 0], &[1, 1, 2]), None); - assert_eq!(trivial_merge(&[0, 0], &[1, 2, 0]), None); - assert_eq!(trivial_merge(&[0, 0], &[1, 2, 1]), None); - assert_eq!(trivial_merge(&[0, 0], &[1, 2, 2]), None); - assert_eq!(trivial_merge(&[0, 0], &[1, 2, 3]), None); - assert_eq!(trivial_merge(&[0, 1], &[0, 0, 0]), Some(&0)); - assert_eq!(trivial_merge(&[0, 1], &[0, 0, 1]), Some(&0)); - assert_eq!(trivial_merge(&[0, 1], &[0, 0, 2]), None); - assert_eq!(trivial_merge(&[0, 1], &[0, 1, 0]), Some(&0)); - assert_eq!(trivial_merge(&[0, 1], &[0, 1, 1]), Some(&1)); - assert_eq!(trivial_merge(&[0, 1], &[0, 1, 2]), Some(&2)); - assert_eq!(trivial_merge(&[0, 1], &[0, 2, 0]), None); - assert_eq!(trivial_merge(&[0, 1], &[0, 2, 1]), Some(&2)); - assert_eq!(trivial_merge(&[0, 1], &[0, 2, 2]), Some(&2)); - assert_eq!(trivial_merge(&[0, 1], &[0, 2, 3]), None); - assert_eq!(trivial_merge(&[0, 1], &[1, 0, 0]), Some(&0)); - assert_eq!(trivial_merge(&[0, 1], &[1, 0, 1]), Some(&1)); - assert_eq!(trivial_merge(&[0, 1], &[1, 0, 2]), Some(&2)); - assert_eq!(trivial_merge(&[0, 1], &[1, 1, 0]), Some(&1)); - assert_eq!(trivial_merge(&[0, 1], &[1, 1, 1]), Some(&1)); - assert_eq!(trivial_merge(&[0, 1], &[1, 1, 2]), None); - assert_eq!(trivial_merge(&[0, 1], &[1, 2, 0]), Some(&2)); - assert_eq!(trivial_merge(&[0, 1], &[1, 2, 1]), None); - assert_eq!(trivial_merge(&[0, 1], &[1, 2, 2]), Some(&2)); - assert_eq!(trivial_merge(&[0, 1], &[1, 2, 3]), None); - assert_eq!(trivial_merge(&[0, 1], &[2, 0, 0]), None); - assert_eq!(trivial_merge(&[0, 1], &[2, 0, 1]), Some(&2)); - assert_eq!(trivial_merge(&[0, 1], &[2, 0, 2]), Some(&2)); - assert_eq!(trivial_merge(&[0, 1], &[2, 0, 3]), None); - assert_eq!(trivial_merge(&[0, 1], &[2, 1, 0]), Some(&2)); - assert_eq!(trivial_merge(&[0, 1], &[2, 1, 1]), None); - assert_eq!(trivial_merge(&[0, 1], &[2, 1, 2]), Some(&2)); - assert_eq!(trivial_merge(&[0, 1], &[2, 1, 3]), None); - assert_eq!(trivial_merge(&[0, 1], &[2, 2, 0]), Some(&2)); - assert_eq!(trivial_merge(&[0, 1], &[2, 2, 1]), Some(&2)); - assert_eq!(trivial_merge(&[0, 1], &[2, 2, 2]), None); - assert_eq!(trivial_merge(&[0, 1], &[2, 2, 3]), None); - assert_eq!(trivial_merge(&[0, 1], &[2, 3, 0]), None); - assert_eq!(trivial_merge(&[0, 1], &[2, 3, 1]), None); - assert_eq!(trivial_merge(&[0, 1], &[2, 3, 2]), None); - assert_eq!(trivial_merge(&[0, 1], &[2, 3, 3]), None); - assert_eq!(trivial_merge(&[0, 1], &[2, 3, 4]), None); - } -} - /// A generic representation of merged values. /// /// There is exactly one more `adds()` than `removes()`. When interpreted as a @@ -612,3 +545,70 @@ fn get_file_contents(store: &Store, path: &RepoPath, term: &Option) -> C None => ContentHunk(vec![]), } } + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn test_trivial_merge() { + assert_eq!(trivial_merge(&[], &[0]), Some(&0)); + assert_eq!(trivial_merge(&[0], &[0, 0]), Some(&0)); + assert_eq!(trivial_merge(&[0], &[0, 1]), Some(&1)); + assert_eq!(trivial_merge(&[0], &[1, 0]), Some(&1)); + assert_eq!(trivial_merge(&[0], &[1, 1]), Some(&1)); + assert_eq!(trivial_merge(&[0], &[1, 2]), None); + assert_eq!(trivial_merge(&[0, 0], &[0, 0, 0]), Some(&0)); + assert_eq!(trivial_merge(&[0, 0], &[0, 0, 1]), Some(&1)); + assert_eq!(trivial_merge(&[0, 0], &[0, 1, 0]), Some(&1)); + assert_eq!(trivial_merge(&[0, 0], &[0, 1, 1]), Some(&1)); + assert_eq!(trivial_merge(&[0, 0], &[0, 1, 2]), None); + assert_eq!(trivial_merge(&[0, 0], &[1, 0, 0]), Some(&1)); + assert_eq!(trivial_merge(&[0, 0], &[1, 0, 1]), Some(&1)); + assert_eq!(trivial_merge(&[0, 0], &[1, 0, 2]), None); + assert_eq!(trivial_merge(&[0, 0], &[1, 1, 0]), Some(&1)); + assert_eq!(trivial_merge(&[0, 0], &[1, 1, 1]), Some(&1)); + assert_eq!(trivial_merge(&[0, 0], &[1, 1, 2]), None); + assert_eq!(trivial_merge(&[0, 0], &[1, 2, 0]), None); + assert_eq!(trivial_merge(&[0, 0], &[1, 2, 1]), None); + assert_eq!(trivial_merge(&[0, 0], &[1, 2, 2]), None); + assert_eq!(trivial_merge(&[0, 0], &[1, 2, 3]), None); + assert_eq!(trivial_merge(&[0, 1], &[0, 0, 0]), Some(&0)); + assert_eq!(trivial_merge(&[0, 1], &[0, 0, 1]), Some(&0)); + assert_eq!(trivial_merge(&[0, 1], &[0, 0, 2]), None); + assert_eq!(trivial_merge(&[0, 1], &[0, 1, 0]), Some(&0)); + assert_eq!(trivial_merge(&[0, 1], &[0, 1, 1]), Some(&1)); + assert_eq!(trivial_merge(&[0, 1], &[0, 1, 2]), Some(&2)); + assert_eq!(trivial_merge(&[0, 1], &[0, 2, 0]), None); + assert_eq!(trivial_merge(&[0, 1], &[0, 2, 1]), Some(&2)); + assert_eq!(trivial_merge(&[0, 1], &[0, 2, 2]), Some(&2)); + assert_eq!(trivial_merge(&[0, 1], &[0, 2, 3]), None); + assert_eq!(trivial_merge(&[0, 1], &[1, 0, 0]), Some(&0)); + assert_eq!(trivial_merge(&[0, 1], &[1, 0, 1]), Some(&1)); + assert_eq!(trivial_merge(&[0, 1], &[1, 0, 2]), Some(&2)); + assert_eq!(trivial_merge(&[0, 1], &[1, 1, 0]), Some(&1)); + assert_eq!(trivial_merge(&[0, 1], &[1, 1, 1]), Some(&1)); + assert_eq!(trivial_merge(&[0, 1], &[1, 1, 2]), None); + assert_eq!(trivial_merge(&[0, 1], &[1, 2, 0]), Some(&2)); + assert_eq!(trivial_merge(&[0, 1], &[1, 2, 1]), None); + assert_eq!(trivial_merge(&[0, 1], &[1, 2, 2]), Some(&2)); + assert_eq!(trivial_merge(&[0, 1], &[1, 2, 3]), None); + assert_eq!(trivial_merge(&[0, 1], &[2, 0, 0]), None); + assert_eq!(trivial_merge(&[0, 1], &[2, 0, 1]), Some(&2)); + assert_eq!(trivial_merge(&[0, 1], &[2, 0, 2]), Some(&2)); + assert_eq!(trivial_merge(&[0, 1], &[2, 0, 3]), None); + assert_eq!(trivial_merge(&[0, 1], &[2, 1, 0]), Some(&2)); + assert_eq!(trivial_merge(&[0, 1], &[2, 1, 1]), None); + assert_eq!(trivial_merge(&[0, 1], &[2, 1, 2]), Some(&2)); + assert_eq!(trivial_merge(&[0, 1], &[2, 1, 3]), None); + assert_eq!(trivial_merge(&[0, 1], &[2, 2, 0]), Some(&2)); + assert_eq!(trivial_merge(&[0, 1], &[2, 2, 1]), Some(&2)); + assert_eq!(trivial_merge(&[0, 1], &[2, 2, 2]), None); + assert_eq!(trivial_merge(&[0, 1], &[2, 2, 3]), None); + assert_eq!(trivial_merge(&[0, 1], &[2, 3, 0]), None); + assert_eq!(trivial_merge(&[0, 1], &[2, 3, 1]), None); + assert_eq!(trivial_merge(&[0, 1], &[2, 3, 2]), None); + assert_eq!(trivial_merge(&[0, 1], &[2, 3, 3]), None); + assert_eq!(trivial_merge(&[0, 1], &[2, 3, 4]), None); + } +}