Skip to content

Commit 6252662

Browse files
committed
update tests
1 parent 21f0c5e commit 6252662

3 files changed

+122
-7
lines changed

FineCodeCoverageTests/MsCodeCoverage/MsCodeCoverageRunSettingsService_Collect_Tests.cs

+35-1
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,24 @@
1818

1919
namespace FineCodeCoverageTests.MsCodeCoverage
2020
{
21+
2122
internal class MsCodeCoverageRunSettingsService_Test_Execution_Not_Finished_Tests
2223
{
24+
[Test]
25+
public void Should_Set_To_Not_Collecting()
26+
{
27+
var autoMocker = new AutoMoqer();
28+
var msCodeCoverageRunSettingsService = autoMocker.Create<MsCodeCoverageRunSettingsService>();
29+
30+
msCodeCoverageRunSettingsService.collectionStatus = MsCodeCoverageCollectionStatus.Collecting;
31+
32+
var mockTestOperation = new Mock<ITestOperation>();
33+
mockTestOperation.Setup(testOperation => testOperation.GetCoverageProjectsAsync()).ReturnsAsync(new List<ICoverageProject>());
34+
msCodeCoverageRunSettingsService.TestExecutionNotFinishedAsync(mockTestOperation.Object);
35+
36+
Assert.That(msCodeCoverageRunSettingsService.collectionStatus, Is.EqualTo(MsCodeCoverageCollectionStatus.NotCollecting));
37+
}
38+
2339
[Test]
2440
public async Task Should_Clean_Up_RunSettings_Coverage_Projects()
2541
{
@@ -68,6 +84,23 @@ internal class MsCodeCoverageRunSettingsService_Collect_Tests
6884
{
6985
private AutoMoqer autoMocker;
7086
private ICoverageProject runSettingsCoverageProject;
87+
private MsCodeCoverageRunSettingsService msCodeCoverageRunSettingsService;
88+
89+
[Test]
90+
public async Task Should_Set_To_Not_Collecting()
91+
{
92+
var resultsUris = new List<Uri>()
93+
{
94+
new Uri(@"C:\SomePath\result1.cobertura.xml", UriKind.Absolute),
95+
new Uri(@"C:\SomePath\result2.cobertura.xml", UriKind.Absolute),
96+
new Uri(@"C:\SomePath\result3.xml", UriKind.Absolute),
97+
};
98+
99+
var expectedCoberturaFiles = new string[] { @"C:\SomePath\result1.cobertura.xml", @"C:\SomePath\result2.cobertura.xml" };
100+
await RunAndProcessReportAsync(resultsUris, expectedCoberturaFiles);
101+
102+
Assert.That(msCodeCoverageRunSettingsService.collectionStatus, Is.EqualTo(MsCodeCoverageCollectionStatus.NotCollecting));
103+
}
71104

72105
[Test]
73106
public async Task Should_FCCEngine_RunAndProcessReport_With_CoberturaResults()
@@ -119,7 +152,8 @@ private async Task RunAndProcessReportAsync(IEnumerable<Uri> resultsUris,string[
119152
It.IsAny<CancellationToken>()
120153
)).Returns("ZipDestination");
121154

122-
var msCodeCoverageRunSettingsService = autoMocker.Create<MsCodeCoverageRunSettingsService>();
155+
msCodeCoverageRunSettingsService = autoMocker.Create<MsCodeCoverageRunSettingsService>();
156+
msCodeCoverageRunSettingsService.collectionStatus = MsCodeCoverageCollectionStatus.Collecting;
123157
msCodeCoverageRunSettingsService.threadHelper = new TestThreadHelper();
124158

125159
var mockFccEngine = new Mock<IFCCEngine>();

FineCodeCoverageTests/MsCodeCoverage/RunSettingsTemplateReplacementsFactory_Tests.cs

+42
Original file line numberDiff line numberDiff line change
@@ -362,6 +362,48 @@ public void Should_Be_Empty_String_Replacement_When_Null()
362362
ReplacementsAssertions.AssertAllEmpty(replacements);
363363
}
364364

365+
[TestCase(true,true,"true")]
366+
[TestCase(false, true, "true")]
367+
[TestCase(true, false, "true")]
368+
[TestCase(false, false, "false")]
369+
public void Should_Be_Disabled_When_All_Projects_Are_Disabled(bool project1Enabled, bool project2Enabled, string expectedEnabled)
370+
{
371+
var testContainer1 = CreateTestContainer("Source1");
372+
var testContainer2 = CreateTestContainer("Source2");
373+
var testContainers = new List<ITestContainer>()
374+
{
375+
testContainer1,
376+
testContainer2
377+
};
378+
Dictionary<string, IUserRunSettingsProjectDetails> userRunSettingsProjectDetailsLookup = new Dictionary<string, IUserRunSettingsProjectDetails>
379+
{
380+
{
381+
"Source1",
382+
new TestUserRunSettingsProjectDetails
383+
{
384+
CoverageOutputFolder = "",
385+
Settings = new TestMsCodeCoverageOptions{ Enabled = project1Enabled, IncludeTestAssembly = true},
386+
ExcludedReferencedProjects = new List<string>(),
387+
IncludedReferencedProjects = new List<string>(),
388+
}
389+
},
390+
{
391+
"Source2",
392+
new TestUserRunSettingsProjectDetails
393+
{
394+
CoverageOutputFolder = "",
395+
Settings = new TestMsCodeCoverageOptions{ Enabled = project2Enabled, IncludeTestAssembly = true},
396+
ExcludedReferencedProjects = new List<string>(),
397+
IncludedReferencedProjects = new List<string>(),
398+
}
399+
}
400+
};
401+
402+
var runSettingsTemplateReplacements = runSettingsTemplateReplacementsFactory.Create(testContainers, userRunSettingsProjectDetailsLookup, "");
403+
404+
Assert.That(runSettingsTemplateReplacements.Enabled, Is.EqualTo(expectedEnabled));
405+
}
406+
365407
private string ModulePathElement(string value)
366408
{
367409
return $"<ModulePath>{value}</ModulePath>";

FineCodeCoverageTests/MsCodeCoverage/UserRunSettingsService_AddFCCSettings_Tests.cs

+45-6
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ public void Should_Create_Replacements()
112112
projectDetailsLookup,
113113
"fccMsTestAdapterPath"
114114
)
115-
).Returns(new RunSettingsTemplateReplacements());
115+
).Returns(new RunSettingsTemplateReplacements() { Enabled = "true"});
116116

117117
userRunSettingsService.AddFCCRunSettings(
118118
xPathNavigable,
@@ -144,7 +144,8 @@ public void Should_Add_Replaced_RunConfiguration_If_Not_Present()
144144
TestAddFCCSettings(runSettings, expectedRunSettings, new RunSettingsTemplateReplacements
145145
{
146146
ResultsDirectory = resultsDirectory,
147-
TestAdapter = testAdapter
147+
TestAdapter = testAdapter,
148+
Enabled = "true"
148149
});
149150
}
150151

@@ -167,7 +168,8 @@ public void Should_Add_Replaced_TestAdaptersPath_If_Not_Present()
167168
</RunSettings>";
168169
TestAddFCCSettings(runSettings, expectedRunSettings, new RunSettingsTemplateReplacements
169170
{
170-
TestAdapter = "MsTestAdapter"
171+
TestAdapter = "MsTestAdapter",
172+
Enabled = "true"
171173
});
172174

173175
}
@@ -192,7 +194,8 @@ public void Should_Replace_TestAdaptersPath_If_Present()
192194
</RunSettings>";
193195
TestAddFCCSettings(runSettings, expectedRunSettings, new RunSettingsTemplateReplacements
194196
{
195-
TestAdapter = "MsTestAdapter"
197+
TestAdapter = "MsTestAdapter",
198+
Enabled = "true"
196199
});
197200
}
198201

