@Test
public void shouldFailOnProcessError() {

  final ThreadServer server = new ThreadServer() {
    @Override
    protected void process() throws Exception {
      throw new IllegalArgumentException();
    }
  };
  server.boot(true);
  trySleep(100);
  server.waitStatus(ServerStatus.TERMINATED);
  assertNotNull(server.getException());
  assertEquals(ServerStatus.TERMINATED, server.getStatus());
}