Skip to content

Commit 26538f8

Browse files
committed
add tests for newly added coverage summary methods
1 parent d286378 commit 26538f8

File tree

1 file changed

+58
-13
lines changed

1 file changed

+58
-13
lines changed
Lines changed: 58 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using System;
2+
using System.Linq;
23

34
using Coverlet.Core;
45
using Moq;
@@ -8,29 +9,73 @@ namespace Coverlet.Core.Tests
89
{
910
public class CoverageSummaryTests
1011
{
11-
[Fact]
12-
public void TestCalculateSummary()
12+
private Modules _modules;
13+
14+
public CoverageSummaryTests()
1315
{
14-
CoverageResult result = new CoverageResult();
15-
result.Identifier = Guid.NewGuid().ToString();
1616
Lines lines = new Lines();
17-
lines.Add(1, new LineInfo { Hits = 1 });
17+
lines.Add(1, new LineInfo { Hits = 1, IsBranchPoint = true });
1818
lines.Add(2, new LineInfo { Hits = 0 });
19+
1920
Methods methods = new Methods();
20-
methods.Add("System.Void Coverlet.Core.Tests.CoverageSummaryTests.TestCalculateSummary()", lines);
21+
methods.Add("System.Void Coverlet.Core.Tests.CoverageSummaryTests::TestCalculateSummary()", lines);
22+
2123
Classes classes = new Classes();
2224
classes.Add("Coverlet.Core.Tests.CoverageSummaryTests", methods);
25+
2326
Documents documents = new Documents();
2427
documents.Add("doc.cs", classes);
25-
result.Modules = new Modules();
26-
result.Modules.Add("module", documents);
2728

28-
CoverageSummary summary = new CoverageSummary(result);
29-
CoverageSummaryResult summaryResult = summary.CalculateSummary();
29+
_modules = new Modules();
30+
_modules.Add("module", documents);
31+
}
32+
33+
[Fact]
34+
public void TestCalculateLineCoverage()
35+
{
36+
CoverageSummary summary = new CoverageSummary();
37+
38+
var module = _modules.First();
39+
var document = module.Value.First();
40+
var @class = document.Value.First();
41+
var method = @class.Value.First();
42+
43+
Assert.Equal(0.5, summary.CalculateLineCoverage(module));
44+
Assert.Equal(0.5, summary.CalculateLineCoverage(document));
45+
Assert.Equal(0.5, summary.CalculateLineCoverage(@class));
46+
Assert.Equal(0.5, summary.CalculateLineCoverage(method));
47+
}
48+
49+
[Fact]
50+
public void TestCalculateBranchCoverage()
51+
{
52+
CoverageSummary summary = new CoverageSummary();
53+
54+
var module = _modules.First();
55+
var document = module.Value.First();
56+
var @class = document.Value.First();
57+
var method = @class.Value.First();
58+
59+
Assert.Equal(1, summary.CalculateBranchCoverage(module));
60+
Assert.Equal(1, summary.CalculateBranchCoverage(document));
61+
Assert.Equal(1, summary.CalculateBranchCoverage(@class));
62+
Assert.Equal(1, summary.CalculateBranchCoverage(method));
63+
}
64+
65+
[Fact]
66+
public void TestCalculateMethodCoverage()
67+
{
68+
CoverageSummary summary = new CoverageSummary();
69+
70+
var module = _modules.First();
71+
var document = module.Value.First();
72+
var @class = document.Value.First();
73+
var method = @class.Value.First();
3074

31-
Assert.NotEmpty(summaryResult);
32-
Assert.True(summaryResult.ContainsKey("module"));
33-
Assert.Equal(50, summaryResult["module"]);
75+
Assert.Equal(1, summary.CalculateMethodCoverage(module));
76+
Assert.Equal(1, summary.CalculateMethodCoverage(document));
77+
Assert.Equal(1, summary.CalculateMethodCoverage(@class));
78+
Assert.Equal(1, summary.CalculateMethodCoverage(method));
3479
}
3580
}
3681
}

0 commit comments

Comments
 (0)