public TestRunState RunNamespace(ITestListener testListener, Assembly assembly, string ns) { var listener = new TDNetRunListener(testListener); var runner = new AppDomainRunner(listener, RunOptions.Default); try { runner.StartRun(assembly); runner.RunNamespace(assembly, ns); } finally { runner.EndRun(assembly); } return(listener.TestRunState); }
public TestRunState RunMember(ITestListener testListener, Assembly assembly, MemberInfo member) { var listener = new TDNetRunListener(testListener); var runner = new AppDomainRunner(listener, RunOptions.Default); try { runner.StartRun(assembly); runner.RunMember(assembly, member); } finally { runner.EndRun(assembly); } return(listener.TestRunState); }
public override void ExecuteRecursive(TaskExecutionNode node) { var task = (RunAssemblyTask)node.RemoteTask; var contextAssembly = LoadContextAssembly(task); if (contextAssembly == null) { return; } var result = VersionCompatibilityChecker.Check(contextAssembly); if (!result.Success) { Server.TaskException(node.RemoteTask, new[] { new TaskException("no type", result.ErrorMessage, null) }); return; } var listener = new PerAssemblyRunListener(Server, task); var runner = new AppDomainRunner(listener, RunOptions.Default); node.Flatten(x => x.Children).Each(children => RegisterRemoteTaskNotifications(listener, children)); try { runner.StartRun(contextAssembly); foreach (var child in node.Children) { RunContext(runner, contextAssembly, child); } } finally { runner.EndRun(contextAssembly); } }