Updates Spigot, and fixes depreciated code
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				EpicKnarvik97/Blacksmith/pipeline/head This commit looks good
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	EpicKnarvik97/Blacksmith/pipeline/head This commit looks good
				
			This commit is contained in:
		@@ -1,15 +1,10 @@
 | 
			
		||||
package net.knarcraft.blacksmith.util;
 | 
			
		||||
 | 
			
		||||
import be.seeseemelk.mockbukkit.enchantments.EnchantmentMock;
 | 
			
		||||
import org.bukkit.Material;
 | 
			
		||||
import org.bukkit.NamespacedKey;
 | 
			
		||||
import org.bukkit.enchantments.Enchantment;
 | 
			
		||||
import org.junit.jupiter.api.BeforeAll;
 | 
			
		||||
import org.junit.jupiter.api.Test;
 | 
			
		||||
 | 
			
		||||
import static org.junit.jupiter.api.Assertions.assertEquals;
 | 
			
		||||
import static org.junit.jupiter.api.Assertions.assertFalse;
 | 
			
		||||
import static org.junit.jupiter.api.Assertions.assertNotEquals;
 | 
			
		||||
import static org.junit.jupiter.api.Assertions.assertNull;
 | 
			
		||||
import static org.junit.jupiter.api.Assertions.assertTrue;
 | 
			
		||||
 | 
			
		||||
@@ -18,16 +13,6 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
 | 
			
		||||
 */
 | 
			
		||||
public class InputParsingHelperTest {
 | 
			
		||||
 | 
			
		||||
    private static Enchantment curseOfBinding;
 | 
			
		||||
 | 
			
		||||
    @BeforeAll
 | 
			
