mirror of
https://github.com/martinvonz/jj.git
synced 2025-01-09 05:58:55 +00:00
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.
This commit is contained in:
parent
14ddd17673
commit
af2dba1c8f
1 changed files with 67 additions and 67 deletions
134
lib/src/merge.rs
134
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<FileId>) -> 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);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue