package pro.gravit.launchserver; import org.bouncycastle.jce.provider.BouncyCastleProvider; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.io.TempDir; import pro.gravit.launcher.base.Launcher; import pro.gravit.launchserver.config.LaunchServerConfig; import pro.gravit.launchserver.impl.TestLaunchServerConfigManager; import pro.gravit.launchserver.manangers.CertificateManager; import pro.gravit.launchserver.manangers.LaunchServerGsonManager; import pro.gravit.launchserver.modules.impl.LaunchServerModulesManager; import pro.gravit.utils.command.StdCommandHandler; import java.nio.file.Path; import java.security.Security; public class StartLaunchServerTest { @TempDir public static Path modulesDir; @TempDir public static Path configDir; @TempDir public static Path dir; public static LaunchServer launchServer; @BeforeAll public static void prepare() throws Throwable { if (Security.getProvider("BC") == null) Security.addProvider(new BouncyCastleProvider()); LaunchServerModulesManager modulesManager = new LaunchServerModulesManager(modulesDir, configDir, null); LaunchServerConfig config = LaunchServerConfig.getDefault(LaunchServer.LaunchServerEnv.TEST); Launcher.gsonManager = new LaunchServerGsonManager(modulesManager); Launcher.gsonManager.initGson(); LaunchServerBuilder builder = new LaunchServerBuilder(); builder.setDir(dir) .setEnv(LaunchServer.LaunchServerEnv.TEST) .setConfig(config) .setCertificateManager(new CertificateManager()) .setLaunchServerConfigManager(new TestLaunchServerConfigManager()) .setModulesManager(modulesManager) .setCommandHandler(new StdCommandHandler(false)); launchServer = builder.build(); } @AfterAll public static void complete() throws Throwable { launchServer.close(); } @Test public void start() { launchServer.run(); } }