public void testTimeWindowing() {
Count count = new Count();
MetricConfig config = new MetricConfig().timeWindow(1, TimeUnit.MILLISECONDS).samples(2);
count.record(config, 1.0, time.milliseconds());
time.sleep(1);
count.record(config, 1.0, time.milliseconds());
assertEquals(2.0, count.measure(config, time.milliseconds()), EPS);
time.sleep(1);
count.record(config, 1.0, time.milliseconds()); // oldest event times out
assertEquals(2.0, count.measure(config, time.milliseconds()), EPS);
}