コード例 #1
0
        private void CanCreateAppDomain()
        {
            const string assemblyPath      = @"C:\Users\John\Documents\GitHub\ReSharperFixieRunner\FixieTestExample\FixieTestExample\bin\Debug\FixieTestExample.dll";
            var          assemblyLoadPath  = Path.GetDirectoryName(assemblyPath);
            var          localAssemblyPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);

            var appDomainSetup = new AppDomainSetup
            {
                ApplicationBase = localAssemblyPath,
                PrivateBinPath  = assemblyLoadPath,
                ShadowCopyFiles = "true",
            };

            var appDomain = AppDomain.CreateDomain("TestDomain", null, appDomainSetup);

            var thingy = new Thingy(assemblyPath);

            appDomain.DoCallBack(thingy.LoadInAppDomain);

            AppDomain.Unload(appDomain);

            foreach (var testClass in thingy.TestClasses)
            {
                Debug.WriteLine(testClass.FullName);
            }
            foreach (var testMethod in thingy.TestMethods)
            {
                Debug.WriteLine(testMethod.Name);
            }
        }
コード例 #2
0
        private void CanCreateAppDomain()
        {
            const string assemblyPath = @"C:\Users\John\Documents\GitHub\ReSharperFixieRunner\FixieTestExample\FixieTestExample\bin\Debug\FixieTestExample.dll";
            var assemblyLoadPath = Path.GetDirectoryName(assemblyPath);
            var localAssemblyPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);

            var appDomainSetup = new AppDomainSetup
            {
                ApplicationBase = localAssemblyPath,
                PrivateBinPath = assemblyLoadPath,
                ShadowCopyFiles = "true",
            };

            var appDomain = AppDomain.CreateDomain("TestDomain", null, appDomainSetup);

            var thingy = new Thingy(assemblyPath);
            appDomain.DoCallBack(thingy.LoadInAppDomain);

            AppDomain.Unload(appDomain);

            foreach (var testClass in thingy.TestClasses)
                Debug.WriteLine(testClass.FullName);
            foreach (var testMethod in thingy.TestMethods)
                Debug.WriteLine(testMethod.Name);
        }