From 3961e1210abd05910f4f0eb9dd817dc7306ff7b9 Mon Sep 17 00:00:00 2001 From: Josh Roy <10731363+JRoy@users.noreply.github.com> Date: Sun, 12 May 2024 17:26:35 -0400 Subject: [PATCH] "Fix" tests --- .../java/com/earth2me/essentials/Essentials.java | 2 ++ .../com/earth2me/essentials/utils/LocationUtil.java | 13 +++++++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/Essentials/src/main/java/com/earth2me/essentials/Essentials.java b/Essentials/src/main/java/com/earth2me/essentials/Essentials.java index 9933f4523dc..02552a83530 100644 --- a/Essentials/src/main/java/com/earth2me/essentials/Essentials.java +++ b/Essentials/src/main/java/com/earth2me/essentials/Essentials.java @@ -162,6 +162,7 @@ public class Essentials extends JavaPlugin implements net.ess3.api.IEssentials { private static final Logger BUKKIT_LOGGER = Logger.getLogger("Essentials"); private static Logger LOGGER = null; + public static boolean TESTING = false; private final transient TNTExplodeListener tntListener = new TNTExplodeListener(); private final transient Set vanishedPlayers = new LinkedHashSet<>(); private final transient Map commandMap = new HashMap<>(); @@ -231,6 +232,7 @@ public ISettings getSettings() { } public void setupForTesting(final Server server) throws IOException, InvalidDescriptionException { + TESTING = true; LOGGER = new BaseLoggerProvider(this, BUKKIT_LOGGER); final File dataFolder = File.createTempFile("essentialstest", ""); if (!dataFolder.delete()) { diff --git a/Essentials/src/main/java/com/earth2me/essentials/utils/LocationUtil.java b/Essentials/src/main/java/com/earth2me/essentials/utils/LocationUtil.java index ecbfafe9183..ab3a8980f10 100644 --- a/Essentials/src/main/java/com/earth2me/essentials/utils/LocationUtil.java +++ b/Essentials/src/main/java/com/earth2me/essentials/utils/LocationUtil.java @@ -1,5 +1,6 @@ package com.earth2me.essentials.utils; +import com.earth2me.essentials.Essentials; import com.earth2me.essentials.IEssentials; import net.ess3.api.IUser; import net.ess3.api.TranslatableException; @@ -40,10 +41,14 @@ public final class LocationUtil { private static final Set TRANSPARENT_MATERIALS = EnumSet.noneOf(Material.class); static { - // Materials from Material.isTransparent() - for (final Material mat : Material.values()) { - if (mat.isTransparent()) { - HOLLOW_MATERIALS.add(mat); + // If the server is running in a test environment, the isTransparent() method will blow up since + // it requires the registry to be initialized. This is a workaround to prevent that from happening. + if (!Essentials.TESTING) { + // Materials from Material.isTransparent() + for (final Material mat : Material.values()) { + if (mat.isTransparent()) { + HOLLOW_MATERIALS.add(mat); + } } }