### Question:
ExternalServer implements Runnable { public static void startExternalServer() { if(currentServer == null) { ExternalServer externalServer = new ExternalServer(); startExternalServer(externalServer); } else { throw new RuntimeException("External Server already Running"); } } private  ExternalServer(); @Override void run(); int getActiveClientsCount(); static void startExternalServer(); static ExternalServer getCurrentInstance(); static final int EXTERNAL_SERVER_PORT; }### Answer:
@Test public void startExternalServer() throws Exception { ExternalServer.startExternalServer(); Socket socket = getSocket(); Socket socket2 = getSocket(); sendMsg(socket, "health", "Player1", ExternalValueDataType.FLOAT, 100f); sendMsg(socket, "inWater", "Player1", ExternalValueDataType.BOOLEAN, true); sendMsg(socket2, "money", "Player2", ExternalValueDataType.LONG, 50); sendMsg(socket2, "inWater", "Player2", ExternalValueDataType.BOOLEAN, false); socket.close(); socket2.close(); Sleep.sleep(2000); }