.withEndpointMetricsHandler(endpointMetricsHandlerMock) .withIncludeServerConfigMetrics(includeServerConfigMetrics) .build(); verifyServerStatisticMetrics(instance);
builder = builder.withMetricsCollector(alternateCmcMock); .withEndpointMetricsHandler(endpointMetricsHandlerMock) .withIncludeServerConfigMetrics(includeServerConfigMetrics) .withServerConfigMetricNamingStrategy(configNamingStrat) .withServerStatsMetricNamingStrategy(statsNamingStrat) .withRequestAndResponseSizeHistogramSupplier(histogramSupplier); CodahaleMetricsListener result = builder.build();
@Test public void builder_works_as_expected_for_default_unspecified_fields() { // given setupMetricRegistryAndCodahaleMetricsCollector(); Builder builder = CodahaleMetricsListener.newBuilder(cmcMock); // when CodahaleMetricsListener result = builder.build(); // then assertThat(result.metricsCollector).isSameAs(cmcMock); assertThat(result.endpointMetricsHandler) .isNotNull() .isInstanceOf(EndpointMetricsHandlerDefaultImpl.class); assertThat(result.includeServerConfigMetrics).isFalse(); assertNamingStrategyIsDefault(result.serverStatsMetricNamingStrategy, DEFAULT_PREFIX, DEFAULT_WORD_DELIMITER); assertNamingStrategyIsDefault(result.serverConfigMetricNamingStrategy, ServerConfig.class.getSimpleName(), DEFAULT_WORD_DELIMITER); assertThat(result.requestAndResponseSizeHistogramSupplier) .isSameAs(DEFAULT_REQUEST_AND_RESPONSE_SIZE_HISTOGRAM_SUPPLIER); assertThat(registeredGauges).isEmpty(); }
/** * @param cmc The {@link CodahaleMetricsCollector} that should be used. This is a required field and must be * non-null by the time {@link Builder#build()} is called or an {@link IllegalArgumentException} will be thrown. * * @return A new builder for {@link CodahaleMetricsListener}. */ public static Builder newBuilder(CodahaleMetricsCollector cmc) { return new Builder(cmc); }
@Test public void an_IllegalArgumentException_is_thrown_if_builder_is_built_with_null_CodahaleMetricsCollector() { // given Builder builder = CodahaleMetricsListener.newBuilder(null); // when Throwable ex = catchThrowable(() -> builder.build()); // then assertThat(ex).isInstanceOf(IllegalArgumentException.class); }