grass_runtime/
lib.rs

1mod file;
2mod genome;
3mod ioutils;
4
5pub mod algorithm;
6pub mod const_bag;
7pub mod property;
8pub mod record;
9
10pub use file::LineRecordStreamExt;
11pub use genome::{ChrRef, Genome};
12
13pub use itertools::Itertools;
14
15pub mod prelude {}
16
17#[cfg(test)]
18mod test {
19    use crate::Genome;
20
21    #[test]
22    fn test_genome_storage() {
23        Genome::clear_genome_definition();
24        let id = Genome::query_chr("chr1").get_id_or_update();
25        assert_eq!(id, 0);
26        assert_eq!(Genome::query_chr("chr1").id(), Some(0));
27        assert_eq!(Genome::query_chr("chr1").verify_size_or_update(100), true);
28        assert_ne!(Genome::query_chr("chr1").verify_size_or_update(200), true);
29        assert_eq!(Genome::query_chr("chr1").get_chr_size(), Some(100));
30        assert_eq!(Genome::query_chr("chr1").to_string(), "chr1");
31    }
32}