package omni.backend.pipeline.service.ports; import static com.google.common.collect.Maps.immutableEntry; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.when; import org.elasticsearch.common.collect.ImmutableMap; import com.yammer.dropwizard.config.HttpConfiguration; public class DropwizardPorts { private static final String ADMIN_PORT = "admin"; private static final String HTTP_PORT = "port"; private final ImmutableMap ports; public DropwizardPorts(final int baseport) { final ImmutableMap.Builder builder = ImmutableMap.builder(); builder.put(immutableEntry(HTTP_PORT, baseport)); builder.put(immutableEntry(ADMIN_PORT, baseport + 1)); this.ports = builder.build(); } public HttpConfiguration wrap(final HttpConfiguration original) { final HttpConfiguration spy = spy(original); when(spy.getPort()).thenReturn(this.ports.get(HTTP_PORT)); when(spy.getAdminPort()).thenReturn(this.ports.get(ADMIN_PORT)); return spy; } }