private void registerDoubleMetric(String name, final int value) { metricsRegistry.register( this, name, ProbeLevel.INFO, new DoubleProbeFunction<RenderTest>() { @Override public double get(RenderTest source) throws Exception { return value; } }); }
@Test public void whenException() { ProbeRenderer renderer = mock(ProbeRenderer.class); final ExpectedRuntimeException ex = new ExpectedRuntimeException(); metricsRegistry.register( this, "foo", ProbeLevel.MANDATORY, new LongProbeFunction<RenderTest>() { @Override public long get(RenderTest source) throws Exception { throw ex; } }); metricsRegistry.render(renderer); verify(renderer).start(); verify(renderer).renderException("foo", ex); verify(renderer).finish(); verifyNoMoreInteractions(renderer); }