public void CallOverloadedPrivateInstanceMethod_by_Dynamic() { object obj = new TestTargetClass(); var actual1 = (string)obj.ToDynamic().MethodC("King"); actual1.Is("Method-C by string: King"); var actual2 = (int)obj.ToDynamic().MethodC(29); actual2.Is(29); }
public void GetAndSetPrivateInstanceField_by_Dynamic() { object obj = new TestTargetClass(); var actual1 = (DateTime)obj.ToDynamic()._FieldB; actual1.Is(DateTime.Parse("2014/02/13 14:27:56")); obj.ToDynamic()._FieldB = DateTime.Parse("2016/12/10 03:07:04"); var actual2 = (DateTime)obj.ToDynamic()._FieldB; actual2.Is(DateTime.Parse("2016/12/10 03:07:04")); }
public void CallOverloadedPrivateInstanceMethod_by_LateBinder() { object obj = new TestTargetClass(); obj.ToLateBind().Call("MethodC", "Adelie") .IsInstanceOf<string>() .Is("Method-C by string: Adelie"); obj.ToLateBind().Call("MethodC", 27) .IsInstanceOf<int>() .Is(27); }
public void CallOverloadedPrivateInstanceMethod_by_LateBinder_with_Cache() { object obj = new TestTargetClass(); var cache = new Dictionary<Type, IDictionary<string, MemberInfo>>(); obj.ToLateBind(cache).Call("MethodC", "Adelie") .IsInstanceOf<string>() .Is("Method-C by string: Adelie"); obj.ToLateBind(cache).Call("MethodC", 27) .IsInstanceOf<int>() .Is(27); obj.ToLateBind(cache).Call("MethodC", "Emperor") .IsInstanceOf<string>() .Is("Method-C by string: Emperor"); }
public void GetAndSetPrivateInstanceProperty_by_Dynamic() { object obj = new TestTargetClass(); var actual1 = (string)obj.ToDynamic().PropA; actual1.Is("Fizz"); obj.ToDynamic().PropA = "Dynamic Buzz"; var actual2 = (string)obj.ToDynamic().PropA; actual2.Is("Dynamic Buzz"); }
public void RetrieveReturnValueOfMethod() { object obj = new TestTargetClass(); var retval = obj.ToDynamic().CreateSubItem1() as DynamicBinder; retval.Object.ToString().Is("Good Job!"); }
public void GetAndSetPropOfClassObject_by_Dynamic() { object obj = new TestTargetClass(); string name1 = obj.ToDynamic().PropH.Name; int value1 = obj.ToDynamic().PropH.Value; name1.Is("Alice"); value1.Is(29); obj.ToDynamic().PropH.Name = "Bob"; obj.ToDynamic().PropH.Value = 37; string name2 = obj.ToDynamic().PropH.Name; int value2 = obj.ToDynamic().PropH.Value; name2.Is("Bob"); value2.Is(37); string name3 = obj.ToDynamic().PropG.Name; int value3 = obj.ToDynamic().PropG.Value; name3.Is("Sam"); value3.Is(33); obj.ToDynamic().PropG = new TestTargetClass.SubItemClass1("Baby", 0); string name4 = obj.ToDynamic().PropG.Name; int value4 = obj.ToDynamic().PropG.Value; name4.Is("Baby"); value4.Is(0); }
public void GetAndSetPrivateStaticField_by_Dynamic() { var obj = new TestTargetClass(); var binder = DynamicBinder.Create(obj.GetType()); var actual1 = (string)binder._FieldE; actual1.Is("Static Foo"); try { binder._FieldE = "Static Dynamic Bar"; var actual2 = (string)binder._FieldE; actual2.Is("Static Dynamic Bar"); } finally { binder._FieldE = "Static Foo"; } }
public void GetAndSetPrivateInstanceField_by_LateBinder() { object obj = new TestTargetClass(); obj.ToLateBind().Field["_FieldB"] .IsInstanceOf<DateTime>() .Is(DateTime.Parse("2014/02/13 14:27:56")); obj.ToLateBind().Field["_FieldB"] = DateTime.Parse("2015/11/09 02:06:03"); obj.ToLateBind().Field["_FieldB"] .Is(DateTime.Parse("2015/11/09 02:06:03")); }
public void GetAndSetPrivateStaticField_by_LateBinder() { object obj = new TestTargetClass(); var binder = LateBinder.Create(obj.GetType()); binder.Field["_FieldE"] .IsInstanceOf<string>() .Is("Static Foo"); try { binder.Field["_FieldE"] = "Static Bar"; binder.Field["_FieldE"] .Is("Static Bar"); } finally { binder.Field["_FieldE"] = "Static Foo"; } }
public void GetAndSetPrivateInstanceProperty_by_LateBinder() { object obj = new TestTargetClass(); obj.ToLateBind().Prop["PropA"] .IsInstanceOf<string>() .Is("Fizz"); obj.ToLateBind().Prop["PropA"] = "Buzz"; obj.ToLateBind().Prop["PropA"] .Is("Buzz"); }