diff --git a/src/coverlet.console/Program.cs b/src/coverlet.console/Program.cs index 867bd131d..74d453780 100644 --- a/src/coverlet.console/Program.cs +++ b/src/coverlet.console/Program.cs @@ -85,6 +85,9 @@ static int Main(string[] args) var exceptionBuilder = new StringBuilder(); var coverageTable = new ConsoleTable("Module", "Line", "Branch", "Method"); var thresholdFailed = false; + var overallLineCoverage = summary.CalculateLineCoverage(result.Modules).Percent * 100; + var overallBranchCoverage = summary.CalculateBranchCoverage(result.Modules).Percent * 100; + var overallMethodCoverage = summary.CalculateMethodCoverage(result.Modules).Percent * 100; foreach (var _module in result.Modules) { @@ -118,6 +121,10 @@ static int Main(string[] args) logger.LogInformation(string.Empty); logger.LogInformation(coverageTable.ToStringAlternative()); + logger.LogInformation(string.Empty); + logger.LogInformation($"Total Line {overallLineCoverage}%"); + logger.LogInformation($"Total Branch {overallBranchCoverage}%"); + logger.LogInformation($"Total Method {overallMethodCoverage}%"); if (thresholdFailed) throw new Exception(exceptionBuilder.ToString().TrimEnd(Environment.NewLine.ToCharArray())); diff --git a/src/coverlet.msbuild.tasks/CoverageResultTask.cs b/src/coverlet.msbuild.tasks/CoverageResultTask.cs index 37a3fc60f..d3f9c0ce2 100644 --- a/src/coverlet.msbuild.tasks/CoverageResultTask.cs +++ b/src/coverlet.msbuild.tasks/CoverageResultTask.cs @@ -79,6 +79,9 @@ public override bool Execute() var summary = new CoverageSummary(); var exceptionBuilder = new StringBuilder(); var coverageTable = new ConsoleTable("Module", "Line", "Branch", "Method"); + var overallLineCoverage = summary.CalculateLineCoverage(result.Modules).Percent * 100; + var overallBranchCoverage = summary.CalculateBranchCoverage(result.Modules).Percent * 100; + var overallMethodCoverage = summary.CalculateMethodCoverage(result.Modules).Percent * 100; foreach (var module in result.Modules) { @@ -112,6 +115,10 @@ public override bool Execute() Console.WriteLine(); Console.WriteLine(coverageTable.ToStringAlternative()); + Console.WriteLine(); + Console.WriteLine($"Total Line {overallLineCoverage}%"); + Console.WriteLine($"Total Branch {overallBranchCoverage}%"); + Console.WriteLine($"Total Method {overallMethodCoverage}%"); if (thresholdFailed) throw new Exception(exceptionBuilder.ToString().TrimEnd(Environment.NewLine.ToCharArray()));