Files
Paper/paper-server/src/test/java/org/bukkit/GameRuleTest.java
CraftBukkit/Spigot d3a23f42c3 Update to Minecraft 1.21.2
By: md_5 <git@md-5.net>
2024-10-23 02:15:00 +11:00

60 lines
1.9 KiB
Java

package org.bukkit;
import static org.junit.jupiter.api.Assertions.*;
import java.util.Map;
import net.minecraft.world.flag.FeatureFlags;
import net.minecraft.world.level.GameRules;
import org.bukkit.craftbukkit.CraftWorld;
import org.bukkit.support.environment.Normal;
import org.junit.jupiter.api.Test;
@Normal
public class GameRuleTest {
@Test
public void testBukkitRules() {
GameRule<?>[] rules = GameRule.values();
for (GameRule<?> rule : rules) {
GameRule<?> registeredRule = GameRule.getByName(rule.getName());
assertNotNull(registeredRule, "Null GameRule");
assertEquals(rule, registeredRule, "Invalid GameRule equality");
}
}
@Test
public void testMinecraftRules() {
Map<String, GameRules.GameRuleKey<?>> minecraftRules = CraftWorld.getGameRulesNMS(new GameRules(FeatureFlags.REGISTRY.allFlags()));
for (Map.Entry<String, GameRules.GameRuleKey<?>> entry : minecraftRules.entrySet()) {
GameRule<?> bukkitRule = GameRule.getByName(entry.getKey());
assertNotNull(bukkitRule, "Missing " + entry.getKey());
assertEquals(bukkitRule.getName(), entry.getKey(), "Invalid GameRule Name");
}
}
@Test
public void nullGameRuleName() {
assertThrows(NullPointerException.class, () -> GameRule.getByName(null));
}
@Test
public void emptyGameRuleName() {
assertNull(GameRule.getByName(""));
}
@Test
public void incorrectGameRuleName() {
assertNull(GameRule.getByName("doAnnounceAdvancements"));
assertNull(GameRule.getByName("sendCommandBlockFeedback"));
}
@Test
public void invalidCasing() {
assertNull(GameRule.getByName("CommandBlockOutput"));
assertNull(GameRule.getByName("spAwnRadius"));
assertNull(GameRule.getByName("rand0mTickSpeEd"));
}
}