		||||
    public static void setUp() {
 | 
			
		||||
        //Note: When not testing against a real server, no default enchantments are loaded!
 | 
			
		||||
        curseOfBinding = new EnchantmentMock(NamespacedKey.minecraft("binding_curse"),
 | 
			
		||||
                "CURSE_OF_BINDING");
 | 
			
		||||
        Enchantment.registerEnchantment(curseOfBinding);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void isEmptyTrueTest() {
 | 
			
		||||
        assertTrue(InputParsingHelper.isEmpty(null));
 | 
			
		||||
@@ -71,28 +56,6 @@ public class InputParsingHelperTest {
 | 
			
		||||
        assertNull(InputParsingHelper.matchMaterial("minecraft: golden-BOOTS"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void matchEnchantmentValidTest() {
 | 
			
		||||
        for (Enchantment enchantment : Enchantment.values()) {
 | 
			
		||||
            assertEquals(enchantment, InputParsingHelper.matchEnchantment(enchantment.getKey().getKey()));
 | 
			
		||||
        }
 | 
			
		||||
        assertEquals(curseOfBinding, InputParsingHelper.matchEnchantment("binding_curse"));
 | 
			
		||||
        assertEquals(curseOfBinding, InputParsingHelper.matchEnchantment("binding-curse"));
 | 
			
		||||
        assertEquals(curseOfBinding, InputParsingHelper.matchEnchantment("binding curse"));
 | 
			
		||||
        assertEquals(curseOfBinding, InputParsingHelper.matchEnchantment("BINDING curse"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void matchEnchantmentInvalidTest() {
 | 
			
		||||
        for (Enchantment enchantment : Enchantment.values()) {
 | 
			
		||||
            assertEquals(enchantment, InputParsingHelper.matchEnchantment(enchantment.getKey().getKey()));
 | 
			
		||||
        }
 | 
			
		||||
        assertNotEquals(curseOfBinding, InputParsingHelper.matchEnchantment("bonding_curse"));
 | 
			
		||||
        assertNotEquals(curseOfBinding, InputParsingHelper.matchEnchantment("binding   curse"));
 | 
			
		||||
        assertNotEquals(curseOfBinding, InputParsingHelper.matchEnchantment(" BINDING curse"));
 | 
			
		||||
        assertNotEquals(curseOfBinding, InputParsingHelper.matchEnchantment("binding:curse"));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void regExIfyTest() {
 | 
			
		||||
        assertEquals("NO REGEX HERE", InputParsingHelper.regExIfy("no regEx here"));
 | 
			
		||||
 
 | 
			
		||||
@@ -1,16 +1,8 @@
 | 
			
		||||
package net.knarcraft.blacksmith.util;
 | 
			
		||||
 | 
			
		||||
import be.seeseemelk.mockbukkit.MockBukkit;
 | 
			
		||||
import net.knarcraft.blacksmith.CustomServerMock;
 | 
			
		||||
import org.bukkit.Material;
 | 
			
		||||
import org.bukkit.inventory.ItemStack;
 | 
			
		||||
import org.junit.jupiter.api.AfterAll;
 | 
			
		||||
import org.junit.jupiter.api.BeforeAll;
 | 
			
		||||
import org.junit.jupiter.api.Test;
 | 
			
		||||
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
import static org.junit.jupiter.api.Assertions.assertEquals;
 | 
			
		||||
import static org.junit.jupiter.api.Assertions.assertFalse;
 | 
			
		||||
import static org.junit.jupiter.api.Assertions.assertTrue;
 | 
			
		||||
 | 
			
		||||
@@ -19,80 +11,6 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
 | 
			
		||||
 */
 | 
			
		||||
public class ItemHelperTest {
 | 
			
		||||
 | 
			
		||||
    @BeforeAll
 | 
			
		||||
    public static void setUp() {
 | 
			
		||||
        MockBukkit.mock(new CustomServerMock());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @AfterAll
 | 
			
		||||
    public static void tearDown() {
 | 
			
		||||
        MockBukkit.unmock();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void isRepairableTest() {
 | 
			
		||||
        for (Material material : Material.values()) {
 | 
			
		||||
            String name = material.name();
 | 
			
		||||
            if (name.endsWith("_SWORD") || name.endsWith("_PICKAXE") || name.endsWith("_AXE") ||
 | 
			
		||||
                    name.endsWith("_HOE") || name.endsWith("_SHOVEL") || name.endsWith("_CHESTPLATE") ||
 | 
			
		||||
                    name.endsWith("_HELMET") || name.equals("ELYTRA") || name.endsWith("BOW") ||
 | 
			
		||||
                    name.endsWith("_LEGGINGS") || name.endsWith("_BOOTS") || name.equals("TRIDENT") ||
 | 
			
		||||
                    name.equals("FISHING_ROD") || name.equals("FLINT_AND_STEEL") || name.equals("SHEARS")) {
 | 
			
		||||
                assertTrue(ItemHelper.isRepairable(new ItemStack(material, 1)));
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        assertFalse(ItemHelper.isRepairable(new ItemStack(Material.POTATO, 1)));
 | 
			
		||||
        assertFalse(ItemHelper.isRepairable(new ItemStack(Material.DIRT, 1)));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void getMaxDurabilityTest() {
 | 
			
		||||
        assertEquals(1561, ItemHelper.getMaxDurability(new ItemStack(Material.DIAMOND_PICKAXE, 1)));
 | 
			
		||||
        assertEquals(0, ItemHelper.getMaxDurability(new ItemStack(Material.POTATO, 1)));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void updateAndGetDamageTest() {
 | 
			
		||||
        for (Material material : Material.values()) {
 | 
			
		||||
            //A lot of items seem to have weird metadata which isn't mocked properly. Therefore, this test is limited.
 | 
			
		||||
            if (!material.name().endsWith("_PICKAXE")) {
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
            ItemStack itemStack = new ItemStack(material, 1);
 | 
			
		||||
            assertEquals(0, ItemHelper.getDamage(itemStack));
 | 
			
		||||
            ItemHelper.updateDamage(itemStack, 3);
 | 
			
		||||
            assertEquals(3, ItemHelper.getDamage(itemStack));
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void getDurabilityTest() {
 | 
			
		||||
        for (Material material : Material.values()) {
 | 
			
		||||
            ItemStack itemStack = new ItemStack(material, 1);
 | 
			
		||||
            assertEquals(ItemHelper.getMaxDurability(itemStack), ItemHelper.getDurability(itemStack));
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        for (Material material : Material.values()) {
 | 
			
		||||
            //A lot of items seem to have weird metadata which isn't mocked properly. Therefore, this test is limited.
 | 
			
		||||
            if (!material.name().endsWith("_PICKAXE")) {
 | 
			
		||||
                continue;
 | 
			
		||||
            }
 | 
			
		||||
            ItemStack itemStack = new ItemStack(material, 1);
 | 
			
		||||
            ItemHelper.updateDamage(itemStack, 100);
 | 
			
		||||
            assertEquals(ItemHelper.getMaxDurability(itemStack) - 100, ItemHelper.getDurability(itemStack));
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void getAllReforgeAbleMaterialsTest() {
 | 
			
		||||
        List<Material> materials = ItemHelper.getAllReforgeAbleMaterials();
 | 
			
		||||
        assertFalse(materials.isEmpty());
 | 
			
		||||
 | 
			
		||||
        for (Material material : materials) {
 | 
			
		||||
            assertTrue(ItemHelper.getMaxDurability(new ItemStack(material, 1)) > 0);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void isAnvilRequiresDamagedTest() {
 | 
			
		||||
        assertTrue(ItemHelper.isAnvil(Material.DAMAGED_ANVIL, true));
 | 
			
		||||
 
 | 
			
		||||
@@ -1,123 +0,0 @@
 | 
			
		||||
package net.knarcraft.blacksmith.util;
 | 
			
		||||
 | 
			
		||||
import be.seeseemelk.mockbukkit.MockBukkit;
 | 
			
		||||
import net.knarcraft.blacksmith.CustomServerMock;
 | 
			
		||||
import org.bukkit.Material;
 | 
			
		||||
import org.bukkit.Server;
 | 
			
		||||
import org.bukkit.inventory.ItemStack;
 | 
			
		||||
import org.bukkit.inventory.meta.Damageable;
 | 
			
		||||
import org.bukkit.inventory.meta.ItemMeta;
 | 
			
		||||
import org.junit.jupiter.api.AfterAll;
 | 
			
		||||
import org.junit.jupiter.api.BeforeAll;
 | 
			
		||||
import org.junit.jupiter.api.Test;
 | 
			
		||||
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.HashSet;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.Set;
 | 
			
		||||
 | 
			
		||||
import static org.junit.jupiter.api.Assertions.assertEquals;
 | 
			
		||||
import static org.junit.jupiter.api.Assertions.assertNotEquals;
 | 
			
		||||
import static org.junit.jupiter.api.Assertions.assertNull;
 | 
			
		||||
import static org.junit.jupiter.api.Assertions.fail;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * A test class to test salvaging
 | 
			
		||||
 */
 | 
			
		||||
public class SalvageHelperTest {
 | 
			
		||||
 | 
			
		||||
    private static Server server;
 | 
			
		||||
 | 
			
		||||
    @BeforeAll
 | 
			
		||||
    public static void setUp() {
 | 
			
		||||
        server = MockBukkit.mock(new CustomServerMock());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @AfterAll
 | 
			
		||||
    public static void tearDown() {
 | 
			
		||||
        MockBukkit.unmock();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void getNullForInvalidItemTest() {
 | 
			
		||||
        //Assert that a non-reforge-able item will return null
 | 
			
		||||
        assertNull(SalvageHelper.getSalvage(server, new ItemStack(Material.POTATO, 1), new ArrayList<>(), false));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void getNullForLessThanOneItemTest() {
 | 
			
		||||
        //Assert that 0 or 1 items will return null
 | 
			
		||||
        assertNull(SalvageHelper.getSalvage(server, new ItemStack(Material.IRON_AXE, 0), new ArrayList<>(), false));
 | 
			
		||||
        assertNull(SalvageHelper.getSalvage(server, new ItemStack(Material.IRON_SWORD, -1), new ArrayList<>(), false));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void getFullSalvageTest() {
 | 
			
		||||
        Set<ItemStack> expectedSalvage = new HashSet<>();
 | 
			
		||||
        expectedSalvage.add(new ItemStack(Material.DIAMOND, 3));
 | 
			
		||||
        expectedSalvage.add(new ItemStack(Material.STICK, 2));
 | 
			
		||||
        ItemStack itemToSalvage = new ItemStack(Material.DIAMOND_PICKAXE, 1);
 | 
			
		||||
        //Note: Conversion to sets makes sure the order doesn't matter
 | 
			
		||||
        List<ItemStack> salvage = SalvageHelper.getSalvage(server, itemToSalvage, new ArrayList<>(), false);
 | 
			
		||||
        if (salvage == null) {
 | 
			
		||||
            fail();
 | 
			
		||||
        } else {
 | 
			
		||||
            assertEquals(expectedSalvage, new HashSet<>(salvage));
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void getExtendedSalvageTest() {
 | 
			
		||||
        Set<ItemStack> expectedSalvage = new HashSet<>();
 | 
			
		||||
        expectedSalvage.add(new ItemStack(Material.GUNPOWDER, 5));
 | 
			
		||||
        expectedSalvage.add(new ItemStack(Material.SAND, 4));
 | 
			
		||||
        ItemStack itemToSalvage = new ItemStack(Material.TNT, 1);
 | 
			
		||||
        //Note: Conversion to sets makes sure the order doesn't matter
 | 
			
		||||
        List<ItemStack> salvage = SalvageHelper.getSalvage(server, itemToSalvage, new ArrayList<>(), true);
 | 
			
		||||
        if (salvage == null) {
 | 
			
		||||
            fail();
 | 
			
		||||
        } else {
 | 
			
		||||
            assertEquals(expectedSalvage, new HashSet<>(salvage));
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void getNonFullSalvageTest() {
 | 
			
		||||
        List<ItemStack> expectedSalvage = new ArrayList<>();
 | 
			
		||||
        expectedSalvage.add(new ItemStack(Material.DIAMOND, 3));
 | 
			
		||||
        expectedSalvage.add(new ItemStack(Material.STICK, 2));
 | 
			
		||||
        ItemStack itemToSalvage = new ItemStack(Material.DIAMOND_PICKAXE, 1);
 | 
			
		||||
        ItemMeta meta = itemToSalvage.getItemMeta();
 | 
			
		||||
        Damageable damageable = (Damageable) meta;
 | 
			
		||||
        if (damageable != null) {
 | 
			
		||||
            damageable.setDamage(100);
 | 
			
		||||
        }
 | 
			
		||||
        itemToSalvage.setItemMeta(meta);
 | 
			
		||||
        List<ItemStack> salvage = SalvageHelper.getSalvage(server, itemToSalvage, new ArrayList<>(), false);
 | 
			
		||||
        //Assert that some items are given
 | 
			
		||||
        assertNotEquals(salvage, new ArrayList<>());
 | 
			
		||||
        //Assert that a damaged item won't give full salvage
 | 
			
		||||
        assertNotEquals(expectedSalvage, salvage);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void ignoredSalvageTest() {
 | 
			
		||||
        List<ItemStack> expectedSalvage = new ArrayList<>();
 | 
			
		||||
        expectedSalvage.add(new ItemStack(Material.DIAMOND, 2));
 | 
			
		||||
        ItemStack itemToSalvage = new ItemStack(Material.DIAMOND_PICKAXE, 1);
 | 
			
		||||
        List<Material> ignoredSalvage = new ArrayList<>();
 | 
			
		||||
        ignoredSalvage.add(Material.STICK);
 | 
			
		||||
        ItemMeta meta = itemToSalvage.getItemMeta();
 | 
			
		||||
        Damageable damageable = (Damageable) meta;
 | 
			
		||||
        if (damageable != null) {
 | 
			
		||||
            damageable.setDamage(100);
 | 
			
		||||
        }
 | 
			
		||||
        itemToSalvage.setItemMeta(meta);
 | 
			
		||||
        List<ItemStack> salvage = SalvageHelper.getSalvage(server, itemToSalvage, ignoredSalvage, false);
 | 
			
		||||
        //Assert that some items are given
 | 
			
		||||
        assertNotEquals(salvage, new ArrayList<>());
 | 
			
		||||
        //Assert that a damaged diamond pickaxe with sticks ignored returns 2 diamonds a salvage
 | 
			
		||||
        assertEquals(expectedSalvage, salvage);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@@ -1,11 +1,7 @@
 | 
			
		||||
package net.knarcraft.blacksmith.util;
 | 
			
		||||
 | 
			
		||||
import be.seeseemelk.mockbukkit.enchantments.EnchantmentMock;
 | 
			
		||||
import net.knarcraft.blacksmith.config.SettingValueType;
 | 
			
		||||
import org.bukkit.Material;
 | 
			
		||||
import org.bukkit.NamespacedKey;
 | 
			
		||||
import org.bukkit.enchantments.Enchantment;
 | 
			
		||||
import org.junit.jupiter.api.BeforeAll;
 | 
			
		||||
import org.junit.jupiter.api.Test;
 | 
			
		||||
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
@@ -19,16 +15,6 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
 | 
			
		||||
 */
 | 
			
		||||
public class TypeValidatorHelperTest {
 | 
			
		||||
 | 
			
		||||
    private static Enchantment infinity;
 | 
			
		||||
 | 
			
		||||
    @BeforeAll
 | 
			
		||||
    public static void setUp() {
 | 
			
		||||
        //Note: When not testing against a real server, no default enchantments are loaded!
 | 
			
		||||
        infinity = new EnchantmentMock(NamespacedKey.minecraft("arrow_infinite"),
 | 
			
		||||
                "INFINITY");
 | 
			
		||||
        Enchantment.registerEnchantment(infinity);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void isValidPositiveDoubleValidTest() {
 | 
			
		||||
        SettingValueType type = SettingValueType.POSITIVE_DOUBLE;
 | 
			
		||||
@@ -152,18 +138,9 @@ public class TypeValidatorHelperTest {
 | 
			
		||||
        assertFalse(TypeValidationHelper.isValid(type, true, null));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void isValidEnchantmentValidTest() {
 | 
			
		||||
        SettingValueType type = SettingValueType.ENCHANTMENT;
 | 
			
		||||
        assertTrue(TypeValidationHelper.isValid(type, infinity, null));
 | 
			
		||||
        assertTrue(TypeValidationHelper.isValid(type, "arrow_infinite", null));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Test
 | 
			
		||||
    public void isValidEnchantmentInvalidTest() {
 | 
			
		||||
        SettingValueType type = SettingValueType.ENCHANTMENT;
 | 
			
		||||
        assertFalse(TypeValidationHelper.isValid(type, "potato", null));
 | 
			
		||||
        assertFalse(TypeValidationHelper.isValid(type, 7675, null));
 | 
			
		||||
        assertFalse(TypeValidationHelper.isValid(type, null, null));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user