diff --git a/pom.xml b/pom.xml
index 57ee75f..f5fd401 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
world.bentobox
warps
- 1.5.1-SNAPSHOT
+ 1.5.2-SNAPSHOT
WelcomeWarpSigns
WelcomeWarpSigns is an add-on for BentoBox, an expandable Minecraft Bukkit plugin for island-type games like ASkyBlock or AcidIsland.
diff --git a/src/main/java/world/bentobox/warps/WarpSignsListener.java b/src/main/java/world/bentobox/warps/WarpSignsListener.java
index c956168..6ac696d 100644
--- a/src/main/java/world/bentobox/warps/WarpSignsListener.java
+++ b/src/main/java/world/bentobox/warps/WarpSignsListener.java
@@ -59,7 +59,7 @@ public class WarpSignsListener implements Listener {
if (s == null) {
return;
}
- if (s.getLine(0).equalsIgnoreCase(ChatColor.GREEN + addon.getConfig().getString("welcomeLine"))) {
+ if (s.getLine(0).equalsIgnoreCase(ChatColor.GREEN + addon.getSettings().getWelcomeLine())) {
// Do a quick check to see if this sign location is in
// the list of warp signs
Map list = addon.getWarpSignsManager().getWarpMap(b.getWorld());
@@ -93,7 +93,7 @@ public class WarpSignsListener implements Listener {
String title = e.getLine(0);
User user = User.getInstance(e.getPlayer());
// Check if someone is changing their own sign
- if (title.equalsIgnoreCase(addon.getConfig().getString("welcomeLine"))) {
+ if (title.equalsIgnoreCase(addon.getSettings().getWelcomeLine())) {
// Welcome sign detected - check permissions
if (!(user.hasPermission(addon.getPermPrefix(b.getWorld()) + ".island.addwarp"))) {
user.sendMessage("warps.error.no-permission");
@@ -113,7 +113,7 @@ public class WarpSignsListener implements Listener {
// Check that the player is on their island
if (!(plugin.getIslands().userIsOnIsland(b.getWorld(), user))) {
user.sendMessage("warps.error.not-on-island");
- e.setLine(0, ChatColor.RED + addon.getConfig().getString("welcomeLine"));
+ e.setLine(0, ChatColor.RED + addon.getSettings().getWelcomeLine());
return;
}
// Check if the player already has a sign
@@ -132,8 +132,8 @@ public class WarpSignsListener implements Listener {
// The block is still a sign
Sign oldSign = (Sign) oldSignBlock.getState();
if (oldSign != null) {
- if (oldSign.getLine(0).equalsIgnoreCase(ChatColor.GREEN + addon.getConfig().getString("welcomeLine"))) {
- oldSign.setLine(0, ChatColor.RED + addon.getConfig().getString("welcomeLine"));
+ if (oldSign.getLine(0).equalsIgnoreCase(ChatColor.GREEN + addon.getSettings().getWelcomeLine())) {
+ oldSign.setLine(0, ChatColor.RED + addon.getSettings().getWelcomeLine());
oldSign.update(true, false);
user.sendMessage("warps.deactivate");
addon.getWarpSignsManager().removeWarp(oldSignBlock.getWorld(), user.getUniqueId());
@@ -151,13 +151,13 @@ public class WarpSignsListener implements Listener {
private void addSign(SignChangeEvent e, User user, Block b) {
if (addon.getWarpSignsManager().addWarp(user.getUniqueId(), b.getLocation())) {
user.sendMessage("warps.success");
- e.setLine(0, ChatColor.GREEN + addon.getConfig().getString("welcomeLine"));
+ e.setLine(0, ChatColor.GREEN + addon.getSettings().getWelcomeLine());
for (int i = 1; i<4; i++) {
e.setLine(i, ChatColor.translateAlternateColorCodes('&', e.getLine(i)));
}
} else {
user.sendMessage("warps.error.duplicate");
- e.setLine(0, ChatColor.RED + addon.getConfig().getString("welcomeLine"));
+ e.setLine(0, ChatColor.RED + addon.getSettings().getWelcomeLine());
for (int i = 1; i<4; i++) {
e.setLine(i, ChatColor.translateAlternateColorCodes('&', e.getLine(i)));
}
diff --git a/src/main/java/world/bentobox/warps/WarpSignsManager.java b/src/main/java/world/bentobox/warps/WarpSignsManager.java
index e480cbe..e657949 100644
--- a/src/main/java/world/bentobox/warps/WarpSignsManager.java
+++ b/src/main/java/world/bentobox/warps/WarpSignsManager.java
@@ -188,8 +188,8 @@ public class WarpSignsManager {
if (b.getType().name().contains("SIGN")) {
Sign s = (Sign) b.getState();
if (s != null) {
- if (s.getLine(0).equalsIgnoreCase(ChatColor.GREEN + addon.getConfig().getString("welcomeLine"))) {
- s.setLine(0, ChatColor.RED + addon.getConfig().getString("welcomeLine"));
+ if (s.getLine(0).equalsIgnoreCase(ChatColor.GREEN + addon.getSettings().getWelcomeLine())) {
+ s.setLine(0, ChatColor.RED + addon.getSettings().getWelcomeLine());
s.update(true, false);
}
}
diff --git a/src/main/java/world/bentobox/warps/commands/WarpCommand.java b/src/main/java/world/bentobox/warps/commands/WarpCommand.java
index c3bb85c..510e1f0 100644
--- a/src/main/java/world/bentobox/warps/commands/WarpCommand.java
+++ b/src/main/java/world/bentobox/warps/commands/WarpCommand.java
@@ -20,9 +20,9 @@ public class WarpCommand extends CompositeCommand {
private Warp addon;
- public WarpCommand(Warp plugin, CompositeCommand bsbIslandCmd) {
+ public WarpCommand(Warp addon, CompositeCommand bsbIslandCmd) {
super(bsbIslandCmd, "warp");
- this.addon = plugin;
+ this.addon = addon;
}
@Override
@@ -40,7 +40,7 @@ public class WarpCommand extends CompositeCommand {
Set warpList = addon.getWarpSignsManager().listWarps(getWorld());
if (warpList.isEmpty()) {
user.sendMessage("warps.error.no-warps-yet");
- user.sendMessage("warps.warpTip", "[text]", getAddon().getConfig().getString("welcomeLine", "[WELCOME]"));
+ user.sendMessage("warps.warpTip", "[text]", addon.getSettings().getWelcomeLine());
return true;
} else {
// Check if this is part of a name
diff --git a/src/main/java/world/bentobox/warps/commands/WarpsCommand.java b/src/main/java/world/bentobox/warps/commands/WarpsCommand.java
index b201972..c547e3b 100644
--- a/src/main/java/world/bentobox/warps/commands/WarpsCommand.java
+++ b/src/main/java/world/bentobox/warps/commands/WarpsCommand.java
@@ -15,11 +15,11 @@ import world.bentobox.bentobox.api.user.User;
*/
public class WarpsCommand extends CompositeCommand {
- private Warp plugin;
+ private Warp addon;
- public WarpsCommand(Warp plugin, CompositeCommand bsbIslandCmd) {
+ public WarpsCommand(Warp addon, CompositeCommand bsbIslandCmd) {
super(bsbIslandCmd, "warps");
- this.plugin = plugin;
+ this.addon = addon;
}
/* (non-Javadoc)
@@ -37,11 +37,11 @@ public class WarpsCommand extends CompositeCommand {
*/
@Override
public boolean execute(User user, String label, List args) {
- if (plugin.getWarpSignsManager().listWarps(getWorld()).isEmpty()) {
+ if (addon.getWarpSignsManager().listWarps(getWorld()).isEmpty()) {
user.sendMessage("warps.error.no-warps-yet");
- user.sendMessage("warps.warpTip", "[text]", getAddon().getConfig().getString("welcomeLine", "[WELCOME]"));
+ user.sendMessage("warps.warpTip", "[text]", addon.getSettings().getWelcomeLine());
} else {
- plugin.getWarpPanelManager().showWarpPanel(getWorld(), user,0);
+ addon.getWarpPanelManager().showWarpPanel(getWorld(), user,0);
}
return true;
}
diff --git a/src/test/java/world/bentobox/warps/WarpSignsListenerTest.java b/src/test/java/world/bentobox/warps/WarpSignsListenerTest.java
index 83c0abd..ed1ed99 100644
--- a/src/test/java/world/bentobox/warps/WarpSignsListenerTest.java
+++ b/src/test/java/world/bentobox/warps/WarpSignsListenerTest.java
@@ -7,6 +7,9 @@ import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.anyString;
+import static org.mockito.Mockito.verify;
import java.util.HashMap;
import java.util.Map;
@@ -61,13 +64,16 @@ public class WarpSignsListenerTest {
@Mock
private World world;
private Sign s;
+ @Mock
private WarpSignsManager wsm;
private PluginManager pm;
private UUID uuid;
private String[] lines;
@Mock
private FileConfiguration config;
+ @Mock
private Settings settings;
+ @Mock
private IslandsManager im;
@Before
@@ -84,10 +90,10 @@ public class WarpSignsListenerTest {
PowerMockito.mockStatic(NamespacedKey.class);
NamespacedKey keyValue = mock(NamespacedKey.class);
- when(NamespacedKey.minecraft(Mockito.anyString())).thenReturn(keyValue);
+ when(NamespacedKey.minecraft(anyString())).thenReturn(keyValue);
- when(addon.inRegisteredWorld(Mockito.any())).thenReturn(true);
- when(config.getString(Mockito.anyString())).thenReturn("[WELCOME]");
+ when(addon.inRegisteredWorld(any())).thenReturn(true);
+ when(config.getString(anyString())).thenReturn("[WELCOME]");
when(addon.getConfig()).thenReturn(config);
// Block
Material sign;
@@ -99,13 +105,13 @@ public class WarpSignsListenerTest {
when(block.getType()).thenReturn(sign);
when(block.getWorld()).thenReturn(world);
// Player
- when(player.hasPermission(Mockito.anyString())).thenReturn(false);
+ when(player.hasPermission(anyString())).thenReturn(false);
uuid = UUID.randomUUID();
when(player.getUniqueId()).thenReturn(uuid);
s = mock(Sign.class);
when(s.getLine(Mockito.anyInt())).thenReturn(ChatColor.GREEN + "[WELCOME]");
when(block.getState()).thenReturn(s);
- wsm = mock(WarpSignsManager.class);
+ // warp signs manager
when(addon.getWarpSignsManager()).thenReturn(wsm);
Map list = new HashMap<>();
Location location = mock(Location.class);
@@ -115,15 +121,15 @@ public class WarpSignsListenerTest {
// Player is in world
when(wsm.getWarpMap(Mockito.eq(world))).thenReturn(list);
//Player has a warp sign already here
- when(wsm.getWarp(Mockito.any(), Mockito.any())).thenReturn(location);
+ when(wsm.getWarp(any(), any())).thenReturn(location);
// Unique spot
- when(wsm.addWarp(Mockito.any(), Mockito.any())).thenReturn(true);
+ when(wsm.addWarp(any(), any())).thenReturn(true);
// Bentobox
BentoBox plugin = mock(BentoBox.class);
when(addon.getPlugin()).thenReturn(plugin);
User.setPlugin(plugin);
LocalesManager lm = mock(LocalesManager.class);
- when(lm.get(Mockito.any(), Mockito.any())).thenAnswer(new Answer(){
+ when(lm.get(any(), any())).thenAnswer(new Answer(){
@Override
public String answer(InvocationOnMock invocation) throws Throwable {
@@ -134,35 +140,34 @@ public class WarpSignsListenerTest {
// Lines
lines = new String[] {"[WELCOME]", "line2", "line3", "line4"};
- settings = mock(Settings.class);
when(settings.getWarpLevelRestriction()).thenReturn(10);
+ when(settings.getWelcomeLine()).thenReturn("[WELCOME]");
when(addon.getSettings()).thenReturn(settings);
- im = mock(IslandsManager.class);
// On island
when(plugin.getIslands()).thenReturn(im);
- when(im.userIsOnIsland(Mockito.any(World.class), Mockito.any(User.class))).thenReturn(true);
+ when(im.userIsOnIsland(any(World.class), any(User.class))).thenReturn(true);
// Sufficient level
- when(addon.getLevel(Mockito.any(), Mockito.any())).thenReturn(100L);
+ when(addon.getLevel(any(), any())).thenReturn(100L);
IslandWorldManager iwm = mock(IslandWorldManager.class);
when(plugin.getIWM()).thenReturn(iwm);
- when(iwm.getAddon(Mockito.any())).thenReturn(Optional.empty());
+ when(iwm.getAddon(any())).thenReturn(Optional.empty());
// Util
PowerMockito.mockStatic(Util.class);
- when(Util.getWorld(Mockito.any())).thenReturn(world);
+ when(Util.getWorld(any())).thenReturn(world);
// Locales
Answer answer = invocation -> invocation.getArgumentAt(1, String.class);
- when(lm.get(Mockito.any(User.class), Mockito.anyString())).thenAnswer(answer);
+ when(lm.get(any(User.class), anyString())).thenAnswer(answer);
when(plugin.getLocalesManager()).thenReturn(lm);
// Placeholders
PlaceholdersManager placeholdersManager = mock(PlaceholdersManager.class);
when(plugin.getPlaceholdersManager()).thenReturn(placeholdersManager);
- when(placeholdersManager.replacePlaceholders(Mockito.any(), Mockito.any())).thenAnswer(answer);
+ when(placeholdersManager.replacePlaceholders(any(), any())).thenAnswer(answer);
}
@@ -184,10 +189,10 @@ public class WarpSignsListenerTest {
public void testOnSignBreakWrongWorld() {
WarpSignsListener wsl = new WarpSignsListener(addon);
BlockBreakEvent e = new BlockBreakEvent(block, player);
- when(addon.inRegisteredWorld(Mockito.any())).thenReturn(false);
+ when(addon.inRegisteredWorld(any())).thenReturn(false);
wsl.onSignBreak(e);
assertFalse(e.isCancelled());
- Mockito.verify(addon).inRegisteredWorld(Mockito.eq(world));
+ verify(addon).inRegisteredWorld(Mockito.eq(world));
}
@Test
@@ -197,7 +202,7 @@ public class WarpSignsListenerTest {
when(block.getState()).thenReturn(null);
wsl.onSignBreak(e);
assertFalse(e.isCancelled());
- Mockito.verify(block).getState();
+ verify(block).getState();
}
@Test
@@ -207,8 +212,9 @@ public class WarpSignsListenerTest {
when(s.getLine(Mockito.anyInt())).thenReturn(ChatColor.RED + "[WELCOME]");
wsl.onSignBreak(e);
assertFalse(e.isCancelled());
- Mockito.verify(s).getLine(Mockito.eq(0));
- Mockito.verify(addon).getConfig();
+ verify(s).getLine(Mockito.eq(0));
+ verify(settings).getWelcomeLine();
+
}
@Test
@@ -219,8 +225,8 @@ public class WarpSignsListenerTest {
when(s.getLocation()).thenReturn(mock(Location.class));
wsl.onSignBreak(e);
assertFalse(e.isCancelled());
- Mockito.verify(wsm).getWarpMap(Mockito.eq(world));
- Mockito.verify(s).getLocation();
+ verify(wsm).getWarpMap(Mockito.eq(world));
+ verify(s).getLocation();
}
@Test
@@ -230,7 +236,7 @@ public class WarpSignsListenerTest {
BlockBreakEvent e = new BlockBreakEvent(block, player);
wsl.onSignBreak(e);
assertTrue(e.isCancelled());
- Mockito.verify(player).sendMessage("warps.error.no-remove");
+ verify(player).sendMessage("warps.error.no-remove");
}
@Test
@@ -242,7 +248,7 @@ public class WarpSignsListenerTest {
wsl.onSignBreak(e);
// Success!
assertFalse(e.isCancelled());
- Mockito.verify(pm).callEvent(Mockito.any());
+ verify(pm).callEvent(any());
}
@Test
@@ -250,11 +256,11 @@ public class WarpSignsListenerTest {
when(player.getUniqueId()).thenReturn(UUID.randomUUID());
WarpSignsListener wsl = new WarpSignsListener(addon);
BlockBreakEvent e = new BlockBreakEvent(block, player);
- when(player.hasPermission(Mockito.anyString())).thenReturn(true);
+ when(player.hasPermission(anyString())).thenReturn(true);
wsl.onSignBreak(e);
// Success!
assertFalse(e.isCancelled());
- Mockito.verify(pm).callEvent(Mockito.any());
+ verify(pm).callEvent(any());
}
@Test
@@ -264,7 +270,7 @@ public class WarpSignsListenerTest {
wsl.onSignBreak(e);
// Success!
assertFalse(e.isCancelled());
- Mockito.verify(pm).callEvent(Mockito.any());
+ verify(pm).callEvent(any());
}
@@ -274,88 +280,88 @@ public class WarpSignsListenerTest {
*/
@Test
public void testOnCreateWrongWorld() {
- when(player.hasPermission(Mockito.anyString())).thenReturn(true);
+ when(player.hasPermission(anyString())).thenReturn(true);
WarpSignsListener wsl = new WarpSignsListener(addon);
SignChangeEvent e = new SignChangeEvent(block, player, lines);
- when(addon.inRegisteredWorld(Mockito.any())).thenReturn(false);
+ when(addon.inRegisteredWorld(any())).thenReturn(false);
wsl.onSignWarpCreate(e);
- Mockito.verify(addon).inRegisteredWorld(Mockito.eq(world));
+ verify(addon).inRegisteredWorld(Mockito.eq(world));
}
@Test
public void testOnCreateWrongText() {
- when(player.hasPermission(Mockito.anyString())).thenReturn(true);
+ when(player.hasPermission(anyString())).thenReturn(true);
lines = new String[] {"line1", "line2", "line3", "line4"};
- when(player.hasPermission(Mockito.anyString())).thenReturn(false);
+ when(player.hasPermission(anyString())).thenReturn(false);
WarpSignsListener wsl = new WarpSignsListener(addon);
SignChangeEvent e = new SignChangeEvent(block, player, lines);
wsl.onSignWarpCreate(e);
- Mockito.verify(config).getString(Mockito.anyString());
- Mockito.verify(player, Mockito.never()).sendMessage(Mockito.anyString());
+ verify(settings).getWelcomeLine();
+ verify(player, Mockito.never()).sendMessage(anyString());
}
@Test
public void testOnCreateNoPerm() {
- when(player.hasPermission(Mockito.anyString())).thenReturn(false);
+ when(player.hasPermission(anyString())).thenReturn(false);
WarpSignsListener wsl = new WarpSignsListener(addon);
SignChangeEvent e = new SignChangeEvent(block, player, lines);
wsl.onSignWarpCreate(e);
- Mockito.verify(player).sendMessage("warps.error.no-permission");
+ verify(player).sendMessage("warps.error.no-permission");
}
@Test
public void testOnLevelPresentNotHighEnough() {
- when(player.hasPermission(Mockito.anyString())).thenReturn(true);
- when(addon.getLevel(Mockito.any(), Mockito.any())).thenReturn(1L);
+ when(player.hasPermission(anyString())).thenReturn(true);
+ when(addon.getLevel(any(), any())).thenReturn(1L);
WarpSignsListener wsl = new WarpSignsListener(addon);
SignChangeEvent e = new SignChangeEvent(block, player, lines);
wsl.onSignWarpCreate(e);
- Mockito.verify(player).sendMessage("warps.error.not-enough-level");
+ verify(player).sendMessage("warps.error.not-enough-level");
}
@Test
public void testOnNoIsland() {
- when(im.userIsOnIsland(Mockito.any(World.class), Mockito.any(User.class))).thenReturn(false);
- when(player.hasPermission(Mockito.anyString())).thenReturn(true);
+ when(im.userIsOnIsland(any(World.class), any(User.class))).thenReturn(false);
+ when(player.hasPermission(anyString())).thenReturn(true);
WarpSignsListener wsl = new WarpSignsListener(addon);
SignChangeEvent e = new SignChangeEvent(block, player, lines);
wsl.onSignWarpCreate(e);
- Mockito.verify(player).sendMessage("warps.error.not-on-island");
+ verify(player).sendMessage("warps.error.not-on-island");
assertEquals(ChatColor.RED + "[WELCOME]", e.getLine(0));
}
@Test
public void testCreateNoSignAlreadyUniqueSpot() {
- when(wsm.getWarp(Mockito.any(), Mockito.any())).thenReturn(null);
- when(player.hasPermission(Mockito.anyString())).thenReturn(true);
+ when(wsm.getWarp(any(), any())).thenReturn(null);
+ when(player.hasPermission(anyString())).thenReturn(true);
WarpSignsListener wsl = new WarpSignsListener(addon);
SignChangeEvent e = new SignChangeEvent(block, player, lines);
wsl.onSignWarpCreate(e);
- Mockito.verify(player).sendMessage("warps.success");
+ verify(player).sendMessage("warps.success");
assertEquals(ChatColor.GREEN + "[WELCOME]", e.getLine(0));
}
@Test
public void testCreateNoSignAlreadyDuplicateSpot() {
- when(wsm.addWarp(Mockito.any(), Mockito.any())).thenReturn(false);
- when(wsm.getWarp(Mockito.any(), Mockito.any())).thenReturn(null);
- when(player.hasPermission(Mockito.anyString())).thenReturn(true);
+ when(wsm.addWarp(any(), any())).thenReturn(false);
+ when(wsm.getWarp(any(), any())).thenReturn(null);
+ when(player.hasPermission(anyString())).thenReturn(true);
WarpSignsListener wsl = new WarpSignsListener(addon);
SignChangeEvent e = new SignChangeEvent(block, player, lines);
wsl.onSignWarpCreate(e);
- Mockito.verify(player).sendMessage("warps.error.duplicate");
+ verify(player).sendMessage("warps.error.duplicate");
assertEquals(ChatColor.RED + "[WELCOME]", e.getLine(0));
}
@Test
public void testCreateNoSignDeactivateOldSign() {
- when(player.hasPermission(Mockito.anyString())).thenReturn(true);
+ when(player.hasPermission(anyString())).thenReturn(true);
WarpSignsListener wsl = new WarpSignsListener(addon);
SignChangeEvent e = new SignChangeEvent(block, player, lines);
wsl.onSignWarpCreate(e);
- Mockito.verify(player).sendMessage("warps.success");
+ verify(player).sendMessage("warps.success");
assertEquals(ChatColor.GREEN + "[WELCOME]", e.getLine(0));
- Mockito.verify(s).setLine(0, ChatColor.RED + "[WELCOME]");
+ verify(s).setLine(0, ChatColor.RED + "[WELCOME]");
}