package com.cardshifter.server.messages; import java.util.Arrays; import com.cardshifter.server.commands.CommandContext; import com.cardshifter.server.main.ServerConfiguration; import com.cardshifter.server.model.Command; import com.cardshifter.server.utils.export.DataExportCommand; import org.apache.log4j.PropertyConfigurator; import org.junit.Test; import com.cardshifter.core.game.FakeClient; import com.cardshifter.core.game.ServerGame; import com.cardshifter.server.main.ServerMain; import com.cardshifter.server.model.MainServer; import com.cardshifter.server.model.Server; import static org.junit.Assert.assertTrue; public class ExportTest { @Test public void test() { PropertyConfigurator.configure(ServerMain.class.getResourceAsStream("log4j.properties")); ServerConfiguration config = ServerConfiguration.defaults(); // Use any available port config.setPortSocket(0); config.setPortWebsocket(0); Server server = new MainServer(config).start(); assertTrue("Server should start correctly.", server.getClients().size() > 0); String modName = server.getGameFactories().keySet().iterator().next(); ServerGame game = server.createGame(modName); FakeClient fakeClient = new FakeClient(server, e -> {}); game.start(Arrays.asList(fakeClient, new FakeClient(server, e -> {}))); DataExportCommand exporter = new DataExportCommand(); DataExportCommand.DataExportParameters params = new DataExportCommand.DataExportParameters(); params.gameId = 1; exporter.handle(new CommandContext(server, new Command(fakeClient, "-game 1"), fakeClient), params); server.stop(); } }