コード例 #1
0
 public void TestAccess()
 {
     Assert.AreEqual("Value", DynamicUtils.Access(new Hashtable()
     {
         { "MyKey", "Value" }
     }, "MyKey"));
     Assert.AreEqual(10, DynamicUtils.Access(new ClassTestAccess(), "SampleField"));
     Assert.AreEqual(20, DynamicUtils.Access(new ClassTestAccess(), "SampleProperty"));
     Assert.AreEqual(30, DynamicUtils.Access(new ClassTestAccess(), "SampleMethod"));
     Assert.AreEqual(null, DynamicUtils.Access(null, "Test"));
     Assert.AreEqual(null, DynamicUtils.Access(null, null));
     Assert.AreEqual(null, DynamicUtils.Access(10, "Test"));
     Assert.AreEqual(null, DynamicUtils.Access("Test", "Test"));
     Assert.AreEqual(2, DynamicUtils.Access(new int[] { 0, 1, 2, 3, 4 }, 2));
     Assert.AreEqual(2, DynamicUtils.Access(new List <int>(new int[] { 0, 1, 2, 3, 4 }), 2));
 }