From 5834dcbb59dc6e7645f8e07b13e901d5cbd439f4 Mon Sep 17 00:00:00 2001 From: tastybento Date: Mon, 8 Apr 2024 20:15:34 -0700 Subject: [PATCH] Fix placeholders manager test --- .../managers/PlaceholdersManagerTest.java | 23 +++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/src/test/java/world/bentobox/bentobox/managers/PlaceholdersManagerTest.java b/src/test/java/world/bentobox/bentobox/managers/PlaceholdersManagerTest.java index ded48fb62..4b97fdeb7 100644 --- a/src/test/java/world/bentobox/bentobox/managers/PlaceholdersManagerTest.java +++ b/src/test/java/world/bentobox/bentobox/managers/PlaceholdersManagerTest.java @@ -18,10 +18,14 @@ import org.mockito.Mock; import org.mockito.Mockito; import org.powermock.core.classloader.annotations.PrepareForTest; import org.powermock.modules.junit4.PowerMockRunner; +import org.powermock.reflect.Whitebox; import world.bentobox.bentobox.BentoBox; +import world.bentobox.bentobox.Settings; +import world.bentobox.bentobox.TestWorldSettings; import world.bentobox.bentobox.api.addons.AddonDescription; import world.bentobox.bentobox.api.addons.GameModeAddon; +import world.bentobox.bentobox.api.configuration.WorldSettings; import world.bentobox.bentobox.api.hooks.Hook; import world.bentobox.bentobox.hooks.placeholders.PlaceholderAPIHook; import world.bentobox.bentobox.lists.GameModePlaceholder; @@ -43,9 +47,17 @@ public class PlaceholdersManagerTest { private HooksManager hm; @Mock private PlaceholderAPIHook hook; + @Mock + private IslandWorldManager iwm; + private Settings settings; @Before public void setUp() throws Exception { + // Set up plugin + Whitebox.setInternalState(BentoBox.class, "instance", plugin); + settings = new Settings(); + when(plugin.getSettings()).thenReturn(settings); + // Addon @NonNull AddonDescription desc = new AddonDescription.Builder("main", "bskyblock", "1.0").build(); @@ -61,6 +73,13 @@ public class PlaceholdersManagerTest { when(hm.getHook(eq("PlaceholderAPI"))).thenReturn(optionalHook); when(hook.isPlaceholder(any(), any())).thenReturn(false); + // World settings + + @NonNull + WorldSettings ws = new TestWorldSettings(); + when(iwm.getWorldSettings(any())).thenReturn(ws); + when(plugin.getIWM()).thenReturn(iwm); + // Placeholder manager pm = new PlaceholdersManager(plugin); } @@ -77,7 +96,7 @@ public class PlaceholdersManagerTest { public void testRegisterGameModePlaceholdersAllDefaults() { pm.registerDefaultPlaceholders(addon); // + 300 because we register team member placeholders up to 50 members - verify(hook, times(GameModePlaceholder.values().length + 302)).registerPlaceholder(any(), anyString(), any()); + verify(hook, times(GameModePlaceholder.values().length + 304)).registerPlaceholder(any(), anyString(), any()); } /** @@ -91,7 +110,7 @@ public class PlaceholdersManagerTest { pm.registerDefaultPlaceholders(addon); // 3 less registrations for this addon - verify(hook, times(GameModePlaceholder.values().length - 3 + 302)).registerPlaceholder(any(), anyString(), + verify(hook, times(GameModePlaceholder.values().length - 3 + 304)).registerPlaceholder(any(), anyString(), any()); } }