public void TestBaseObjectParenting() { MockBaseObject parent = new MockBaseObject(new Vector2(20, 20), ""); MockBaseObject child = parent.AddChild(new MockBaseObject(new Vector2(30, 30), new Vector2(30, 30), "")); Assert.AreEqual(parent, child.Parent); Assert.AreEqual(new Vector2(50, 50), child.WorldPosition); parent.LocalPosition += new Vector2(20, 20); Assert.AreEqual(new Vector2(40, 40), parent.WorldPosition); Assert.AreEqual(new Vector2(70, 70), child.WorldPosition); child.LocalPosition += new Vector2(-10, 10); Assert.AreEqual(new Vector2(40, 40), parent.WorldPosition); Assert.AreEqual(new Vector2(60, 80), child.WorldPosition); parent.CheckAlive(); child.CheckAlive(); parent.Die(); parent.CheckDead(); child.CheckDead(); }