From b7baabbc6377920d9ce1722972ee227ee3d496f9 Mon Sep 17 00:00:00 2001 From: Scribble Date: Wed, 18 Dec 2024 21:39:10 +0100 Subject: [PATCH] [Flavor] Fix tests failing --- .../playback/filecommands/PlaybackFileCommand.java | 13 +++++++++---- .../builtin/DesyncMonitorFileCommandExtension.java | 13 ++++++++++++- .../builtin/LabelFileCommandExtension.java | 13 ++++++++++++- .../builtin/OptionsFileCommandExtension.java | 13 ++++++++++++- .../playback/tasfile/builtin/AlphaFlavorTest.java | 6 +++++- 5 files changed, 50 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/minecrafttas/tasmod/playback/filecommands/PlaybackFileCommand.java b/src/main/java/com/minecrafttas/tasmod/playback/filecommands/PlaybackFileCommand.java index 21a66872..a34beee4 100644 --- a/src/main/java/com/minecrafttas/tasmod/playback/filecommands/PlaybackFileCommand.java +++ b/src/main/java/com/minecrafttas/tasmod/playback/filecommands/PlaybackFileCommand.java @@ -59,7 +59,7 @@ public static abstract class PlaybackFileCommandExtension implements Registerabl protected final Path tempDir; public PlaybackFileCommandExtension() { - this(null); + this((Path) null); } /** @@ -69,13 +69,18 @@ public PlaybackFileCommandExtension() { * @param tempFolderName The name of the temp folder */ public PlaybackFileCommandExtension(String tempFolderName) { - if (tempFolderName == null) { + this(TASmodClient.tasfiledirectory.resolve("temp").resolve(tempFolderName)); + } + + public PlaybackFileCommandExtension(Path tempDirectory) { + if (tempDirectory == null) { tempDir = null; return; } - this.tempDir = TASmodClient.tasfiledirectory.resolve("temp").resolve(tempFolderName); + + tempDir = tempDirectory; try { - AbstractDataFile.createDirectory(tempDir); + AbstractDataFile.createDirectory(tempDirectory); } catch (IOException e) { e.printStackTrace(); } diff --git a/src/main/java/com/minecrafttas/tasmod/playback/filecommands/builtin/DesyncMonitorFileCommandExtension.java b/src/main/java/com/minecrafttas/tasmod/playback/filecommands/builtin/DesyncMonitorFileCommandExtension.java index dd3cf042..5d50a604 100644 --- a/src/main/java/com/minecrafttas/tasmod/playback/filecommands/builtin/DesyncMonitorFileCommandExtension.java +++ b/src/main/java/com/minecrafttas/tasmod/playback/filecommands/builtin/DesyncMonitorFileCommandExtension.java @@ -2,6 +2,7 @@ import java.io.IOException; import java.io.Serializable; +import java.nio.file.Path; import java.text.NumberFormat; import java.text.ParseException; import java.util.List; @@ -40,12 +41,22 @@ public class DesyncMonitorFileCommandExtension extends PlaybackFileCommandExtens private MonitorContainer currentValues; public DesyncMonitorFileCommandExtension() { - super("monitoring"); + this("monitoring"); + } + + public DesyncMonitorFileCommandExtension(String tempDirName) { + super(tempDirName); this.monitorContainer = new BigArrayList(tempDir.toString()); // Is enabled by default enabled = true; } + public DesyncMonitorFileCommandExtension(Path tempDir) { + super(tempDir); + this.monitorContainer = new BigArrayList<>(tempDir.toString()); + enabled = true; + } + @Override public String getExtensionName() { return "tasmod_desyncMonitor@v1"; diff --git a/src/main/java/com/minecrafttas/tasmod/playback/filecommands/builtin/LabelFileCommandExtension.java b/src/main/java/com/minecrafttas/tasmod/playback/filecommands/builtin/LabelFileCommandExtension.java index d7503ea8..f0176c1e 100644 --- a/src/main/java/com/minecrafttas/tasmod/playback/filecommands/builtin/LabelFileCommandExtension.java +++ b/src/main/java/com/minecrafttas/tasmod/playback/filecommands/builtin/LabelFileCommandExtension.java @@ -1,6 +1,7 @@ package com.minecrafttas.tasmod.playback.filecommands.builtin; import java.io.IOException; +import java.nio.file.Path; import com.dselent.bigarraylist.BigArrayList; import com.minecrafttas.tasmod.playback.PlaybackControllerClient.TickContainer; @@ -16,7 +17,17 @@ public class LabelFileCommandExtension extends PlaybackFileCommandExtension { BigArrayList label = new BigArrayList<>(); public LabelFileCommandExtension() { - super("label"); + this("label"); + } + + public LabelFileCommandExtension(String tempDirName) { + super(tempDirName); + this.label = new BigArrayList<>(tempDir.toString()); + enabled = true; + } + + public LabelFileCommandExtension(Path tempDir) { + super(tempDir); this.label = new BigArrayList<>(tempDir.toString()); enabled = true; } diff --git a/src/main/java/com/minecrafttas/tasmod/playback/filecommands/builtin/OptionsFileCommandExtension.java b/src/main/java/com/minecrafttas/tasmod/playback/filecommands/builtin/OptionsFileCommandExtension.java index 0e1193b4..b071afe2 100644 --- a/src/main/java/com/minecrafttas/tasmod/playback/filecommands/builtin/OptionsFileCommandExtension.java +++ b/src/main/java/com/minecrafttas/tasmod/playback/filecommands/builtin/OptionsFileCommandExtension.java @@ -1,6 +1,7 @@ package com.minecrafttas.tasmod.playback.filecommands.builtin; import java.io.IOException; +import java.nio.file.Path; import com.dselent.bigarraylist.BigArrayList; import com.minecrafttas.tasmod.TASmod; @@ -18,11 +19,21 @@ public class OptionsFileCommandExtension extends PlaybackFileCommandExtension { BigArrayList hud; public OptionsFileCommandExtension() { - super("hud"); + this("hud"); + } + + public OptionsFileCommandExtension(String tempDirName) { + super(tempDirName); hud = new BigArrayList<>(tempDir.toString()); enabled = true; } + public OptionsFileCommandExtension(Path tempDir) { + super(tempDir); + this.hud = new BigArrayList<>(tempDir.toString()); + enabled = true; + } + @Override public String getExtensionName() { return "tasmod_options@v1"; diff --git a/src/test/java/tasmod/playback/tasfile/builtin/AlphaFlavorTest.java b/src/test/java/tasmod/playback/tasfile/builtin/AlphaFlavorTest.java index f0107297..86dce6f6 100644 --- a/src/test/java/tasmod/playback/tasfile/builtin/AlphaFlavorTest.java +++ b/src/test/java/tasmod/playback/tasfile/builtin/AlphaFlavorTest.java @@ -5,6 +5,8 @@ import static org.junit.jupiter.api.Assertions.assertIterableEquals; import static org.junit.jupiter.api.Assertions.assertTrue; +import java.nio.file.Path; +import java.nio.file.Paths; import java.util.ArrayList; import java.util.List; @@ -73,7 +75,9 @@ void beforeEach() { creditsMetadata.setValue(CreditFields.Author, "Scribal"); creditsMetadataExtension.onLoad(creditsMetadata); - TASmodAPIRegistry.PLAYBACK_FILE_COMMAND.register(new LabelFileCommandExtension(), new DesyncMonitorFileCommandExtension(), new OptionsFileCommandExtension()); + Path temp = Paths.get("src/test/resources/temp"); + + TASmodAPIRegistry.PLAYBACK_FILE_COMMAND.register(new LabelFileCommandExtension(temp), new DesyncMonitorFileCommandExtension(temp), new OptionsFileCommandExtension(temp)); TASmodAPIRegistry.PLAYBACK_METADATA.register(creditsMetadataExtension, startpositionMetadataExtension); }