cmp_manager/
lib.rs

1pub fn eq_vectors<T>(va: &[T], vb: &[T]) -> bool
2where
3    T: Eq,
4{
5    (va.len() == vb.len()) && va.iter().zip(vb).all(|(a, b)| *a == *b)
6}
7
8pub fn is_sorted_and_unique<T>(data: &[T]) -> bool
9where
10    T: Ord,
11{
12    data.windows(2).all(|w| w[0] < w[1])
13}
14
15/// RUST_LOG=debug cargo test --all-features --package cmp-manager --lib -- test_cmp --exact --show-output
16#[test]
17fn test_cmp() {
18    assert!(eq_vectors(&[0], &[0]));
19    assert!(!eq_vectors(&[0], &[1]));
20    assert!(is_sorted_and_unique(&[0, 1]));
21    assert!(is_sorted_and_unique(&[0, 1, 2]));
22    assert!(!is_sorted_and_unique(&[1, 0]));
23    assert!(!is_sorted_and_unique(&[0, 0]));
24    assert!(!is_sorted_and_unique(&[0, 1, 1]));
25}