public void SearchFallbackNotShouldBeCalled_IfTrxFilesFound() { var mockSearchFallback = new MockSearchFallback(); var testDir = Directory.CreateDirectory(Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString())).FullName; var testResultsDir = Path.Combine(testDir, "TestResults"); Directory.CreateDirectory(testResultsDir); TestUtils.CreateTextFile(testResultsDir, "dummy.trx", TRX_PAYLOAD); var testSubject = new BuildVNextCoverageReportProcessor(new MockReportConverter(), new TestLogger(), mockSearchFallback); var settings = new MockBuildSettings { BuildDirectory = testDir }; IEnumerable <string> trxFilePaths = null; bool result = testSubject.TryGetTrxFilesAccessor(new Common.AnalysisConfig(), settings, out trxFilePaths); // 1) Search for TRX files -> results found result.Should().BeTrue(); testSubject.TrxFilesLocated.Should().BeTrue(); // 2) Now search for .coverage files IEnumerable <string> binaryFilePaths = null; result = testSubject.TryGetVsCoverageFilesAccessor(new Common.AnalysisConfig(), settings, out binaryFilePaths); result.Should().BeTrue(); binaryFilePaths.Should().BeEmpty(); mockSearchFallback.FallbackCalled.Should().BeFalse(); }
public void SearchFallbackShouldBeCalled_IfNoTrxFilesFound() { var mockSearchFallback = new MockSearchFallback(); mockSearchFallback.SetReturnedFiles("file1.txt", "file2.txt"); var testDir = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString()); Directory.CreateDirectory(testDir); var testSubject = new BuildVNextCoverageReportProcessor(new MockReportConverter(), new TestLogger(), mockSearchFallback); var settings = new MockBuildSettings { BuildDirectory = testDir }; IEnumerable <string> trxFilePaths = null; bool result = testSubject.TryGetTrxFilesAccessor(new Common.AnalysisConfig(), settings, out trxFilePaths); // Assert result.Should().BeTrue(); // expecting true i.e. carry on even if nothing found testSubject.TrxFilesLocated.Should().BeFalse(); IEnumerable <string> binaryFilePaths = null; result = testSubject.TryGetVsCoverageFilesAccessor(new Common.AnalysisConfig(), settings, out binaryFilePaths); result.Should().BeTrue(); binaryFilePaths.Should().BeEquivalentTo("file1.txt", "file2.txt"); mockSearchFallback.FallbackCalled.Should().BeTrue(); }