public void GetCascadedPropertyValueTest2() { object DummyD = new DummyD(); Assert.AreEqual(DummyD.GetCascadedPropertyValue("Prop.Prop.Prop.Id"), 21); Assert.IsNull(DummyD.GetCascadedPropertyValue("Prop.Prop.Prop.Id.NonExistentProperty")); Assert.AreEqual(DummyD.GetCascadedPropertyValue("Prop.Prop.Prop").GetType(), typeof(DummyA)); Assert.AreEqual(DummyD.GetCascadedPropertyValue("Prop.Prop").GetType(), typeof(DummyB)); Assert.AreEqual(DummyD.GetCascadedPropertyValue("Prop").GetType(), typeof(DummyC)); Assert.AreEqual(DummyD.GetCascadedPropertyValue((string)null).GetType(), typeof(DummyD)); }
public void GetCascadedPropertyValueTest() { object DummyD = new DummyD(); Assert.AreEqual(DummyD.GetCascadedPropertyValue(new[] { "Prop", "Prop", "Prop", "Id" }), 21); Assert.IsNull(DummyD.GetCascadedPropertyValue(new[] { "Prop", "Prop", "Prop", "Id", "NonExistentProperty" })); Assert.AreEqual(DummyD.GetCascadedPropertyValue(new[] { "Prop", "Prop", "Prop" }).GetType(), typeof(DummyA)); Assert.AreEqual(DummyD.GetCascadedPropertyValue(new[] { "Prop", "Prop" }).GetType(), typeof(DummyB)); Assert.AreEqual(DummyD.GetCascadedPropertyValue(new[] { "Prop" }).GetType(), typeof(DummyC)); Assert.AreEqual(DummyD.GetCascadedPropertyValue(Array.Empty <string>()).GetType(), typeof(DummyD)); Assert.AreEqual(DummyD.GetCascadedPropertyValue((string[])null).GetType(), typeof(DummyD)); }