Test for msp iter
This commit is contained in:
@@ -9,6 +9,7 @@ futures-util = "0.3.31"
|
||||
pin-project = "1"
|
||||
async-channel = "2.3.1"
|
||||
scylla = "1.1"
|
||||
time = { version = "0.3.41", features = ["parsing", "formatting", "macros"] }
|
||||
autoerr = "0.0.3"
|
||||
daqbuf-err = { path = "../../../daqbuf-err" }
|
||||
netpod = { path = "../../../daqbuf-netpod", package = "daqbuf-netpod" }
|
||||
|
||||
@@ -44,9 +44,54 @@ impl Iterator for MspLspIter {
|
||||
fn test_iter_00() {
|
||||
let range = NanoRange::from_strings("2024-06-07T09:17:31Z", "2024-06-07T09:17:31Z").unwrap();
|
||||
let pbp = PrebinnedPartitioning::Sec1;
|
||||
let mut it = MspLspIter::new(range, pbp);
|
||||
// taskrun;
|
||||
for x in it {
|
||||
eprintln!("{:?}", x);
|
||||
}
|
||||
assert_eq!(pbp.patch_len(), 1200);
|
||||
let it = MspLspIter::new(range, pbp);
|
||||
let a: Vec<_> = it.collect();
|
||||
assert_eq!(a.len(), 0);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_iter_01() {
|
||||
let range = NanoRange::from_strings("2024-06-07T09:17:31Z", "2024-06-07T09:17:32Z").unwrap();
|
||||
let pbp = PrebinnedPartitioning::Sec1;
|
||||
assert_eq!(pbp.patch_len(), 1200);
|
||||
let it = MspLspIter::new(range, pbp.clone());
|
||||
let a: Vec<_> = it.collect();
|
||||
assert_eq!(a.len(), 1);
|
||||
assert_eq!(a[0].0.0, 1431459);
|
||||
assert_eq!(a[0].1.0, 1051);
|
||||
let ts_sec = pbp.patch_len() as u64 * a[0].0.0 as u64 + a[0].1.0 as u64;
|
||||
// time::UtcDateTime::new(time::Date::with, time)
|
||||
let ts1 = time::UtcDateTime::from_unix_timestamp(ts_sec as i64).unwrap();
|
||||
let fmt = time::macros::format_description!("[year]-[month]-[day]T[hour]:[minute]:[second]Z");
|
||||
let ts2 = time::UtcDateTime::parse("2024-06-07T09:17:31Z", &fmt).unwrap();
|
||||
assert_eq!(ts1, ts2);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_iter_02() {
|
||||
let range = NanoRange::from_strings("2024-06-07T09:17:31Z", "2024-06-07T09:22:00Z").unwrap();
|
||||
let pbp = PrebinnedPartitioning::Sec1;
|
||||
let it = MspLspIter::new(range, pbp.clone());
|
||||
let a: Vec<_> = it.collect();
|
||||
assert_eq!(a.len(), 240 + 29);
|
||||
let e = &a[a.len() - 1];
|
||||
assert_eq!(e.0.0, 1431460);
|
||||
assert_eq!(e.1.0, 119);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_iter_03() {
|
||||
// Check clamped covering in correct direction
|
||||
let range = NanoRange::from_strings("2024-06-07T09:17:31.1Z", "2024-06-07T09:21:59.8Z").unwrap();
|
||||
let pbp = PrebinnedPartitioning::Sec1;
|
||||
let it = MspLspIter::new(range, pbp.clone());
|
||||
let a: Vec<_> = it.collect();
|
||||
assert_eq!(a.len(), 240 + 29);
|
||||
let e = &a[0];
|
||||
assert_eq!(e.0.0, 1431459);
|
||||
assert_eq!(e.1.0, 1051);
|
||||
let e = &a[a.len() - 1];
|
||||
assert_eq!(e.0.0, 1431460);
|
||||
assert_eq!(e.1.0, 119);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user