@Test
public void reportsAllMetricsDefault() {

    when(logger.isInfoEnabled(marker)).thenReturn(true);
    infoReporter().report(map("test.gauge", () -> "value"),
            map("test.counter", counter()),
            map("test.histogram", histogram()),
            map("test.meter", meter()),
            map("test.timer", timer()));
    verify(logger).info(marker, "type=GAUGE, name=prefix.test.gauge, value=value");
    verify(logger).info(marker, "type=COUNTER, name=prefix.test.counter, count=100");
    verify(logger).info(marker, "type=HISTOGRAM, name=prefix.test.histogram, count=1, min=4, max=2, mean=3.0, " +
            "stddev=5.0, p50=6.0, p75=7.0, p95=8.0, p98=9.0, p99=10.0, p999=11.0");
    verify(logger).info(marker, "type=METER, name=prefix.test.meter, count=1, m1_rate=3.0, m5_rate=4.0, " +
            "m15_rate=5.0, mean_rate=2.0, rate_unit=events/second");
    verify(logger).info(marker, "type=TIMER, name=prefix.test.timer, count=1, min=300.0, max=100.0, " +
            "mean=200.0, stddev=400.0, p50=500.0, p75=600.0, p95=700.0, p98=800.0, p99=900.0, p999=1000.0," +
            " m1_rate=3.0, m5_rate=4.0, m15_rate=5.0, mean_rate=2.0, rate_unit=events/second, duration_unit=milliseconds");
}