//-------------------< start TestHarness Processing and loads the loader to ChildAppDomain >----------- public string startTestProcessing() { ArrayList testLog = new ArrayList(); if (Data.Count > 0) { int i = 0; AppDomain childAppDomain = appDomainModule.createAppDomain(Data[0].authorName, TestHarness.root); Console.WriteLine("\n=====================Using AppDomains to load test libraries====================="); LoaderProxy loaderProxy = appDomainModule.getLoaderProxyInstance(); try { string[] files = Directory.GetFiles(TestHarness.root, "*.dll"); loaderProxy.loadAllAssemblies(files); } catch (Exception e) { Console.Write("Exception directory path incorrect{0}", e.Message); } bool tdCount = loaderProxy.createInstaceforTesting(); if (tdCount) { testLog = loaderProxy.run(); try { tclientMessage = loaderProxy.loaderProxyMessage(); } catch (Exception ex) { Console.WriteLine(ex.Message); } } appDomainModule.unloadAppDomain(childAppDomain); Console.Write("\n Deleting directory that is created for test request directory Name" + TestHarness.root); try { Directory.Delete(Path.GetFullPath(TestHarness.root), true); } catch (System.IO.IOException e) { Console.WriteLine(e.Message); } foreach (TestRequestData tlog in Data) { tlog.logInfo = (String)testLog[i]; i = i + 1; } // <--------------------------Creates Test Log ---------------------------------> tlogmesssage = xmlParse.XmlCreation("TestLog", Data); } Data.Clear(); return(tlogmesssage); }
//----------------< Test-stub >-------------------------------------------------------------- #if (Test_AppDomainModule) static void Main(string[] args) { AppDomainmodule appDomainModule = new AppDomainModule(); AppDomain childAppDomain = appDomainModule.createAppDomain(authorName, privateBinPath); LoaderProxy loaderProxy = appDomainModule.getLoaderProxyInstance(); }