From 01fc296fefdfc5c3c829f13e928f7ab920c4c6cb Mon Sep 17 00:00:00 2001 From: Wesley Wolfe Date: Fri, 18 Jan 2013 02:21:38 -0600 Subject: Improve the item meta deserialization code-style Fixed the ItemMetaFireworkTest Add set power unit tests for FireworkMeta --- .../bukkit/craftbukkit/inventory/ItemMetaTest.java | 36 ++++++++++++++++++++++ .../inventory/ItemStackFireworkTest.java | 4 +-- 2 files changed, 38 insertions(+), 2 deletions(-) (limited to 'src/test') diff --git a/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java b/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java index 876cefc0..b59b36a9 100644 --- a/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java +++ b/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java @@ -6,6 +6,7 @@ import static org.hamcrest.Matchers.*; import java.util.Arrays; import java.util.List; +import org.bukkit.Bukkit; import org.bukkit.Color; import org.bukkit.FireworkEffect; import org.bukkit.Material; @@ -30,6 +31,41 @@ import org.junit.Test; public class ItemMetaTest extends AbstractTestingBase { + static final int MAX_FIREWORK_POWER = 127; // Please update ItemStackFireworkTest if/when this gets changed. + + @Test(expected=IllegalArgumentException.class) + public void testPowerLimitExact() { + newFireworkMeta().setPower(MAX_FIREWORK_POWER + 1); + } + + @Test(expected=IllegalArgumentException.class) + public void testPowerLimitMax() { + newFireworkMeta().setPower(Integer.MAX_VALUE); + } + + @Test(expected=IllegalArgumentException.class) + public void testPowerLimitMin() { + newFireworkMeta().setPower(Integer.MIN_VALUE); + } + + @Test(expected=IllegalArgumentException.class) + public void testPowerLimitNegative() { + newFireworkMeta().setPower(-1); + } + + @Test + public void testPowers() { + for (int i = 0; i <= MAX_FIREWORK_POWER; i++) { + FireworkMeta firework = newFireworkMeta(); + firework.setPower(i); + assertThat(String.valueOf(i), firework.getPower(), is(i)); + } + } + + private static FireworkMeta newFireworkMeta() { + return ((FireworkMeta) Bukkit.getItemFactory().getItemMeta(Material.FIREWORK)); + } + @Test public void testCrazyEquality() { CraftItemStack craft = CraftItemStack.asCraftCopy(new ItemStack(1)); diff --git a/src/test/java/org/bukkit/craftbukkit/inventory/ItemStackFireworkTest.java b/src/test/java/org/bukkit/craftbukkit/inventory/ItemStackFireworkTest.java index afacf3b7..40b1d19d 100644 --- a/src/test/java/org/bukkit/craftbukkit/inventory/ItemStackFireworkTest.java +++ b/src/test/java/org/bukkit/craftbukkit/inventory/ItemStackFireworkTest.java @@ -129,7 +129,7 @@ public class ItemStackFireworkTest extends ItemStackTest { new Operator() { public ItemStack operate(ItemStack cleanStack) { FireworkMeta meta = (FireworkMeta) cleanStack.getItemMeta(); - meta.setPower(150); + meta.setPower(127); cleanStack.setItemMeta(meta); return cleanStack; } @@ -148,7 +148,7 @@ public class ItemStackFireworkTest extends ItemStackTest { new Operator() { public ItemStack operate(ItemStack cleanStack) { FireworkMeta meta = (FireworkMeta) cleanStack.getItemMeta(); - meta.setPower(200); + meta.setPower(42); cleanStack.setItemMeta(meta); return cleanStack; } -- cgit v1.2.3