public virtual async Task <ITestsExecutionResult <MSTestTestcase> > ProcessTests(IList <MSTestTestcase> impactedTests, StructuralDelta <TestsModel <MSTestTestcase>, MSTestTestcase> testsDelta, TProgramDelta programDelta, CancellationToken cancellationToken) { msTestTestcases = impactedTests; var vsTestResults = await ExecuteTests(msTestTestcases.Select(x => x.VsTestTestCase), cancellationToken); var result = new MSTestExectionResult(); result.TestcasesResults.AddRange(testResultsAdapter.Parse(new VsTestResultsToConvert { MSTestTestcases = msTestTestcases, Results = vsTestResults })); if (settingsProvider.CleanupTestResultsDirectory) { var resultsPath = Path.GetFullPath(MSTestConstants.TestResultsFolder); DirectoryInfo resulsDirectory = new DirectoryInfo(resultsPath); foreach (DirectoryInfo dir in resulsDirectory.EnumerateDirectories("Deploy*")) { dir.Delete(true); } } return(result); }
public virtual async Task <ITestsExecutionResult <MSTestTestcase> > ProcessTests(IList <MSTestTestcase> impactedTests, StructuralDelta <TestsModel <MSTestTestcase>, MSTestTestcase> testsDelta, TProgramDelta programDelta, CancellationToken cancellationToken) { var executionResult = new MSTestExectionResult(); CurrentlyExecutedTests = impactedTests; CurrentlyExecutedTests = CurrentlyExecutedTests.Where(x => !x.Ignored).ToList(); if (CurrentlyExecutedTests.Any()) { var arguments = BuildVsTestsArguments(); await ExecuteVsTestsByArguments(arguments, cancellationToken); cancellationToken.ThrowIfCancellationRequested(); executionResult = ParseVsTestsTrxAnswer(); } return(executionResult); }