/// <summary> /// </summary> public static void ExploreAndRegisterAssemblies() { foreach (Assembly asm in AppDomain.CurrentDomain.GetAssemblies()) { ExploreAndRegisterTestSuites(asm); if (Assembly2TestSuiteLink.GetTestSuites(asm).Count != 0) { AssemblyExplorer.SetAssemblyStatus(asm, AssemblyStatus.UNKNOWN); } } }
public static void UpdateAssemblyTimeElapsed(Assembly asm) { double totaltime = 0; foreach (var ts in Assembly2TestSuiteLink.GetTestSuites(asm)) { UpdateTestSuiteTimeElapsed(ts); double testtime = GetTestSuiteTimeElapsed(ts); if (testtime != -1) { totaltime += testtime; } } SetAssemblyTimeElapsed(asm, totaltime); }
/// <summary> /// </summary> /// <param name="asm">Entry point</param> public static void ExploreAndRegisterTestSuites(Assembly asm) { foreach (Type testSuite in asm.GetTypes() .Where((Type type) => type.TryGetAttribute <TestSuite>() != null)) { try { Assembly2TestSuiteLink.RegisterTestSuite2Asm(testSuite, asm); IsValidTestSuite(testSuite); TestSuiteExplorer.SetTestSuiteStatus(testSuite, TestSuiteStatus.UNKNOWN); } catch (Exception e) { TestSuiteExplorer.SetTestSuiteError(testSuite, e.InnerException); TestSuiteExplorer.SetTestSuiteStatus(testSuite, TestSuiteStatus.SKIP); continue; } ExploreAndRegisterTests(testSuite); } }