package com.supaham.commons.bukkit.utils; import static com.supaham.commons.bukkit.utils.VectorUtils.deserializeRelative; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; import org.bukkit.util.Vector; import org.junit.Test; /** * Created by Ali on 22/08/2015. */ public class VectorUtilsTest { @Test public void testDeserialize() throws Exception { assertEquals(new Vector(1.22, 2, 3), VectorUtils.deserialize("1.22, 2, 3")); assertEquals("1,2,3", VectorUtils.serialize(new Vector(1, 2, 3))); } @Test public void testRelative() throws Exception { assertEquals(new RelativeVector(1, 2, 3, false, false, false), deserializeRelative("1,2,3")); assertEquals(new RelativeVector(1, 2, 3, true, false, false), deserializeRelative("~1,2,3")); assertEquals(new RelativeVector(1, 2, 3, true, true, false), deserializeRelative("~1,~2,3")); assertEquals(new RelativeVector(1, 2, 3, true, true, true), deserializeRelative("~1,~2,~3")); assertEquals(new RelativeVector(1, 2, 3, true, false, true), deserializeRelative("~1,2,~3")); assertEquals(new ImmutableVector(1, 2, 3), new RelativeVector(1, 2, 3, false, false, false)); assertNotEquals(new RelativeVector(1, 2, 4, false, false, true), // z is 4 new RelativeVector(1, 2, 3, false, false, true)); // z is 3 assertEquals(new ImmutableVector(2, 3, 4), new RelativeVector(1, 1, 1, true, true, true) .with(new ImmutableVector(1, 2, 3))); // original vector is 1,2,3; add 1,1,1, should equal 2,3,4. assertEquals(new ImmutableVector(0, 1, 2), new RelativeVector(-1, -1, -1, true, true, true) .with(new ImmutableVector(1, 2, 3))); // original vector is 1,2,3; subtract 1,1,1, should equal 0,1,2. } }