예제 #1
0
        public void Traverse2_Property_ToString()
        {
            var instance = new Traverse2Properties_AccessModifiers(Traverse2Properties.testStrings);

            var trv = Traverse2.Create(instance).Property(Traverse2Properties.propertyNames[0]);

            Assert.AreEqual(Traverse2Properties.testStrings[0], trv.ToString());
        }
예제 #2
0
        public void Traverse2_Property_GetValue()
        {
            var instance = new Traverse2Properties_AccessModifiers(Traverse2Properties.testStrings);
            var trv      = Traverse2.Create(instance);

            for (var i = 0; i < Traverse2Properties.testStrings.Length; i++)
            {
                var name = Traverse2Properties.propertyNames[i];
                var ptrv = trv.Property(name);
                Assert.NotNull(ptrv);
                Assert.AreEqual(Traverse2Properties.testStrings[i], ptrv.GetValue());
                Assert.AreEqual(Traverse2Properties.testStrings[i], ptrv.GetValue <string>());
            }
        }
예제 #3
0
        public void Traverse2_Property_SetValue()
        {
            var instance = new Traverse2Properties_AccessModifiers(Traverse2Properties.testStrings);
            var trv      = Traverse2.Create(instance);

            for (var i = 0; i < Traverse2Properties.testStrings.Length - 1; i++)
            {
                var newValue = "newvalue" + i;

                // before
                Assert.AreEqual(Traverse2Properties.testStrings[i], instance.GetTestProperty(i));

                var name = Traverse2Properties.propertyNames[i];
                var ptrv = trv.Property(name);
                Assert.NotNull(ptrv);
                _ = ptrv.SetValue(newValue);

                // after
                Assert.AreEqual(newValue, instance.GetTestProperty(i));
                Assert.AreEqual(newValue, ptrv.GetValue());
                Assert.AreEqual(newValue, ptrv.GetValue <string>());
            }
        }