public void Nested() { var x = new TestNested { A4 = new TestSingle { Value = 4 } }; RoundTrip(x); }
public void NestedObject() { TestNested target = new TestNested(); target.str = "somevalue"; target.testVec = new TestVector(); ReflectedObject root = new ReflectedObject(target); Assert.AreEqual(root["testVec"]["vec"]["x"].Value, 1f); Assert.AreEqual(root["testVec"]["vec"]["y"].Value, 2f); Assert.AreEqual(root["testVec"]["vec"]["z"].Value, 3f); Assert.AreEqual(root["str"].Value, "somevalue"); }
public void ObjectReassignment() { TestNested target = new TestNested(); target.str = "somevalue"; target.testVec = new TestVector(); ReflectedObject root = new ReflectedObject(target); TestVector testVec = new TestVector(); testVec.vec = new Vector3(-1f, -2f, -3f); root["testVec"].Value = testVec; Assert.AreEqual(root["testVec"]["vec"]["x"].Value, -1f); Assert.AreEqual(root["testVec"]["vec"]["y"].Value, -2f); Assert.AreEqual(root["testVec"]["vec"]["z"].Value, -3f); Assert.AreNotEqual(root["testVec"].Value, target.testVec); }
public void ApplyModifiedProperties_Object() { TestNested target = new TestNested(); target.str = "somevalue"; target.testVec = new TestVector(); ReflectedObject root = new ReflectedObject(target); TestVector testVec = new TestVector(); testVec.vec = new Vector3(-1f, -2f, -3f); root["testVec"].Value = testVec; Assert.AreNotEqual(root["testVec"].Value, target.testVec); root.ApplyModifiedProperties(); Assert.AreEqual(root["testVec"].Value, target.testVec); root["testVec"]["vec"]["x"].Value = 99f; Assert.AreNotEqual(99f, target.testVec.vec.x); root.ApplyModifiedProperties(); Assert.AreEqual(99f, target.testVec.vec.x); }