package net.knarcraft.minecraftserverlauncher.server; import net.knarcraft.minecraftserverlauncher.Main; import net.knarcraft.minecraftserverlauncher.utility.CommonFunctions; import org.junit.Before; import org.junit.Test; import java.io.*; import static junit.framework.TestCase.assertEquals; import static net.knarcraft.minecraftserverlauncher.utility.CommonFunctions.createAllFolders; public class ServerVersionContainerTest { private final String filesDirectory = Main.getApplicationWorkDirectory() + File.separator + "files"; private final String versionFile = filesDirectory + File.separator + "versions.csv"; private ServerVersionContainer serverVersionContainer; @Before public void setUp() { try { createAllFolders(); } catch (FileNotFoundException e) { e.printStackTrace(); } File versionFileFile = new File(versionFile); if (versionFileFile.exists() && !versionFileFile.delete()) { throw new IllegalArgumentException("Unable to remove old version file."); } serverVersionContainer = ServerVersionContainer.getInstance(); } @Test public void toStringTest() { serverVersionContainer.reset(); System.out.println(serverVersionContainer.toString()); assertEquals("vanillaVersion;null\nsnapshotVersion;null\nbungeeVersion;null\nwaterfallVersions;\n" + "travertineVersions;\nspongeVanillaVersions;\nspongeForgeVersions;", serverVersionContainer.toString()); } @Test public void saveStateTest() throws IOException { serverVersionContainer.saveState(); BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(versionFile))); String savedData = CommonFunctions.readBufferedReader(reader); reader.close(); assertEquals(serverVersionContainer.toString(), savedData); } }