static void RunInteractive(XmlTestType filter, bool verbose) { string fileName = String.Empty; XmlTestController controller = new XmlTestController(); TestRunner runner = new TestRunner(filter, verbose); PrintMenu(); fileName = Console.ReadLine().Trim(); while (fileName != "exit") { XmlTestCollection listTests = null; try { if (fileName == "default") { RunDefault(); } else { listTests = controller.Load(fileName); } } catch (Exception ex) { XmlTestExceptionManager.Publish(ex); } if (listTests != null && listTests.Count > 0) { listTests.TestEvent += new XmlTextEventHandler(runner.OnSimpleTest); try { Console.WriteLine("Running...{0}", listTests.Name); listTests.RunTests(); runner.PrintSimpleTestResult(listTests.Count); runner.SimpleTestReset(XmlTestType.None, verbose); } catch (Exception ex) { XmlTestExceptionManager.Publish(ex); } } PrintMenu(); fileName = Console.ReadLine().Trim(); } }
private bool RunTestFile(TestInfo info, XmlTestController controller) { if (info != null) { XmlTestCollection listTests = null; try { listTests = controller.Load(info.FileName); } catch (Exception ex) { XmlTestExceptionManager.Publish(ex); } SimpleTestReset(info.Filter, info.Verbose); if (listTests != null && listTests.Count > 0) { listTests.TestEvent += new XmlTextEventHandler(OnSimpleTest); listTests.TestEvent += new XmlTextEventHandler(OnTest); if (info.Exception) { XmlTestExceptionManager.ErrorEvent += new XmlTestErrorEventHandler(this.OnErrorEvent); } try { Console.WriteLine("Running...{0}", listTests.Name); var timer = new XmlTestTimer(); timer.Start(); listTests.RunTests(); timer.Stop(); PrintSimpleTestResult(listTests.Count); Console.WriteLine("Duration in milliseconds: {0}", timer.Duration * 1000); elapsedTime += (timer.Duration * 1000); m_nTotalCount += listTests.Count; listTests.TestEvent -= new XmlTextEventHandler(OnSimpleTest); listTests.TestEvent -= new XmlTextEventHandler(OnTest); if (info.Exception) { XmlTestExceptionManager.ErrorEvent -= new XmlTestErrorEventHandler(this.OnErrorEvent); } } catch (Exception ex) { XmlTestExceptionManager.Publish(ex); } } return(true); } return(false); }
static void RunInteractive(XmlTestType filter, bool verbose) { string fileName = string.Empty; var controller = new XmlTestController(); var runner = new TestRunner(filter, verbose); PrintMenu(); fileName = Console.ReadLine().Trim(); while (fileName != "exit") { XmlTestCollection listTests = null; try { switch (fileName) { case "default": RunDefault(); break; case "other": RunOther(); break; case "all": RunDefault(); RunOther(); break; default: if (Directory.Exists(fileName)) { string tmp = Path.GetTempFileName(); File.AppendAllText(tmp, string.Format( "<?xml version=\"1.0\" encoding=\"utf-8\" ?><project><test verbose=\"false\" exception=\"true\" interactive=\"false\" filter=\"none\"><dirs><dir>{0}</dir></dirs></test></project>", fileName)); listTests = controller.Load(tmp); } else { listTests = controller.Load(fileName); } break; } } catch (Exception ex) { XmlTestExceptionManager.Publish(ex); } if (listTests != null && listTests.Count > 0) { listTests.TestEvent += new XmlTextEventHandler(runner.OnSimpleTest); try { Console.WriteLine("Running...{0}", listTests.Name); listTests.RunTests(); runner.PrintSimpleTestResult(listTests.Count); runner.SimpleTestReset(XmlTestType.None, verbose); } catch (Exception ex) { XmlTestExceptionManager.Publish(ex); } } PrintMenu(); fileName = Console.ReadLine().Trim(); } }