@Test public void testEffectCompleteness() throws Throwable { Map<Integer, ?> effectDurations = Util.getInternalState(net.minecraft.server.PotionBrewer.class, null, "effectDurations"); Map<PotionType, String> effects = new EnumMap(PotionType.class); for (int id : effectDurations.keySet()) { PotionEffectType type = PotionEffectType.getById(id); assertNotNull(String.valueOf(id), PotionEffectType.getById(id)); PotionType enumType = PotionType.getByEffect(type); assertNotNull(type.getName(), enumType); assertThat(enumType.name(), effects.put(enumType, enumType.name()), is(nullValue())); } assertThat(effects.entrySet(), hasSize(effectDurations.size())); assertThat(effectDurations.entrySet(), hasSize(PotionType.values().length - /* WATER */ 1)); }
@Test @SuppressWarnings("unchecked") public void verifyMapping() throws Throwable { List<Achievement> achievements = Lists.newArrayList(Achievement.values()); for (net.minecraft.server.Achievement statistic : (List<net.minecraft.server.Achievement>) AchievementList.e) { int id = statistic.e; String name = Util.getInternalState(Statistic.class, statistic, "a"); String message = String.format("org.bukkit.Achievement is missing id: %d named: '%s'", id - Achievement.STATISTIC_OFFSET, name); Achievement subject = Achievement.getById(id); assertNotNull(message, subject); assertTrue(name, achievements.remove(subject)); } assertThat("org.bukkit.Achievement has too many achievements", achievements, is(Collections.EMPTY_LIST)); }
@BeforeClass public static void getFireValues() { fireValues = Util.getInternalState(BlockFire.class, Blocks.FIRE, "a"); }
@BeforeClass public static void getFireValues() { fireValues = Util.getInternalState(BlockFire.class, Blocks.FIRE, "flameChances"); }
@BeforeClass public static void getFireValues() { fireValues = Util.getInternalState(BlockFire.class, Block.FIRE, "a"); }