#[test]
#[allow(unused_variables)]
fn example() {
use crate::LtFmIndex;
use crate::blocks::Block2;
let characters_by_index: &[&[u8]] = &[
&[b'A', b'a'], &[b'C', b'c'], &[b'G', b'g'], ];
let characters_by_index: &[&[u8]] = &[
b"Aa", b"Cc", b"Gg"
];
let text = b"CTCCGTACACCTGTTTCGTATCGGAXXYYZZ".to_vec();
let lt_fm_index= LtFmIndex::<u32, Block2<u128>>::build(
text,
characters_by_index,
2,
4,
).unwrap();
let pattern = b"TA";
let count = lt_fm_index.count(pattern);
assert_eq!(count, 2);
let mut locations = lt_fm_index.locate(pattern);
locations.sort(); assert_eq!(locations, vec![5,18]);
let mut locations = lt_fm_index.locate(b"UNDEF");
locations.sort();
assert_eq!(locations, vec![25,26]);
let mut buffer = Vec::new();
lt_fm_index.save_to(&mut buffer).unwrap();
let loaded = LtFmIndex::load_from(&buffer[..]).unwrap();
assert_eq!(lt_fm_index, loaded);
}