public void TestOffsetBaseItf() { var storage = new DynamicArrayStorage <OffsetCoordinatesBase>(); var ec = new EvenColumn(12, 3); storage.Add(ec); Assert.AreEqual(ec, storage.Get(12, 3)); }
public void TestVecCast() { var v1 = new CubeCoordinates(1, 0, -1); Vector2 vec = v1; AxialCoordinates axial = vec; Vector3 vec3 = axial; AxialCoordinates axial2 = vec3; CubeCoordinates cube = vec3; Vector2 vec2 = axial; EvenColumn ec = axial2; OddColumn oc = (OddColumn)ec; EvenRow er = (EvenRow)oc; OddRow or = (OddRow)er; vec2 = oc; Assert.AreEqual(v1, (CubeCoordinates)vec2); vec2 = or; Assert.AreEqual(v1, (CubeCoordinates)vec2); vec2 = ec; Assert.AreEqual(v1, (CubeCoordinates)vec2); vec2 = er; Assert.AreEqual(v1, (CubeCoordinates)vec2); oc = vec2; or = vec2; ec = vec2; er = vec2; vec3 = oc; Assert.AreEqual(v1, (CubeCoordinates)vec3); vec3 = or; Assert.AreEqual(v1, (CubeCoordinates)vec3); vec3 = ec; Assert.AreEqual(v1, (CubeCoordinates)vec3); vec3 = er; Assert.AreEqual(v1, (CubeCoordinates)vec3); oc = vec3; or = vec3; ec = vec3; er = vec3; Assert.AreEqual(v1, (CubeCoordinates)vec); Assert.AreEqual(v1, (CubeCoordinates)axial); Assert.AreEqual(v1, (CubeCoordinates)vec3); Assert.AreEqual(v1, (CubeCoordinates)cube); Assert.AreEqual(v1, (CubeCoordinates)vec2); }