Esempio n. 1
0
        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();
        }
Esempio n. 2
0
        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);
        }