aboutsummaryrefslogtreecommitdiff
path: root/src/test/java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java')
-rw-r--r--src/test/java/de/hysky/skyblocker/skyblock/item/slottext/adders/EnchantmentLevelAdderTest.java28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/test/java/de/hysky/skyblocker/skyblock/item/slottext/adders/EnchantmentLevelAdderTest.java b/src/test/java/de/hysky/skyblocker/skyblock/item/slottext/adders/EnchantmentLevelAdderTest.java
new file mode 100644
index 00000000..90d6191f
--- /dev/null
+++ b/src/test/java/de/hysky/skyblocker/skyblock/item/slottext/adders/EnchantmentLevelAdderTest.java
@@ -0,0 +1,28 @@
+package de.hysky.skyblocker.skyblock.item.slottext.adders;
+
+import com.google.common.collect.ArrayListMultimap;
+import com.google.common.collect.Multimaps;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
+
+import java.util.Map;
+
+public class EnchantmentLevelAdderTest {
+ @Test
+ void testEnchantmentAbbreviations() {
+ checkForDuplicates(EnchantmentLevelAdder.ENCHANTMENT_ABBREVIATIONS);
+ }
+
+ @Test
+ void testUltimateEnchantmentAbbreviations() {
+ checkForDuplicates(EnchantmentLevelAdder.ULTIMATE_ENCHANTMENT_ABBREVIATIONS);
+ }
+
+ private void checkForDuplicates(Map<String, String> abbreviations) {
+ if (abbreviations.size() == abbreviations.values().stream().distinct().count()) return;
+ abbreviations.entrySet().stream().collect(Multimaps.toMultimap(Map.Entry::getValue, Map.Entry::getKey, ArrayListMultimap::create))
+ .asMap().entrySet().stream().filter(e -> e.getValue().size() > 1)
+ .map(e -> "Duplicate abbreviations: %s for %s".formatted(e.getKey(), e.getValue()))
+ .forEach(Assertions::fail);
+ }
+}