package com.earth2me.essentials; import java.io.IOException; import junit.framework.TestCase; import org.bukkit.Location; import org.bukkit.World; import org.bukkit.World.Environment; import org.bukkit.plugin.InvalidDescriptionException; public class UserTest extends TestCase { private final OfflinePlayer base1; private final Essentials ess; private final FakeServer server; public UserTest(String testName) { super(testName); ess = new Essentials(); server = new FakeServer(); server.createWorld("testWorld", Environment.NORMAL); try { ess.setupForTesting(server); } catch (InvalidDescriptionException ex) { fail("InvalidDescriptionException"); } catch (IOException ex) { fail("IOException"); } base1 = server.createPlayer("testPlayer1"); server.addPlayer(base1); } private void should(String what) { System.out.println(getName() + " should " + what); } public void testUpdate() { OfflinePlayer base1alt = server.createPlayer(base1.getName()); assertEquals(base1alt, ess.getUser(base1alt).getBase()); } public void testHome() { User user = ess.getUser(base1); Location loc = base1.getLocation(); user.setHome(); OfflinePlayer base2 = server.createPlayer(base1.getName()); User user2 = ess.getUser(base2); Location home = user2.getHome(loc); assertEquals(loc.getWorld().getName(), home.getWorld().getName()); assertEquals(loc.getX(), home.getX()); assertEquals(loc.getY(), home.getY()); assertEquals(loc.getZ(), home.getZ()); assertEquals(loc.getYaw(), home.getYaw()); assertEquals(loc.getPitch(), home.getPitch()); } public void testMoney() { should("properly set, take, give, and get money"); User user = ess.getUser(base1); double i; user.setMoney(i = 100.5); user.takeMoney(50); i -= 50; user.giveMoney(25); i += 25; assertEquals(user.getMoney(), i); } public void testGetGroup() { should("return the default group"); User user = ess.getUser(base1); assertEquals(user.getGroup(), "default"); } }