fn absolute_counter()

in src/metrics/mod.rs [91:118]


    fn absolute_counter() {
        let metrics = Metrics::new();
        metrics.register(&TestStat::Alpha);
        let start = Instant::<Nanoseconds<u64>>::now();
        assert!(metrics.reading(&TestStat::Alpha).is_err());
        metrics.record_counter(&TestStat::Alpha, start, 0).unwrap();
        assert_eq!(metrics.reading(&TestStat::Alpha), Ok(0));
        metrics
            .record_counter(
                &TestStat::Alpha,
                start + Duration::from_millis(1000),
                1000000,
            )
            .unwrap();
        assert_eq!(metrics.reading(&TestStat::Alpha), Ok(1000000));
        assert_eq!(metrics.percentile(&TestStat::Alpha, 99.9), Ok(1000000));
        metrics
            .record_counter(
                &TestStat::Alpha,
                start + Duration::from_millis(2000),
                3000000,
            )
            .unwrap();
        assert_eq!(metrics.reading(&TestStat::Alpha), Ok(3000000));
        assert_eq!(metrics.percentile(&TestStat::Alpha, 99.9), Ok(2000000));
        metrics.record_counter(&TestStat::Alpha, start, 42).unwrap();
        assert_ne!(metrics.reading(&TestStat::Alpha), Ok(42));
    }