Fix ranks not replacing for console
Some messaging refactoring
Add "shortmoney" filter
Add TOML support for rankups.yml/rankups.toml
This commit is contained in:
okx-code
2021-10-24 22:54:04 +01:00
parent 1324656214
commit 2c5a631b2e
46 changed files with 629 additions and 162 deletions
@@ -0,0 +1,5 @@
package sh.okx.rankup;
public class RankupCommandsTest extends RankupTest {
}
@@ -1,4 +1,4 @@
package sh.okx.rankup;
package sh.okx.rankup.commands;
import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -6,8 +6,9 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
import be.seeseemelk.mockbukkit.entity.PlayerMock;
import org.junit.jupiter.api.Test;
import sh.okx.rankup.RankupTest;
public class RankupCommandTest extends RankupTest {
public class CommandInfoTest extends RankupTest {
@Test
public void testPlaceholders() {
// placeholders command should never throw an exception
@@ -0,0 +1,25 @@
package sh.okx.rankup.prestige;
import static org.junit.jupiter.api.Assertions.*;
import be.seeseemelk.mockbukkit.entity.PlayerMock;
import org.bukkit.ChatColor;
import org.junit.jupiter.api.Test;
import sh.okx.rankup.RankupTest;
public class BrokenPrestigeTest extends RankupTest {
public BrokenPrestigeTest() {
super("brokenprestige");
}
@Test
public void testPrestige() {
PlayerMock player = server.addPlayer();
plugin.getPermissions().addGroup(player.getUniqueId(), "C");
assertNull(plugin.getPrestiges().getByPlayer(player));
plugin.getHelper().rankup(player);
player.assertSaid(ChatColor.YELLOW + "You are at the highest rank.");
}
}
@@ -12,7 +12,7 @@ public class TestEconomy implements Economy {
@Override
public double getBalance(Player player) {
return balances.get(player.getUniqueId());
return balances.getOrDefault(player.getUniqueId(), 0D);
}
@Override
@@ -0,0 +1,55 @@
package sh.okx.rankup.toml;
import static org.junit.jupiter.api.Assertions.*;
import be.seeseemelk.mockbukkit.entity.PlayerMock;
import org.bukkit.ChatColor;
import org.junit.jupiter.api.Test;
import sh.okx.rankup.RankupTest;
import sh.okx.rankup.ranks.Rankups;
public class TomlTest extends RankupTest {
public TomlTest() {
super("toml");
}
@Test
public void testRequirementsNotMet() {
PlayerMock player = server.addPlayer();
Rankups ranks = plugin.getRankups();
assertEquals(1500, ranks.getFirst().getRequirement(null, "money").getValueDouble());
plugin.getPermissions().addGroup(player.getUniqueId(), "C");
player.addAttachment(plugin, "rankup.rankup", true);
plugin.getHelper().rankup(player);
player.assertSaid("toml");
}
@Test
public void testRankup() {
PlayerMock player = server.addPlayer();
plugin.getPermissions().addGroup(player.getUniqueId(), "B");
plugin.getEconomy().setPlayer(player, 10000);
player.addAttachment(plugin, "rankup.rankup", true);
plugin.getHelper().rankup(player);
assertTrue(plugin.getPermissions().inGroup(player.getUniqueId(), "C"));
}
@Test
public void testRanks() {
PlayerMock player = server.addPlayer();
plugin.getPermissions().addGroup(player.getUniqueId(), "C");
player.addAttachment(plugin, "rankup.ranks", true);
plugin.getCommand("ranks").execute(player, "ranks", new String[0]);
player.assertSaid(ChatColor.GRAY + "A " + ChatColor.DARK_GRAY + "\u00bb " + ChatColor.GRAY + "B");
player.assertSaid(ChatColor.GRAY + "B " + ChatColor.DARK_GRAY + "\u00bb " + ChatColor.GRAY + "C");
player.assertSaid(ChatColor.RED + "C " + ChatColor.YELLOW + "\u00bb " + ChatColor.RED + "D o");
player.assertNoMoreSaid();
}
}