in src/metrics/mod.rs [58:77]
fn basic() {
let metrics = Metrics::new();
metrics.register(&TestStat::Alpha);
assert!(metrics.reading(&TestStat::Alpha).is_err());
metrics
.record_counter(&TestStat::Alpha, Instant::<Nanoseconds<u64>>::now(), 0)
.expect("failed to record counter");
assert_eq!(metrics.reading(&TestStat::Alpha), Ok(0));
let now = Instant::<Nanoseconds<u64>>::now();
metrics
.record_counter(&TestStat::Alpha, now + Duration::from_millis(500), 0)
.expect("failed to record counter");
assert_eq!(metrics.reading(&TestStat::Alpha), Ok(0));
assert_eq!(metrics.percentile(&TestStat::Alpha, 0.0), Ok(0));
metrics
.record_counter(&TestStat::Alpha, now + Duration::from_millis(1500), 1)
.expect("failed to record counter");
assert_eq!(metrics.reading(&TestStat::Alpha), Ok(1));
assert_eq!(metrics.percentile(&TestStat::Alpha, 100.0), Ok(1));
}