OrderDetailsService implements Service { @Override public void start(String bootstrapServers) { executorService.execute(() -> startService(bootstrapServers)); running = true; log.info("Started Service " + getClass().getSimpleName()); }  @Override void start(String bootstrapServers); @Override void stop(); static void main(String[] args);  }
@Test public void shouldPassAndFailOrders() throws Exception { orderValService = new OrderDetailsService(); orders = asList( new Order(id(0L), 0L, CREATED, UNDERPANTS, 3, 5.00d), new Order(id(1L), 0L, CREATED, JUMPERS, -1, 75.00d) ); sendOrders(orders); orderValService.start(CLUSTER.bootstrapServers()); expected = asList( new OrderValidation(id(0L), OrderValidationType.ORDER_DETAILS_CHECK, OrderValidationResult.PASS), new OrderValidation(id(1L), OrderValidationType.ORDER_DETAILS_CHECK, OrderValidationResult.FAIL) ); assertThat(MicroserviceTestUtils.read(Topics.ORDER_VALIDATIONS, 2, CLUSTER.bootstrapServers())) .isEqualTo(expected); }