private void RefreshTests() { UnitTestResult[] newResults; m_TestLines = k_TestEngine.GetTests(out newResults, out m_FilterSettings.AvailableCategories); foreach (var newResult in newResults) { var result = m_ResultList.Where(t => t.Test == newResult.Test && t.FullName == newResult.FullName).ToArray(); if (result.Count() != 1) { continue; } newResult.Update(result.Single(), true); } UnitTestRendererLine.SelectedLines = m_SelectedLines; UnitTestRendererLine.RunTest = RunTests; GroupLine.FoldMarkers = m_FoldMarkers; TestLine.GetUnitTestResult = FindTestResult; m_ResultList = new List <UnitTestResult>(newResults); m_FilterSettings.UpdateCounters(m_ResultList.Cast <ITestResult>()); Repaint(); }
public UnitTestRendererLine GetTests(out UnitTestResult[] results, out string[] categories) { if (m_TestSuite == null) { var assemblies = GetAssembliesWithTests().Select(a => a.Location).ToList(); TestSuite suite = PrepareTestSuite(assemblies); m_TestSuite = suite; } var resultList = new List <UnitTestResult>(); var categoryList = new HashSet <string>(); UnitTestRendererLine lines = null; if (m_TestSuite != null) { lines = ParseTestList(m_TestSuite, resultList, categoryList).Single(); } results = resultList.ToArray(); categories = categoryList.ToArray(); return(lines); }