@Test public void whenDoubleProbeFunctions() { ProbeRenderer renderer = mock(ProbeRenderer.class); registerDoubleMetric("foo", 10); registerDoubleMetric("bar", 20); metricsRegistry.render(renderer); verify(renderer).start(); verify(renderer).renderDouble("foo", 10); verify(renderer).renderDouble("bar", 20); verify(renderer).finish(); verifyNoMoreInteractions(renderer); }
@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); }
@Test(expected = NullPointerException.class) public void whenCalledWithNullRenderer() { metricsRegistry.render(null); }