81 lines
2.8 KiB
C#
81 lines
2.8 KiB
C#
using System;
|
|
using System.Linq;
|
|
|
|
using Coverlet.Core;
|
|
using Moq;
|
|
using Xunit;
|
|
|
|
namespace Coverlet.Core.Tests
|
|
{
|
|
public class CoverageSummaryTests
|
|
{
|
|
private Modules _modules;
|
|
|
|
public CoverageSummaryTests()
|
|
{
|
|
Lines lines = new Lines();
|
|
lines.Add(1, new LineInfo { Hits = 1, IsBranchPoint = true });
|
|
lines.Add(2, new LineInfo { Hits = 0 });
|
|
|
|
Methods methods = new Methods();
|
|
methods.Add("System.Void Coverlet.Core.Tests.CoverageSummaryTests::TestCalculateSummary()", lines);
|
|
|
|
Classes classes = new Classes();
|
|
classes.Add("Coverlet.Core.Tests.CoverageSummaryTests", methods);
|
|
|
|
Documents documents = new Documents();
|
|
documents.Add("doc.cs", classes);
|
|
|
|
_modules = new Modules();
|
|
_modules.Add("module", documents);
|
|
}
|
|
|
|
[Fact]
|
|
public void TestCalculateLineCoverage()
|
|
{
|
|
CoverageSummary summary = new CoverageSummary();
|
|
|
|
var module = _modules.First();
|
|
var document = module.Value.First();
|
|
var @class = document.Value.First();
|
|
var method = @class.Value.First();
|
|
|
|
Assert.Equal(0.5, summary.CalculateLineCoverage(module.Value));
|
|
Assert.Equal(0.5, summary.CalculateLineCoverage(document.Value));
|
|
Assert.Equal(0.5, summary.CalculateLineCoverage(@class.Value));
|
|
Assert.Equal(0.5, summary.CalculateLineCoverage(method.Value));
|
|
}
|
|
|
|
[Fact]
|
|
public void TestCalculateBranchCoverage()
|
|
{
|
|
CoverageSummary summary = new CoverageSummary();
|
|
|
|
var module = _modules.First();
|
|
var document = module.Value.First();
|
|
var @class = document.Value.First();
|
|
var method = @class.Value.First();
|
|
|
|
Assert.Equal(1, summary.CalculateBranchCoverage(module.Value));
|
|
Assert.Equal(1, summary.CalculateBranchCoverage(document.Value));
|
|
Assert.Equal(1, summary.CalculateBranchCoverage(@class.Value));
|
|
Assert.Equal(1, summary.CalculateBranchCoverage(method.Value));
|
|
}
|
|
|
|
[Fact]
|
|
public void TestCalculateMethodCoverage()
|
|
{
|
|
CoverageSummary summary = new CoverageSummary();
|
|
|
|
var module = _modules.First();
|
|
var document = module.Value.First();
|
|
var @class = document.Value.First();
|
|
var method = @class.Value.First();
|
|
|
|
Assert.Equal(1, summary.CalculateMethodCoverage(module.Value));
|
|
Assert.Equal(1, summary.CalculateMethodCoverage(document.Value));
|
|
Assert.Equal(1, summary.CalculateMethodCoverage(@class.Value));
|
|
Assert.Equal(1, summary.CalculateMethodCoverage(method.Value));
|
|
}
|
|
}
|
|
} |