### Question:
AbstractServerSocketAppender extends AppenderBase<E> { @Override public void start() { if (isStarted()) return; try { ServerSocket socket = getServerSocketFactory().createServerSocket( getPort(), getBacklog(), getInetAddress()); ServerListener<RemoteReceiverClient> listener = createServerListener(socket); runner = createServerRunner(listener, getContext().getScheduledExecutorService()); runner.setContext(getContext()); getContext().getScheduledExecutorService().execute(runner); super.start(); } catch (Exception ex) { addError("server startup error: " + ex, ex); } }  @Override void start(); @Override void stop(); int getPort(); void setPort(int port); int getBacklog(); void setBacklog(int backlog); String getAddress(); void setAddress(String address); int getClientQueueSize(); void setClientQueueSize(int clientQueueSize); static final int DEFAULT_BACKLOG; static final int DEFAULT_CLIENT_QUEUE_SIZE; }### Answer:
@Test public void testStartWhenAlreadyStarted() throws Exception { appender.start(); appender.start(); assertEquals(1, runner.getStartCount()); }