diff options
Diffstat (limited to 'src/functionalTest/java/kubatech/test/kubatechTestMod.java')
-rw-r--r-- | src/functionalTest/java/kubatech/test/kubatechTestMod.java | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/src/functionalTest/java/kubatech/test/kubatechTestMod.java b/src/functionalTest/java/kubatech/test/kubatechTestMod.java deleted file mode 100644 index bc68d3f203..0000000000 --- a/src/functionalTest/java/kubatech/test/kubatechTestMod.java +++ /dev/null @@ -1,101 +0,0 @@ -package kubatech.test; - -import java.io.File; -import java.io.PrintWriter; -import java.nio.file.FileSystems; -import java.nio.file.Path; - -import net.minecraft.server.MinecraftServer; -import net.minecraft.util.ChatComponentText; - -import org.apache.commons.io.output.CloseShieldOutputStream; -import org.junit.platform.engine.discovery.DiscoverySelectors; -import org.junit.platform.launcher.Launcher; -import org.junit.platform.launcher.LauncherDiscoveryRequest; -import org.junit.platform.launcher.LauncherSession; -import org.junit.platform.launcher.TestPlan; -import org.junit.platform.launcher.core.LauncherDiscoveryRequestBuilder; -import org.junit.platform.launcher.core.LauncherFactory; -import org.junit.platform.launcher.listeners.SummaryGeneratingListener; -import org.junit.platform.launcher.listeners.TestExecutionSummary; -import org.junit.platform.reporting.legacy.xml.LegacyXmlReportGeneratingListener; - -import cpw.mods.fml.common.FMLCommonHandler; -import cpw.mods.fml.common.Mod; -import cpw.mods.fml.common.Mod.EventHandler; -import cpw.mods.fml.common.event.FMLPreInitializationEvent; -import cpw.mods.fml.common.event.FMLServerStartedEvent; -import gregtech.GT_Mod; - -@Mod( - modid = "kubatech-tests", - name = "KubaTech Dev Tests", - version = "1.0", - dependencies = "required-after:kubatech;required-after:gregtech;after:berriespp;") -public class kubatechTestMod { - - @EventHandler - public void preInit(FMLPreInitializationEvent ev) { - // Disable GT5u messing with vanilla recipes for unit tests - GT_Mod.gregtechproxy.mNerfedWoodPlank = false; - GT_Mod.gregtechproxy.mNerfedVanillaTools = false; - } - - @EventHandler - public void onServerStarted(FMLServerStartedEvent startedEv) { - MinecraftServer.getServer() - .addChatMessage(new ChatComponentText("Running KT unit tests...")); - runTests(); - MinecraftServer.getServer() - .addChatMessage(new ChatComponentText("Running KT unit tests finished")); - } - - public void runTests() { - // https://junit.org/junit5/docs/current/user-guide/#launcher-api - System.setProperty("junit.platform.reporting.open.xml.enabled", "false"); - final Path testsXmlOutDir = FileSystems.getDefault() - .getPath("./junit-out/") - .toAbsolutePath(); - final File testsXmlOutDirFile = testsXmlOutDir.toFile(); - testsXmlOutDirFile.mkdirs(); - { - File[] fileList = testsXmlOutDirFile.listFiles(); - if (fileList != null) { - for (File child : fileList) { - if (child.isFile() && child.getName() - .endsWith(".xml")) { - child.delete(); - } - } - } - } - final LauncherDiscoveryRequest discovery = LauncherDiscoveryRequestBuilder.request() - .selectors(DiscoverySelectors.selectPackage("kubatech.test")) - .build(); - final SummaryGeneratingListener summaryGenerator = new SummaryGeneratingListener(); - final TestExecutionSummary summary; - try (PrintWriter stderrWriter = new PrintWriter(new CloseShieldOutputStream(System.err), true)) { - final LegacyXmlReportGeneratingListener xmlGenerator = new LegacyXmlReportGeneratingListener( - testsXmlOutDir, - stderrWriter); - try (LauncherSession session = LauncherFactory.openSession()) { - final Launcher launcher = session.getLauncher(); - final TestPlan plan = launcher.discover(discovery); - launcher.registerTestExecutionListeners(summaryGenerator, xmlGenerator); - launcher.execute(plan); - } - summary = summaryGenerator.getSummary(); - - summary.printFailuresTo(stderrWriter, 32); - summary.printTo(stderrWriter); - stderrWriter.flush(); - } - // Throw an exception if running via `runServer` - if (summary.getTotalFailureCount() > 0 && FMLCommonHandler.instance() - .getSide() - .isServer()) { - throw new RuntimeException("Some of the unit tests failed to execute, check the log for details"); - } - } - -} |