Example #1
0
        public void TestMultiDomain()
        {
            Process process = null;

            try
            {
                if (IntPtr.Size == 4)
                {
                    process = Process.Start(TargetPath.Path32);
                }
                else
                {
                    process = Process.Start(TargetPath.Path64);
                }
                var app = new WindowsAppFriend(process);
                WindowControl.FromZTop(app).AppVar["StartNewDomain"]();
                var    newApp = app.AttachOtherDomains()[0];
                string name   = (string)newApp[typeof(AppDomain), "CurrentDomain"]()["FriendlyName"]().Core;
                Assert.AreEqual("new domain", name);
                Assert.AreEqual(app.ProcessId, newApp.ProcessId);
            }
            finally
            {
                process.Kill();
            }
        }
        private static void TestCore(string exePath)
        {
            Process process = Process.Start(exePath);

            using (var app = new WindowsAppFriend(process))
            {
                app.Type().System.Windows.Forms.Application.OpenForms[0].StartMultiDomain();
                var apps  = app.AttachOtherDomains();
                var names = apps.Select(e => (string)e.Type <AppDomain>().CurrentDomain.FriendlyName);
                Assert.AreEqual(2, names.Count());
                Assert.IsTrue(names.Any(e => e == "XXX"));
                Assert.IsTrue(names.Any(e => e == "YYY"));
            }
            process.Kill();
        }
 public void TestMultiDomain()
 {
     Process process = null;
     try
     {
         if (IntPtr.Size == 4)
         {
             process = Process.Start(TargetPath.Path32);
         }
         else
         {
             process = Process.Start(TargetPath.Path64);
         }
         var app = new WindowsAppFriend(process);
         WindowControl.FromZTop(app).AppVar["StartNewDomain"]();
         app = app.AttachOtherDomains()[0];
         string name = (string)app[typeof(AppDomain), "CurrentDomain"]()["FriendlyName"]().Core;
         Assert.AreEqual("new domain", name);
     }
     finally
     {
         process.Kill();
     }
 }