private void TestMethod(ModuleBuilder dynMod, MethodInfo method) { var constraint = method.GetParameters().Single().ParameterType; var tb = DefaultBuilder.DefineType(dynMod, constraint, Guid.NewGuid().ToString(), TypeAttributes.Public); var type = tb.CreateType(); if (constraint.IsGenericParameter) { method = method.MakeGenericMethod(type); } var rnd = new Random(); var o = new TargetClass1 { UInt8 = (byte)rnd.Next(), Int32 = rnd.Next() }; Assert.Equal(o.UInt8 + o.Int32, method.Invoke(this, new[] { Activator.CreateInstance(type, o) })); }
public TargetClass1(TargetClass1 o) { }