public static void RunTestPlan(string resourceNamespaceName, string testPlanName) { var runner = runTestPlanPre(); TestTraceListener trace = new TestTraceListener(); Log.AddListener(trace); AutoResetEvent plugInSearchComplete = new AutoResetEvent(false); var searching = PluginManager.SearchAsync(); Assembly asm = Assembly.GetCallingAssembly(); Stream planRes = asm.GetManifestResourceStream(resourceNamespaceName + "." + testPlanName); using (TextReader reader = new StreamReader(planRes)) { File.WriteAllText(testPlanName, reader.ReadToEnd()); } TestPlan plan = TestPlan.Load(testPlanName); runner.plan = plan; runner.RunTestPlanCommon(); }
/// <summary> /// /// </summary> /// <param name="step"></param> protected void RunTestStep(ITestStep step) { TestTraceListener trace = new TestTraceListener(); PlanRunCollectorListener pl = new PlanRunCollectorListener(); Log.AddListener(trace); TestPlan plan = new TestPlan(); SetupPlan(plan, step); TestPlanRun run; using (Mutex mux = new Mutex(false, "TAPDatabaseAccessMutex")) { mux.WaitOne(); run = plan.Execute(ResultSettings.Current.Concat(new IResultListener[] { pl })); mux.ReleaseMutex(); } Log.RemoveListener(trace); CheckForInconclusive(trace.ErrorMessage); trace.AssertErrors(allowedLogErrors); Assert.AreEqual(Verdict.Pass, pl.StepRuns.First().Verdict, "Step ran to completion but verdict was 'fail'.\r\nLog:\r\n" + trace.allLog.ToString()); }