@@ -469,7 +472,7 @@ public void Should_Add_Missing_Configuration_Format_Cobertura_To_Existing_Ms_Dat
469472
</DataCollectionRunSettings>
470473
</RunSettings>
471474
";
472-
TestAddFCCSettings(runSettings, expectedRunSettings, new RunSettingsTemplateReplacements());
475+
TestAddFCCSettings(runSettings, expectedRunSettings, new RunSettingsTemplateReplacements() { Enabled = "true"});
473476
}
474477

475478
[Test]
@@ -505,7 +508,7 @@ public void Should_Change_Format_To_Cobertura_For_Existing_Ms_Data_Collector()
505508
</RunSettings>
506509
";
507510

508-
TestAddFCCSettings(runSettings, expectedRunSettings, new RunSettingsTemplateReplacements());
511+
TestAddFCCSettings(runSettings, expectedRunSettings, new RunSettingsTemplateReplacements() { Enabled = "true"});
509512
}
510513

511514
[Test]
@@ -559,6 +562,42 @@ public void Should_Add_Replaced_RunConfiguration_And_Add_Replaceable_DataCollect
559562
TestAddFCCSettings("<RunSettings/>", expectedRunSettings, new RunSettingsTemplateReplacements { Enabled = "true"});
560563
}
561564

565+
[Test]
566+
public void Should_Disable_Ms_Data_Collection_When_Not_Enabled()
567+
{
568+
var runSettings = $@"
569+
<RunSettings>
570+
{unchangedRunConfiguration}
571+
<DataCollectionRunSettings>
572+
<DataCollectors>
573+
<DataCollector uri='datacollector://Microsoft/CodeCoverage/2.0' enabled='true'>
574+
<Configuration>
575+
<Format>Xml</Format>
576+
</Configuration>
577+
</DataCollector>
578+
</DataCollectors>
579+
</DataCollectionRunSettings>
580+
</RunSettings>
581+
";
582+
583+
var expectedRunSettings = $@"
584+
<RunSettings>
585+
{unchangedRunConfiguration}
586+
<DataCollectionRunSettings>
587+
<DataCollectors>
588+
<DataCollector uri='datacollector://Microsoft/CodeCoverage/2.0' enabled='false'>
589+
<Configuration>
590+
<Format>Cobertura</Format>
591+
</Configuration>
592+
</DataCollector>
593+
</DataCollectors>
594+
</DataCollectionRunSettings>
595+
</RunSettings>
596+
";
597+
598+
TestAddFCCSettings(runSettings, expectedRunSettings, new RunSettingsTemplateReplacements() { Enabled = "false" });
599+
}
600+
562601
private void TestAddFCCSettings(string runSettings, string expectedFccRunSettings, IRunSettingsTemplateReplacements runSettingsTemplateReplacements)
563602
{
564603
var actualRunSettings = AddFCCSettings(runSettings, runSettingsTemplateReplacements);

0 commit comments

Comments
 (0)