From 3221f7cd30b0b12d697dec0d52b6040e2278e305 Mon Sep 17 00:00:00 2001 From: ExternalTime <84183548+ExternalTime@users.noreply.github.com> Date: Tue, 8 Mar 2022 15:15:32 +0100 Subject: Changed chat listener tests to use the new api --- .../xmrvizzy/skyblocker/chat/ChatListenerTest.java | 34 ---------------------- .../skyblocker/chat/ChatPatternListenerTest.java | 27 +++++++++++++++++ .../skyblocker/chat/filters/AbilityFilterTest.java | 5 ++-- .../skyblocker/chat/filters/AdFilterTest.java | 26 ++++++++++++----- .../skyblocker/chat/filters/AoteFilterTest.java | 3 +- .../skyblocker/chat/filters/ChatFilterTest.java | 19 ++---------- .../skyblocker/chat/filters/ComboFilterTest.java | 6 ++-- .../skyblocker/chat/filters/HealFilterTest.java | 5 ++-- .../chat/filters/ImplosionFilterTest.java | 5 ++-- .../chat/filters/TeleportPadFilterTest.java | 4 +-- .../skyblock/dungeon/ThreeWeirdosTest.java | 4 +-- .../skyblocker/skyblock/dungeon/TriviaTest.java | 4 +-- .../skyblocker/skyblock/dwarven/FetchurTest.java | 6 ++-- .../skyblocker/skyblock/dwarven/PuzzlerTest.java | 4 +-- 14 files changed, 69 insertions(+), 83 deletions(-) delete mode 100644 src/test/java/me/xmrvizzy/skyblocker/chat/ChatListenerTest.java create mode 100644 src/test/java/me/xmrvizzy/skyblocker/chat/ChatPatternListenerTest.java (limited to 'src/test/java') diff --git a/src/test/java/me/xmrvizzy/skyblocker/chat/ChatListenerTest.java b/src/test/java/me/xmrvizzy/skyblocker/chat/ChatListenerTest.java deleted file mode 100644 index 803f72d8..00000000 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/ChatListenerTest.java +++ /dev/null @@ -1,34 +0,0 @@ -package me.xmrvizzy.skyblocker.chat; - -import java.util.regex.Matcher; - -import static org.junit.jupiter.api.Assertions.*; - -public abstract class ChatListenerTest { - protected final T listener; - - public ChatListenerTest(T listener) { - this.listener = listener; - } - - protected boolean captures(String text) { - return listener.getPattern().matcher(text).matches(); - } - protected String[] getGroups(String text) { - Matcher matcher = listener.getPattern().matcher(text); - assertTrue(matcher.matches()); - String[] groups = new String[matcher.groupCount() + 1]; - for (int i = 0; i < groups.length; i++) - groups[i] = matcher.group(i); - return groups; - } - protected void assertCaptures(String text) { - assertTrue(captures(text)); - } - protected void assertNotCaptures(String text) { - assertTrue(captures(text)); - } - protected void assertGroup(String text, int group, String expect) { - assertEquals(expect, getGroups(text)[group]); - } -} \ No newline at end of file diff --git a/src/test/java/me/xmrvizzy/skyblocker/chat/ChatPatternListenerTest.java b/src/test/java/me/xmrvizzy/skyblocker/chat/ChatPatternListenerTest.java new file mode 100644 index 00000000..a4d6010a --- /dev/null +++ b/src/test/java/me/xmrvizzy/skyblocker/chat/ChatPatternListenerTest.java @@ -0,0 +1,27 @@ +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 index ec2db07b..65faef5b 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AbilityFilterTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AbilityFilterTest.java @@ -1,6 +1,5 @@ package me.xmrvizzy.skyblocker.chat.filters; -import me.xmrvizzy.skyblocker.chat.ChatListenerTest; import org.junit.jupiter.api.Test; class AbilityFilterTest extends ChatFilterTest { @@ -10,11 +9,11 @@ class AbilityFilterTest extends ChatFilterTest { @Test void charges() { - assertFilters("No more charges, next one in 13.2s!"); + assertMatches("No more charges, next one in 13.2s!"); } @Test void cooldown() { - assertFilters("This ability is on cooldown for 42s."); + 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 index 639042fe..73fb5dbd 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AdFilterTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AdFilterTest.java @@ -1,31 +1,35 @@ package me.xmrvizzy.skyblocker.chat.filters; -import me.xmrvizzy.skyblocker.chat.ChatListenerTest; +import me.xmrvizzy.skyblocker.chat.ChatPatternListenerTest; import org.junit.jupiter.api.Test; -class AdFilterTest extends ChatFilterTest { +import java.util.regex.Matcher; + +import static org.junit.jupiter.api.Assertions.*; + +class AdFilterTest extends ChatPatternListenerTest { public AdFilterTest() { super(new AdFilter()); } @Test void noRank() { - assertCaptures("§7Advertiser§7: advertisement"); + assertMatches("§7Advertiser§7: advertisement"); } @Test void vip() { - assertCaptures("§a[VIP] Advertiser§f: advertisement"); + assertMatches("§a[VIP] Advertiser§f: advertisement"); } @Test void mvp() { - assertCaptures("§b[MVP§c+§b] Advertiser§f: advertisement"); + assertMatches("§b[MVP§c+§b] Advertiser§f: advertisement"); } @Test void plusPlus() { - assertCaptures("§6[MVP§c++§6] Advertiser§f: advertisement"); + assertMatches("§6[MVP§c++§6] Advertiser§f: advertisement"); } @Test @@ -50,6 +54,14 @@ class AdFilterTest extends ChatFilterTest { @Test void notAd() { - assertNotFilters("§a[VIP] NotMatching§f: This message shouldn't match!"); + Matcher matcher = listener.pattern.matcher("§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 index 2aa14e1c..4f736bd3 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AoteFilterTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AoteFilterTest.java @@ -1,6 +1,5 @@ package me.xmrvizzy.skyblocker.chat.filters; -import me.xmrvizzy.skyblocker.chat.ChatListenerTest; import org.junit.jupiter.api.Test; class AoteFilterTest extends ChatFilterTest { @@ -10,6 +9,6 @@ class AoteFilterTest extends ChatFilterTest { @Test void testRegex() { - assertFilters("There are blocks in the way!"); + assertMatches("There are blocks in the way!"); } } \ 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 index ff3399a7..6b356e5c 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ChatFilterTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ChatFilterTest.java @@ -1,26 +1,13 @@ package me.xmrvizzy.skyblocker.chat.filters; -import me.xmrvizzy.skyblocker.chat.ChatListener; -import me.xmrvizzy.skyblocker.chat.ChatListenerTest; +import me.xmrvizzy.skyblocker.chat.ChatPatternListener; +import me.xmrvizzy.skyblocker.chat.ChatPatternListenerTest; import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.assertFalse; -public class ChatFilterTest extends ChatListenerTest { +public class ChatFilterTest extends ChatPatternListenerTest { public ChatFilterTest(T listener) { super(listener); } - - protected boolean filters(String text) { - if(!captures(text)) - return false; - String[] groups = getGroups(text); - return listener.onMessage(groups); - } - protected void assertFilters(String text) { - assertTrue(filters(text)); - } - protected void assertNotFilters(String text) { - assertFalse(filters(text)); - } } diff --git a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ComboFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ComboFilterTest.java index 521668b0..8af25b5e 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ComboFilterTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ComboFilterTest.java @@ -9,16 +9,16 @@ public class ComboFilterTest extends ChatFilterTest { @Test void testComboMF() { - assertFilters("+5 Kill Combo +3% ✯ Magic Find"); + assertMatches("+5 Kill Combo +3% ✯ Magic Find"); } @Test void testComboCoins() { - assertFilters("+10 Kill Combo +10 coins per kill"); + assertMatches("+10 Kill Combo +10 coins per kill"); } @Test void testComboExpired() { - assertFilters("Your Kill Combo has expired! You reached a 11 Kill Combo!"); + 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 index f7b4d59b..5d8c12cf 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/HealFilterTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/HealFilterTest.java @@ -1,6 +1,5 @@ package me.xmrvizzy.skyblocker.chat.filters; -import me.xmrvizzy.skyblocker.chat.ChatListenerTest; import org.junit.jupiter.api.Test; class HealFilterTest extends ChatFilterTest { @@ -10,11 +9,11 @@ class HealFilterTest extends ChatFilterTest { @Test void healSelf() { - assertFilters("You healed yourself for 18.3 health!"); + assertMatches("You healed yourself for 18.3 health!"); } @Test void healedYou() { - assertFilters("H3aler_ healed you for 56 health!"); + 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 index a6526925..59451167 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ImplosionFilterTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/ImplosionFilterTest.java @@ -1,6 +1,5 @@ package me.xmrvizzy.skyblocker.chat.filters; -import me.xmrvizzy.skyblocker.chat.ChatListenerTest; import org.junit.jupiter.api.Test; class ImplosionFilterTest extends ChatFilterTest { @@ -10,11 +9,11 @@ class ImplosionFilterTest extends ChatFilterTest { @Test void oneEnemy() { - assertFilters("Your Implosion hit 1 enemy for 636,116.8 damage."); + assertMatches("Your Implosion hit 1 enemy for 636,116.8 damage."); } @Test void multipleEnemies() { - assertFilters("Your Implosion hit 7 enemies for 4,452,817.4 damage."); + 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 index 605d57bb..a3eadc7b 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/TeleportPadFilterTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/TeleportPadFilterTest.java @@ -9,11 +9,11 @@ public class TeleportPadFilterTest extends ChatFilterTest { @Test void testTeleport() { - assertFilters("Warped from the Base Teleport Pad to the Minion Teleport Pad!"); + assertMatches("Warped from the Base Teleport Pad to the Minion Teleport Pad!"); } @Test void testNoDestination() { - assertFilters("This Teleport Pad does not have a destination set!"); + 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/ThreeWeirdosTest.java b/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/ThreeWeirdosTest.java index 18c638c7..555753b6 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/ThreeWeirdosTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/ThreeWeirdosTest.java @@ -1,9 +1,9 @@ package me.xmrvizzy.skyblocker.skyblock.dungeon; -import me.xmrvizzy.skyblocker.chat.ChatListenerTest; +import me.xmrvizzy.skyblocker.chat.ChatPatternListenerTest; import org.junit.jupiter.api.Test; -class ThreeWeirdosTest extends ChatListenerTest { +class ThreeWeirdosTest extends ChatPatternListenerTest { public ThreeWeirdosTest() { super(new ThreeWeirdos()); } 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 6f7950e3..37f077fb 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/TriviaTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/dungeon/TriviaTest.java @@ -1,9 +1,9 @@ package me.xmrvizzy.skyblocker.skyblock.dungeon; -import me.xmrvizzy.skyblocker.chat.ChatListenerTest; +import me.xmrvizzy.skyblocker.chat.ChatPatternListenerTest; import org.junit.jupiter.api.Test; -class TriviaTest extends ChatListenerTest { +class TriviaTest extends ChatPatternListenerTest { public TriviaTest() { super(new Trivia()); } 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 35b8ab58..f8e0af18 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/skyblock/dwarven/FetchurTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/dwarven/FetchurTest.java @@ -1,11 +1,9 @@ package me.xmrvizzy.skyblocker.skyblock.dwarven; -import me.xmrvizzy.skyblocker.chat.ChatListenerTest; +import me.xmrvizzy.skyblocker.chat.ChatPatternListenerTest; import org.junit.jupiter.api.Test; -import static org.junit.jupiter.api.Assertions.*; - -class FetchurTest extends ChatListenerTest { +class FetchurTest extends ChatPatternListenerTest { public FetchurTest() { super(new Fetchur()); } 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 ab2878ef..e26e306e 100644 --- a/src/test/java/me/xmrvizzy/skyblocker/skyblock/dwarven/PuzzlerTest.java +++ b/src/test/java/me/xmrvizzy/skyblocker/skyblock/dwarven/PuzzlerTest.java @@ -1,9 +1,9 @@ package me.xmrvizzy.skyblocker.skyblock.dwarven; -import me.xmrvizzy.skyblocker.chat.ChatListenerTest; +import me.xmrvizzy.skyblocker.chat.ChatPatternListenerTest; import org.junit.jupiter.api.Test; -class PuzzlerTest extends ChatListenerTest { +class PuzzlerTest extends ChatPatternListenerTest { public PuzzlerTest() { super(new Puzzler()); } -- cgit