mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-03 13:36:44 +01:00
SPIGOT-5516: Correct EnchantmentTarget values
This commit is contained in:
parent
01334e7dcb
commit
ec4b2b5ef1
1 changed files with 41 additions and 0 deletions
|
@ -0,0 +1,41 @@
|
|||
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);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue