mirror of
https://github.com/PaperMC/Paper.git
synced 2025-08-05 22:52:13 -07:00
42 lines
1.3 KiB
Java
42 lines
1.3 KiB
Java
package org.bukkit.enchantments;
|
|
|
|
import net.minecraft.server.EnchantmentSlotType;
|
|
import net.minecraft.server.IRegistry;
|
|
import net.minecraft.server.Item;
|
|
import org.bukkit.Material;
|
|
import org.bukkit.craftbukkit.util.CraftMagicNumbers;
|
|
import org.junit.Assert;
|
|
import org.junit.Test;
|
|
|
|
public class EnchantmentTargetTest {
|
|
|
|
@Test
|
|
public void test() {
|
|
for (EnchantmentSlotType nmsSlot : EnchantmentSlotType.values()) {
|
|
EnchantmentTarget bukkitTarget;
|
|
switch (nmsSlot) {
|
|
case ARMOR_CHEST:
|
|
bukkitTarget = EnchantmentTarget.ARMOR_TORSO;
|
|
break;
|
|
case DIGGER:
|
|
bukkitTarget = EnchantmentTarget.TOOL;
|
|
break;
|
|
default:
|
|
bukkitTarget = EnchantmentTarget.valueOf(nmsSlot.name());
|
|
break;
|
|
}
|
|
|
|
Assert.assertNotNull("No bukkit target for slot " + nmsSlot, bukkitTarget);
|
|
|
|
for (Item item : IRegistry.ITEM) {
|
|
Material material = CraftMagicNumbers.getMaterial(item);
|
|
|
|
boolean nms = nmsSlot.canEnchant(item);
|
|
boolean bukkit = bukkitTarget.includes(material);
|
|
|
|
Assert.assertEquals("Slot mismatch for " + bukkitTarget + " and " + material, nms, bukkit);
|
|
}
|
|
}
|
|
}
|
|
}
|