dicom_toolkit_data/
sequence.rs1use crate::dataset::DataSet;
8
9pub fn get_item(items: &[DataSet], index: usize) -> Option<&DataSet> {
11 items.get(index)
12}
13
14pub fn item_count(items: &[DataSet]) -> usize {
16 items.len()
17}
18
19#[cfg(test)]
20mod tests {
21 use super::*;
22
23 #[test]
24 fn get_item_in_bounds() {
25 let items = vec![DataSet::new(), DataSet::new()];
26 assert!(get_item(&items, 0).is_some());
27 assert!(get_item(&items, 1).is_some());
28 }
29
30 #[test]
31 fn get_item_out_of_bounds() {
32 let items = vec![DataSet::new()];
33 assert!(get_item(&items, 1).is_none());
34 }
35
36 #[test]
37 fn item_count_empty() {
38 assert_eq!(item_count(&[]), 0);
39 }
40
41 #[test]
42 fn item_count_nonempty() {
43 let items = vec![DataSet::new(); 3];
44 assert_eq!(item_count(&items), 3);
45 }
46}