public override String ToString() { return (_s1.ToString() + " " + _s2.ToString() + " " + _s3.ToString() + " " + _s4.ToString() + " " + _s5.ToString() + " " + _s6.ToString() + " " + _s8.ToString() + " " + _v.ToString() + " " + _f.ToString() + " " + _d.ToString() + " " + _o.GetType().ToString() + " " + _s.ToString() + " " + _e.ToString() + " " + _p1.ToString() + " " + _p2.ToString() + " " + _p3.ToString() + " " + _p4.ToString() + " " + _p5.ToString() + " " + _p6.ToString() + " " + _p7.ToString() + " " + _p8.ToString() + " " + "."); }
public MainApp(MainApp a, Struct1 s1, Struct2 s2, Struct3 s3, Struct4 s4, Struct5 s5, Struct8 s8, Valuesa v, float f, double d, Object o, String s, Enumacek e) { String values = a.ToString() + " " + s1.ToString() + " " + s2.ToString() + " " + s3.ToString() + " " + s4.ToString() + " " + s5.ToString() + " " + s8.ToString() + " " + v.ToString() + " " + f.ToString() + " " + d.ToString() + " " + o.ToString() + " " + s.ToString() + " " + e.ToString() + " " + "."; if (values != "MainApp 9 104 225 80 57 184 17 160 105 8 65 240" + " 153 88 113 64 201 168 161 144 249 248 209 224 -23767 606228808 2874968872843236" + "865 -9016159779942285264 360942425 4248 49 -5.193024E+18 -6.58392565490175E+18 M" + "ainApp 2212973731230676456 Hali .") { Console.WriteLine("MainApp(...): unexpected values: " + values); Fail(22); } }
public void RunTests() { String values; Struct1 s1 = new Struct1(); Struct2 s2 = new Struct2(); Struct3 s3 = new Struct3(); Struct4 s4 = new Struct4(); Struct5 s5 = new Struct5(); Struct8 s8 = new Struct8(); Valuesa v = new Valuesa(); float f; double d; Object o; String s; Enumacek e; s1.Randomize(); s2.Randomize(); s3.Randomize(); s4.Randomize(); s5.Randomize(); s8.Randomize(); v.Randomize(); f = (float)Randomizer(); d = (float)Randomizer(); o = this; s = Randomizer().ToString(); e = Enumacek.Hali; Object s1_ = (Object)s1; Object s2_ = (Object)s2; Object s3_ = (Object)s3; Object s4_ = (Object)s4; Object s5_ = (Object)s5; Object s8_ = (Object)s8; Object v_ = (Object)v; Object f_ = (Object)f; Object d_ = (Object)d; Object o_ = (Object)o; Object s_ = (Object)s; Object e_ = (Object)e; Object p1_ = (sbyte)Randomizer(); Object p2_ = (byte)Randomizer(); Object p3_ = (short)Randomizer(); Object p4_ = (ushort)Randomizer(); Object p5_ = (int)Randomizer(); Object p6_ = (uint)Randomizer(); Object p7_ = (long)Randomizer(); Object p8_ = (ulong)Randomizer(); // set all fields GetType().InvokeMember("_s1", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { s1_ }, null, null, null); GetType().InvokeMember("_s2", BindingFlags.Static | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { s2_ }, null, null, null); GetType().InvokeMember("_s3", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { s3_ }, null, null, null); GetType().InvokeMember("_s4", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { s4_ }, null, null, null); GetType().InvokeMember("_s5", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { s5_ }, null, null, null); GetType().InvokeMember("_s8", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { s8_ }, null, null, null); GetType().InvokeMember("_v", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { v_ }, null, null, null); GetType().InvokeMember("_f", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { f_ }, null, null, null); GetType().InvokeMember("_d", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { d_ }, null, null, null); GetType().InvokeMember("_o", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { o_ }, null, null, null); GetType().InvokeMember("_s", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { s_ }, null, null, null); GetType().InvokeMember("_e", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { e_ }, null, null, null); GetType().InvokeMember("_p1", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { p1_ }, null, null, null); GetType().InvokeMember("_p2", BindingFlags.Static | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { p2_ }, null, null, null); GetType().InvokeMember("_p3", BindingFlags.Static | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { p3_ }, null, null, null); GetType().InvokeMember("_p4", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { p4_ }, null, null, null); GetType().InvokeMember("_p5", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { p5_ }, null, null, null); GetType().InvokeMember("_p6", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { p6_ }, null, null, null); GetType().InvokeMember("_p7", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { p7_ }, null, null, null); GetType().InvokeMember("_p8", BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetField, null, this, new Object[] { p8_ }, null, null, null); // verify the values of all fields values = _s1.ToString() + " " + _s2.ToString() + " " + _s3.ToString() + " " + _s4.ToString() + " " + _s5.ToString() + " " + _s8.ToString() + " " + _v.ToString() + " " + _f.ToString() + " " + _d.ToString() + " " + _o.ToString() + " " + _s.ToString() + " " + _e.ToString() + " " + _p1.ToString() + " " + _p2.ToString() + " " + _p3.ToString() + " " + _p4.ToString() + " " + _p5.ToString() + " " + _p6.ToString() + " " + _p7.ToString() + " " + _p8.ToString() + " " + "."; if (values != "9 104 225 80 57 184 17 160 105 8 65 240 153 88 113 64" + " 201 168 161 144 249 248 209 224 -23767 606228808 2874968872843236865 -901615977" + "9942285264 360942425 4248 49 -5.193024E+18 -6.58392565490175E+18 MainApp 2212973" + "731230676456 Hali 97 208 -9799 49464 1739539345 3300757792 -6517938239175606295 " + "1703311890815005320 .") { Console.WriteLine("SetFields: unexpected values: " + values); Fail(101); } Console.WriteLine("Field setters succeeded"); // invoke the methods p1_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { p1_ }, null, null, null); p2_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { p2_ }, null, null, null); p3_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { p3_ }, null, null, null); p4_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { p4_ }, null, null, null); p5_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { p5_ }, null, null, null); p6_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { p6_ }, null, null, null); p7_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { p7_ }, null, null, null); p8_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { p8_ }, null, null, null); // verify the values of all fields values = p1_.ToString() + " " + p2_.ToString() + " " + p3_.ToString() + " " + p4_.ToString() + " " + p5_.ToString() + " " + p6_.ToString() + " " + p7_.ToString() + " " + p8_.ToString() + " " + "."; if (values != "-62 160 -19598 33392 -81588860" + "6 2306548288 5410867595358339026 3406623781630010640 .") { Console.WriteLine("Locals after primitive Invoke: unexpected values: " + values); Fail(102); } s1_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { s2_, s3_, p1_, p1_ }, null, null, null); s2_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { s4_, s3_, p3_, p3_ }, null, null, null); s3_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { s4_, s5_, p5_, p5_ }, null, null, null); s4_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { s8_, s5_, p7_, p7_ }, null, null, null); s5_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { s8_, v_, p2_, p2_ }, null, null, null); s8_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { f_, v_, p4_, p4_ }, null, null, null); v_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { f_, d_, p6_, p6_ }, null, null, null); f_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { s1_, d_, p8_, p8_ }, null, null, null); d_ = GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.InvokeMethod, null, this, new Object[] { s2_, s1_, s_, s_ }, null, null, null); // verify the values of all fields values = _s1.ToString() + " " + _s2.ToString() + " " + _s3.ToString() + " " + _s4.ToString() + " " + _s5.ToString() + " " + _s8.ToString() + " " + _v.ToString() + " " + _f.ToString() + " " + _d.ToString() + " " + _o.ToString() + " " + _s.ToString() + " " + _e.ToString() + " " + _p1.ToString() + " " + _p2.ToString() + " " + _p3.ToString() + " " + _p4.ToString() + " " + _p5.ToString() + " " + _p6.ToString() + " " + _p7.ToString() + " " + _p8.ToString() + " " + "."; if (values != "9 104 225 80 57 184 17 160 105 8 65 240 " + "153 88 113 64 201 168 161 144 249 248 209 224 -23767 606228808 28749688728432368" + "65 -9016159779942285264 360942425 4248 49 -5.193024E+18 -6.58392565490175E+18 Ma" + "inApp 2212973731230676456 Hali 97 208 -9799 49464 1739539345 3300757792 -6517938" + "239175606295 1703311890815005320 .") { Console.WriteLine("Fields after Invoke: unexpected values: " + values); Fail(103); } // verify the values of all locals values = s1_.ToString() + " " + s2_.ToString() + " " + s3_.ToString() + " " + s4_.ToString() + " " + s5_.ToString() + " " + s8_.ToString() + " " + v_.ToString() + " " + f_.ToString() + " " + d_.ToString() + " " + o_.ToString() + " " + s_.ToString() + " " + e_.ToString() + " " + p1_.ToString() + " " + p2_.ToString() + " " + p3_.ToString() + " " + p4_.ToString() + " " + p5_.ToString() + " " + p6_.ToString() + " " + p7_.ToString() + " " + p8_.ToString() + " " + "."; if (values != "226 161 153 217 24 177 105 8 65 240 248 " + "209 224 41 72 89 152 49 128 137 232 97 208 145 9760 68383465 -100628058569588952" + "8 -1283321389773510207 -27688336 8985 216 -7.769602E+18 -3.84749538525879E+18 Ma" + "inApp 2212973731230676456 Hali -102 153 -29822 14240 1493680594 2427897976 59408" + "3122152577906 15205575963204995536 .") { Console.WriteLine("Locals after Invoke: unexpected values: " + values); Fail(104); } Console.WriteLine("Method invokes succeeded"); // get all fields s1_ = GetType().InvokeMember("_s1", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); s2_ = GetType().InvokeMember("_s2", BindingFlags.Static | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); s3_ = GetType().InvokeMember("_s3", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); s4_ = GetType().InvokeMember("_s4", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); s5_ = GetType().InvokeMember("_s5", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); s8_ = GetType().InvokeMember("_s8", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); v_ = GetType().InvokeMember("_v", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); f_ = GetType().InvokeMember("_f", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); d_ = GetType().InvokeMember("_d", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); o_ = GetType().InvokeMember("_o", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); s_ = GetType().InvokeMember("_s", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); e_ = GetType().InvokeMember("_e", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); p1_ = GetType().InvokeMember("_p1", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); p2_ = GetType().InvokeMember("_p2", BindingFlags.Static | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); p3_ = GetType().InvokeMember("_p3", BindingFlags.Static | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); p4_ = GetType().InvokeMember("_p4", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); p5_ = GetType().InvokeMember("_p5", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); p6_ = GetType().InvokeMember("_p6", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); p7_ = GetType().InvokeMember("_p7", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); p8_ = GetType().InvokeMember("_p8", BindingFlags.Instance | BindingFlags.Public | BindingFlags.GetField, null, this, null, null, null, null); // verify the values of all locals values = s1_.ToString() + " " + s2_.ToString() + " " + s3_.ToString() + " " + s4_.ToString() + " " + s5_.ToString() + " " + s8_.ToString() + " " + v_.ToString() + " " + f_.ToString() + " " + d_.ToString() + " " + o_.ToString() + " " + s_.ToString() + " " + e_.ToString() + " " + p1_.ToString() + " " + p2_.ToString() + " " + p3_.ToString() + " " + p4_.ToString() + " " + p5_.ToString() + " " + p6_.ToString() + " " + p7_.ToString() + " " + p8_.ToString() + " " + "."; if (values != "9 104 225 80 57 184 17 160 105 8 65 240 153 88 113" + " 64 201 168 161 144 249 248 209 224 -23767 606228808 2874968872843236865 -901615" + "9779942285264 360942425 4248 49 -5.193024E+18 -6.58392565490175E+18 MainApp 2212" + "973731230676456 Hali 97 208 -9799 49464 1739539345 3300757792 -65179382391756062" + "95 1703311890815005320 .") { Console.WriteLine("GetFields: unexpected values: " + values); Fail(105); } Console.WriteLine("Field getters succeeded"); // invoke the method with complex signature GetType().InvokeMember("Foo", BindingFlags.Static | BindingFlags.Public | BindingFlags.InvokeMethod, null, null, new Object[] { this, "O", "S", (float)Randomizer(), (double)Randomizer(), (float)Randomizer(), (double)Randomizer(), (float)Randomizer(), (double)Randomizer(), (long)Randomizer(), (long)Randomizer(), (long)Randomizer(), (long)Randomizer(), (long)Randomizer(), (long)Randomizer(), (sbyte)Randomizer(), (byte)Randomizer(), (short)Randomizer(), (ushort)Randomizer(), (int)Randomizer(), (uint)Randomizer(), (long)Randomizer(), (ulong)Randomizer(), (float)Randomizer(), (double)Randomizer(), (float)Randomizer(), (double)Randomizer(), (float)Randomizer(), (double)Randomizer() }, null, null, null); Console.WriteLine("Complex invoke succeeded"); // invoke the constructor with complex signature GetType().InvokeMember("Foo", BindingFlags.Instance | BindingFlags.Public | BindingFlags.CreateInstance, null, null, new Object[] { this, s1_, s2_, s3_, s4_, s5_, s8_, v_, f_, d_, o_, s_, e_, }, null, null, null); Console.WriteLine("Constructor invoke succeeded"); }