diff --git a/src/test/java/scripting/ScriptEvaluationTest.java b/src/test/java/scripting/ScriptEvaluationTest.java index 200974596d..d88572d193 100644 --- a/src/test/java/scripting/ScriptEvaluationTest.java +++ b/src/test/java/scripting/ScriptEvaluationTest.java @@ -21,22 +21,34 @@ public class ScriptEvaluationTest { System.setProperty("polyglot.engine.WarnInterpreterOnly", "false"); } - public static List npcScriptFiles() throws IOException { - Path npcScriptDirectory = Path.of("scripts", "npc"); - try (Stream pathStream = Files.walk(npcScriptDirectory)) { + private static List npcScriptFilePaths() throws IOException { + return getScriptFilePaths("npc"); + } + + private static List eventScriptFilePaths() throws IOException { + return getScriptFilePaths("event"); + } + + private static List getScriptFilePaths(final String scriptsSubdirectory) throws IOException { + Path scriptDirectory = Path.of("scripts", scriptsSubdirectory); + try (Stream pathStream = Files.walk(scriptDirectory)) { return pathStream .filter(Files::isRegularFile) - .map(ScriptEvaluationTest::mapToNpcScriptPath) + .map(path -> "%s/%s".formatted(scriptsSubdirectory, path.getFileName().toString())) .toList(); } } - private static String mapToNpcScriptPath(Path path) { - return "npc/%s".formatted(path.getFileName().toString()); + @ParameterizedTest + @MethodSource("eventScriptFilePaths") + void eventScriptShouldEvaluate(String eventScriptPath) { + ScriptEngine scriptEngine = scriptManager.getInvocableScriptEngine(eventScriptPath); + + assertNotNull(scriptEngine); } @ParameterizedTest - @MethodSource("npcScriptFiles") + @MethodSource("npcScriptFilePaths") void npcScriptShouldEvaluate(String npcScriptPath) { ScriptEngine scriptEngine = scriptManager.getInvocableScriptEngine(npcScriptPath);