From b80f6df13b8dfb97f1569f5802b66fc837480eef Mon Sep 17 00:00:00 2001 From: Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> Date: Sat, 22 Jul 2023 14:48:12 +0800 Subject: Refactor chat and discord packages --- .../skyblocker/chat/ChatPatternListenerTest.java | 27 --------- .../skyblocker/chat/filters/AbilityFilterTest.java | 19 ------ .../skyblocker/chat/filters/AdFilterTest.java | 67 --------------------- .../skyblocker/chat/filters/AoteFilterTest.java | 14 ----- .../skyblocker/chat/filters/AutopetFilterTest.java | 15 ----- .../skyblocker/chat/filters/ChatFilterTest.java | 10 ---- .../skyblocker/chat/filters/ComboFilterTest.java | 29 --------- .../skyblocker/chat/filters/HealFilterTest.java | 19 ------ .../chat/filters/ImplosionFilterTest.java | 19 ------ .../chat/filters/TeleportPadFilterTest.java | 19 ------ .../skyblock/dungeon/AcceptRepartyTest.java | 6 +- .../skyblock/dungeon/ThreeWeirdosTest.java | 2 +- .../skyblocker/skyblock/dungeon/TriviaTest.java | 2 +- .../skyblocker/skyblock/dwarven/FetchurTest.java | 2 +- .../skyblocker/skyblock/dwarven/PuzzlerTest.java | 2 +- .../skyblock/filters/AbilityFilterTest.java | 19 ++++++ .../skyblocker/skyblock/filters/AdFilterTest.java | 68 ++++++++++++++++++++++ .../skyblock/filters/AoteFilterTest.java | 14 +++++ .../skyblock/filters/AutopetFilterTest.java | 15 +++++ .../skyblock/filters/ChatFilterTest.java | 10 ++++ .../skyblock/filters/ComboFilterTest.java | 29 +++++++++ .../skyblock/filters/HealFilterTest.java | 19 ++++++ .../skyblock/filters/ImplosionFilterTest.java | 19 ++++++ .../skyblock/filters/TeleportPadFilterTest.java | 19 ++++++ .../utils/chat/ChatPatternListenerTest.java | 28 +++++++++ 25 files changed, 248 insertions(+), 244 deletions(-) delete mode 100644 src/test/java/me/xmrvizzy/skyblocker/chat/ChatPatternListenerTest.java delete mode 100644 src/test/java/me/xmrvizzy/skyblocker/chat/filters/AbilityFilterTest.java delete mode 100644 src/test/java/me/xmrvizzy/skyblocker/chat/filters/AdFilterTest.java delete mode 100644 src/test/java/me/xmrvizzy/skyblocker/chat/filters/AoteFilterTest.java delete mode 100644 src/test/java/me/xmrvizzy/skyblocker/chat/filters/AutopetFilterTest.java delete mode 100644 src/test/java/me/xmrvizzy/skyblocker/chat/filters/ChatFilterTest.java delete mode 100644 src/test/java/me/xmrvizzy/skyblocker/chat/filters/ComboFilterTest.java delete mode 100644 src/test/java/me/xmrvizzy/skyblocker/chat/filters/HealFilterTest.java delete mode 100644 src/test/java/me/xmrvizzy/skyblocker/chat/filters/ImplosionFilterTest.java delete mode 100644 src/test/java/me/xmrvizzy/skyblocker/chat/filters/TeleportPadFilterTest.java create mode 100644 src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AbilityFilterTest.java create mode 100644 src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AdFilterTest.java create mode 100644 src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AoteFilterTest.java create mode 100644 src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AutopetFilterTest.java create mode 100644 src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/ChatFilterTest.java create mode 100644 src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/ComboFilterTest.java create mode 100644 src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/HealFilterTest.java create mode 100644 src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/ImplosionFilterTest.java create mode 100644 src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/TeleportPadFilterTest.java create mode 100644 src/test/java/me/xmrvizzy/skyblocker/utils/chat/ChatPatternListenerTest.java (limited to 'src/test') diff --git a/src/test/java/me/xmrvizzy/skyblocker/chat/ChatPatternListenerTest.java b/src/test/java/me/xmrvizzy/skyblocker/chat/ChatPatternListenerTest.java deleted file mode 100644 index a4d6010a..00000000 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/ChatPatternListenerTest.java +++ /dev/null @@ -1,27 +0,0 @@ -package me.xmrvizzy.skyblocker.chat; - -import java.util.regex.Matcher; - -import static org.junit.jupiter.api.Assertions.*; - -public abstract class ChatPatternListenerTest { - protected final T listener; - - public ChatPatternListenerTest(T listener) { - this.listener = listener; - } - - protected Matcher matcher(String message) { - return listener.pattern.matcher(message); - } - - protected void assertMatches(String message) { - assertTrue(matcher(message).matches()); - } - - protected void assertGroup(String message, int group, String expect) { - Matcher matcher = matcher(message); - assertTrue(matcher.matches()); - assertEquals(expect, matcher.group(group)); - } -} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AbilityFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AbilityFilterTest.java deleted file mode 100644 index 65faef5b..00000000 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AbilityFilterTest.java +++ /dev/null @@ -1,19 +0,0 @@ -package me.xmrvizzy.skyblocker.chat.filters; - -import org.junit.jupiter.api.Test; - -class AbilityFilterTest extends ChatFilterTest { - public AbilityFilterTest() { - super(new AbilityFilter()); - } - - @Test - void charges() { - assertMatches("No more charges, next one in 13.2s!"); - } - - @Test - void cooldown() { - assertMatches("This ability is on cooldown for 42s."); - } -} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AdFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AdFilterTest.java deleted file mode 100644 index 8a776ab7..00000000 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AdFilterTest.java +++ /dev/null @@ -1,67 +0,0 @@ -package me.xmrvizzy.skyblocker.chat.filters; - -import me.xmrvizzy.skyblocker.chat.ChatPatternListenerTest; -import org.junit.jupiter.api.Test; - -import java.util.regex.Matcher; - -import static org.junit.jupiter.api.Assertions.*; - -class AdFilterTest extends ChatPatternListenerTest { - public AdFilterTest() { - super(new AdFilter()); - } - - @Test - void noRank() { - assertMatches("§8[§a86§8] §7Advertiser§7: advertisement"); - } - - @Test - void vip() { - assertMatches("§8[§b280§8] §a[VIP] Advertiser§f: advertisement"); - } - - @Test - void mvp() { - assertMatches("§8[§d256§8] §6§l⚡ §b[MVP§c+§b] Advertiser§f: advertisement"); - } - - @Test - void plusPlus() { - assertMatches("§8[§6222§8] §6[MVP§c++§6] Advertiser§f: advertisement"); - } - - @Test - void capturesMessage() { - assertGroup("§8[§c325§8] §b[MVP§c+§b] b2dderr§f: buying prismapump", 2, "buying prismapump"); - } - - @Test - void simpleAd() { - assertFilters("§8[§e320§8] §b[MVP§c+§b] b2dderr§f: buying prismapump"); - } - - @Test - void uppercaseAd() { - assertFilters("§8[§f70§8] §a[VIP] Tecnoisnoob§f: SELLING REJUVENATE 5 Book on ah!"); - } - - @Test - void characterSpam() { - assertFilters("§8[§9144§8] §a[VIP] Benyyy_§f: Hey, Visit my Island, i spent lots of time to build it! I also made donate room! <<<<<<<<<<<<<<<<<<<"); - } - - @Test - void notAd() { - Matcher matcher = listener.pattern.matcher("§8[§6200§8] §a[VIP] NotMatching§f: This message shouldn't match!"); - assertTrue(matcher.matches()); - assertFalse(listener.onMatch(null, matcher)); - } - - void assertFilters(String message) { - Matcher matcher = listener.pattern.matcher(message); - assertTrue(matcher.matches()); - assertTrue(listener.onMatch(null, matcher)); - } -} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AoteFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AoteFilterTest.java deleted file mode 100644 index 4f736bd3..00000000 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AoteFilterTest.java +++ /dev/null @@ -1,14 +0,0 @@ -package me.xmrvizzy.skyblocker.chat.filters; - -import org.junit.jupiter.api.Test; - -class AoteFilterTest extends ChatFilterTest { - public AoteFilterTest() { - super(new AoteFilter()); - } - - @Test - void testRegex() { - assertMatches("There are blocks in the way!"); - } -} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AutopetFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AutopetFilterTest.java deleted file mode 100644 index 534ce2b7..00000000 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AutopetFilterTest.java +++ /dev/null @@ -1,15 +0,0 @@ -package me.xmrvizzy.skyblocker.chat.filters; - -import me.xmrvizzy.skyblocker.chat.ChatPatternListenerTest; -import org.junit.jupiter.api.Test; - -class AutopetFilterTest extends ChatPatternListenerTest { - public AutopetFilterTest() { - super(new AutopetFilter()); - } - - @Test - void testAutopet() { - assertMatches("§cAutopet §eequipped your §7[Lvl 85] §6Tiger§e! §a§lVIEW RULE"); - } -} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ChatFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ChatFilterTest.java deleted file mode 100644 index 867386b3..00000000 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ChatFilterTest.java +++ /dev/null @@ -1,10 +0,0 @@ -package me.xmrvizzy.skyblocker.chat.filters; - -import me.xmrvizzy.skyblocker.chat.ChatPatternListener; -import me.xmrvizzy.skyblocker.chat.ChatPatternListenerTest; - -public class ChatFilterTest extends ChatPatternListenerTest { - public ChatFilterTest(T listener) { - super(listener); - } -} diff --git a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ComboFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ComboFilterTest.java deleted file mode 100644 index 85d38f44..00000000 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ComboFilterTest.java +++ /dev/null @@ -1,29 +0,0 @@ -package me.xmrvizzy.skyblocker.chat.filters; - -import org.junit.jupiter.api.Test; - -public class ComboFilterTest extends ChatFilterTest { - public ComboFilterTest() { - super(new ComboFilter()); - } - - @Test - void testComboMF() { - assertMatches("+5 Kill Combo +3% ✯ Magic Find"); - } - - @Test - void testComboCoins() { - assertMatches("+10 Kill Combo +10 coins per kill"); - } - - @Test - void testComboEXP() { - assertMatches("+20 Kill Combo +15% Combat Exp"); - } - - @Test - void testComboExpired() { - assertMatches("Your Kill Combo has expired! You reached a 11 Kill Combo!"); - } -} diff --git a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/HealFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/HealFilterTest.java deleted file mode 100644 index 5d8c12cf..00000000 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/HealFilterTest.java +++ /dev/null @@ -1,19 +0,0 @@ -package me.xmrvizzy.skyblocker.chat.filters; - -import org.junit.jupiter.api.Test; - -class HealFilterTest extends ChatFilterTest { - public HealFilterTest() { - super(new HealFilter()); - } - - @Test - void healSelf() { - assertMatches("You healed yourself for 18.3 health!"); - } - - @Test - void healedYou() { - assertMatches("H3aler_ healed you for 56 health!"); - } -} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ImplosionFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ImplosionFilterTest.java deleted file mode 100644 index 59451167..00000000 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ImplosionFilterTest.java +++ /dev/null @@ -1,19 +0,0 @@ -package me.xmrvizzy.skyblocker.chat.filters; - -import org.junit.jupiter.api.Test; - -class ImplosionFilterTest extends ChatFilterTest { - public ImplosionFilterTest() { - super(new ImplosionFilter()); - } - - @Test - void oneEnemy() { - assertMatches("Your Implosion hit 1 enemy for 636,116.8 damage."); - } - - @Test - void multipleEnemies() { - assertMatches("Your Implosion hit 7 enemies for 4,452,817.4 damage."); - } -} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/TeleportPadFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/TeleportPadFilterTest.java deleted file mode 100644 index a3eadc7b..00000000 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/TeleportPadFilterTest.java +++ /dev/null @@ -1,19 +0,0 @@ -package me.xmrvizzy.skyblocker.chat.filters; - -import org.junit.jupiter.api.Test; - -public class TeleportPadFilterTest extends ChatFilterTest { - public TeleportPadFilterTest() { - super(new TeleportPadFilter()); - } - - @Test - void testTeleport() { - assertMatches("Warped from the Base Teleport Pad to the Minion Teleport Pad!"); - } - - @Test - void testNoDestination() { - assertMatches("This Teleport Pad does not have a destination set!"); - } -} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/AcceptRepartyTest.java b/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/AcceptRepartyTest.java index 2465f7a2..eb867a37 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/AcceptRepartyTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/AcceptRepartyTest.java @@ -1,10 +1,12 @@ package me.xmrvizzy.skyblocker.skyblock.dungeon; -import me.xmrvizzy.skyblocker.chat.ChatPatternListenerTest; +import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListenerTest; import org.junit.jupiter.api.Test; + +import java.util.regex.Matcher; + import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; -import java.util.regex.Matcher; public class AcceptRepartyTest extends ChatPatternListenerTest { diff --git a/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/ThreeWeirdosTest.java b/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/ThreeWeirdosTest.java index 555753b6..6a5dd2a7 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/ThreeWeirdosTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/ThreeWeirdosTest.java @@ -1,6 +1,6 @@ package me.xmrvizzy.skyblocker.skyblock.dungeon; -import me.xmrvizzy.skyblocker.chat.ChatPatternListenerTest; +import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListenerTest; import org.junit.jupiter.api.Test; class ThreeWeirdosTest extends ChatPatternListenerTest { diff --git a/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/TriviaTest.java b/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/TriviaTest.java index 37f077fb..a787967d 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/TriviaTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/TriviaTest.java @@ -1,6 +1,6 @@ package me.xmrvizzy.skyblocker.skyblock.dungeon; -import me.xmrvizzy.skyblocker.chat.ChatPatternListenerTest; +import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListenerTest; import org.junit.jupiter.api.Test; class TriviaTest extends ChatPatternListenerTest { diff --git a/src/test/java/me/xmrvizzy/skyblocker/skyblock/dwarven/FetchurTest.java b/src/test/java/me/xmrvizzy/skyblocker/skyblock/dwarven/FetchurTest.java index f8e0af18..5d78beeb 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/skyblock/dwarven/FetchurTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/dwarven/FetchurTest.java @@ -1,6 +1,6 @@ package me.xmrvizzy.skyblocker.skyblock.dwarven; -import me.xmrvizzy.skyblocker.chat.ChatPatternListenerTest; +import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListenerTest; import org.junit.jupiter.api.Test; class FetchurTest extends ChatPatternListenerTest { diff --git a/src/test/java/me/xmrvizzy/skyblocker/skyblock/dwarven/PuzzlerTest.java b/src/test/java/me/xmrvizzy/skyblocker/skyblock/dwarven/PuzzlerTest.java index e26e306e..8b92e9f5 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/skyblock/dwarven/PuzzlerTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/dwarven/PuzzlerTest.java @@ -1,6 +1,6 @@ package me.xmrvizzy.skyblocker.skyblock.dwarven; -import me.xmrvizzy.skyblocker.chat.ChatPatternListenerTest; +import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListenerTest; import org.junit.jupiter.api.Test; class PuzzlerTest extends ChatPatternListenerTest { diff --git a/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AbilityFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AbilityFilterTest.java new file mode 100644 index 00000000..de82039e --- /dev/null +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AbilityFilterTest.java @@ -0,0 +1,19 @@ +package me.xmrvizzy.skyblocker.skyblock.filters; + +import org.junit.jupiter.api.Test; + +class AbilityFilterTest extends ChatFilterTest { + public AbilityFilterTest() { + super(new AbilityFilter()); + } + + @Test + void charges() { + assertMatches("No more charges, next one in 13.2s!"); + } + + @Test + void cooldown() { + assertMatches("This ability is on cooldown for 42s."); + } +} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AdFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AdFilterTest.java new file mode 100644 index 00000000..30315131 --- /dev/null +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AdFilterTest.java @@ -0,0 +1,68 @@ +package me.xmrvizzy.skyblocker.skyblock.filters; + +import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListenerTest; +import org.junit.jupiter.api.Test; + +import java.util.regex.Matcher; + +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; + +class AdFilterTest extends ChatPatternListenerTest { + public AdFilterTest() { + super(new AdFilter()); + } + + @Test + void noRank() { + assertMatches("§8[§a86§8] §7Advertiser§7: advertisement"); + } + + @Test + void vip() { + assertMatches("§8[§b280§8] §a[VIP] Advertiser§f: advertisement"); + } + + @Test + void mvp() { + assertMatches("§8[§d256§8] §6§l⚡ §b[MVP§c+§b] Advertiser§f: advertisement"); + } + + @Test + void plusPlus() { + assertMatches("§8[§6222§8] §6[MVP§c++§6] Advertiser§f: advertisement"); + } + + @Test + void capturesMessage() { + assertGroup("§8[§c325§8] §b[MVP§c+§b] b2dderr§f: buying prismapump", 2, "buying prismapump"); + } + + @Test + void simpleAd() { + assertFilters("§8[§e320§8] §b[MVP§c+§b] b2dderr§f: buying prismapump"); + } + + @Test + void uppercaseAd() { + assertFilters("§8[§f70§8] §a[VIP] Tecnoisnoob§f: SELLING REJUVENATE 5 Book on ah!"); + } + + @Test + void characterSpam() { + assertFilters("§8[§9144§8] §a[VIP] Benyyy_§f: Hey, Visit my Island, i spent lots of time to build it! I also made donate room! <<<<<<<<<<<<<<<<<<<"); + } + + @Test + void notAd() { + Matcher matcher = listener.pattern.matcher("§8[§6200§8] §a[VIP] NotMatching§f: This message shouldn't match!"); + assertTrue(matcher.matches()); + assertFalse(listener.onMatch(null, matcher)); + } + + void assertFilters(String message) { + Matcher matcher = listener.pattern.matcher(message); + assertTrue(matcher.matches()); + assertTrue(listener.onMatch(null, matcher)); + } +} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AoteFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AoteFilterTest.java new file mode 100644 index 00000000..52903b1b --- /dev/null +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AoteFilterTest.java @@ -0,0 +1,14 @@ +package me.xmrvizzy.skyblocker.skyblock.filters; + +import org.junit.jupiter.api.Test; + +class AoteFilterTest extends ChatFilterTest { + public AoteFilterTest() { + super(new AoteFilter()); + } + + @Test + void testRegex() { + assertMatches("There are blocks in the way!"); + } +} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AutopetFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AutopetFilterTest.java new file mode 100644 index 00000000..2c8f1425 --- /dev/null +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/AutopetFilterTest.java @@ -0,0 +1,15 @@ +package me.xmrvizzy.skyblocker.skyblock.filters; + +import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListenerTest; +import org.junit.jupiter.api.Test; + +class AutopetFilterTest extends ChatPatternListenerTest { + public AutopetFilterTest() { + super(new AutopetFilter()); + } + + @Test + void testAutopet() { + assertMatches("§cAutopet §eequipped your §7[Lvl 85] §6Tiger§e! §a§lVIEW RULE"); + } +} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/ChatFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/ChatFilterTest.java new file mode 100644 index 00000000..5d397d16 --- /dev/null +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/ChatFilterTest.java @@ -0,0 +1,10 @@ +package me.xmrvizzy.skyblocker.skyblock.filters; + +import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListener; +import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListenerTest; + +public class ChatFilterTest extends ChatPatternListenerTest { + public ChatFilterTest(T listener) { + super(listener); + } +} diff --git a/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/ComboFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/ComboFilterTest.java new file mode 100644 index 00000000..2914db39 --- /dev/null +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/ComboFilterTest.java @@ -0,0 +1,29 @@ +package me.xmrvizzy.skyblocker.skyblock.filters; + +import org.junit.jupiter.api.Test; + +public class ComboFilterTest extends ChatFilterTest { + public ComboFilterTest() { + super(new ComboFilter()); + } + + @Test + void testComboMF() { + assertMatches("+5 Kill Combo +3% ✯ Magic Find"); + } + + @Test + void testComboCoins() { + assertMatches("+10 Kill Combo +10 coins per kill"); + } + + @Test + void testComboEXP() { + assertMatches("+20 Kill Combo +15% Combat Exp"); + } + + @Test + void testComboExpired() { + assertMatches("Your Kill Combo has expired! You reached a 11 Kill Combo!"); + } +} diff --git a/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/HealFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/HealFilterTest.java new file mode 100644 index 00000000..d720d4be --- /dev/null +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/HealFilterTest.java @@ -0,0 +1,19 @@ +package me.xmrvizzy.skyblocker.skyblock.filters; + +import org.junit.jupiter.api.Test; + +class HealFilterTest extends ChatFilterTest { + public HealFilterTest() { + super(new HealFilter()); + } + + @Test + void healSelf() { + assertMatches("You healed yourself for 18.3 health!"); + } + + @Test + void healedYou() { + assertMatches("H3aler_ healed you for 56 health!"); + } +} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/ImplosionFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/ImplosionFilterTest.java new file mode 100644 index 00000000..b9b872d9 --- /dev/null +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/ImplosionFilterTest.java @@ -0,0 +1,19 @@ +package me.xmrvizzy.skyblocker.skyblock.filters; + +import org.junit.jupiter.api.Test; + +class ImplosionFilterTest extends ChatFilterTest { + public ImplosionFilterTest() { + super(new ImplosionFilter()); + } + + @Test + void oneEnemy() { + assertMatches("Your Implosion hit 1 enemy for 636,116.8 damage."); + } + + @Test + void multipleEnemies() { + assertMatches("Your Implosion hit 7 enemies for 4,452,817.4 damage."); + } +} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/TeleportPadFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/TeleportPadFilterTest.java new file mode 100644 index 00000000..b8a96703 --- /dev/null +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/filters/TeleportPadFilterTest.java @@ -0,0 +1,19 @@ +package me.xmrvizzy.skyblocker.skyblock.filters; + +import org.junit.jupiter.api.Test; + +public class TeleportPadFilterTest extends ChatFilterTest { + public TeleportPadFilterTest() { + super(new TeleportPadFilter()); + } + + @Test + void testTeleport() { + assertMatches("Warped from the Base Teleport Pad to the Minion Teleport Pad!"); + } + + @Test + void testNoDestination() { + assertMatches("This Teleport Pad does not have a destination set!"); + } +} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/utils/chat/ChatPatternListenerTest.java b/src/test/java/me/xmrvizzy/skyblocker/utils/chat/ChatPatternListenerTest.java new file mode 100644 index 00000000..5d6f5727 --- /dev/null +++ b/src/test/java/me/xmrvizzy/skyblocker/utils/chat/ChatPatternListenerTest.java @@ -0,0 +1,28 @@ +package me.xmrvizzy.skyblocker.utils.chat; + +import java.util.regex.Matcher; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +public abstract class ChatPatternListenerTest { + protected final T listener; + + public ChatPatternListenerTest(T listener) { + this.listener = listener; + } + + protected Matcher matcher(String message) { + return listener.pattern.matcher(message); + } + + protected void assertMatches(String message) { + assertTrue(matcher(message).matches()); + } + + protected void assertGroup(String message, int group, String expect) { + Matcher matcher = matcher(message); + assertTrue(matcher.matches()); + assertEquals(expect, matcher.group(group)); + } +} \ No newline at end of file -- cgit