kern 1.7.1

General library for Rust
Documentation
use kern::byte::{scan, split, splitn};

#[test]
fn test_splitn() {
    let v = vec![
        1, 2, 3, 0, 0, 1, 2, 3, 0, 0, 1, 2, 3, 0, 0, 1, 2, 3, 0, 0, 1, 2, 3, 0, 0, 1, 2, 3,
    ];
    let s = splitn(4, &v, &[0, 0]);

    assert_eq!(s.len(), 4);
    assert_eq!(s[0].len(), 3);
    assert_eq!(s[1].len(), 3);
    assert_eq!(s[2].len(), 3);
    assert_eq!(s[3].len(), 13);
}

#[test]
fn test_split() {
    let v = vec![0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6];
    let s = split(&v, &[2, 3]);

    assert_eq!(s.len(), 3);
    assert_eq!(s[0].len(), 2);
    assert_eq!(s[1].len(), 8);
    assert_eq!(s[2].len(), 3);
}

#[test]
fn test_scan() {
    let mut v = vec![0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];
    assert_eq!(scan(&v, &[5, 6, 7]).unwrap(), 5);

    v.reverse();
    assert_eq!(scan(&v, &[7, 6, 5]).unwrap(), 4);
}