Browse Source

CodeCoverage: Fix Module Coverage % display

CodeCoverageResults:
Filter-out compiler generated methods
CodeCoverageTreeNode:
GetNodeText() Display Rounded BranchCoverage %
GetPercentage(): Prevent divide by zero
CodeCoverageMethodsTreeNode:
Increased BranchCoverage % precision
pull/67/head
Dragan 12 years ago
parent
commit
32776b6f16
  1. 2
      src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageMethodElement.cs
  2. 2
      src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageMethodsTreeNode.cs
  3. 2
      src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageResults.cs
  4. 5
      src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageTreeNode.cs

2
src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageMethodElement.cs

@ -290,7 +290,7 @@ namespace ICSharpCode.CodeCoverage @@ -290,7 +290,7 @@ namespace ICSharpCode.CodeCoverage
decimal GetBranchCoverage () {
return this.BranchCoverageRatio != null ? decimal.Round( ((decimal)(this.BranchCoverageRatio.Item1*100))/(decimal)this.BranchCoverageRatio.Item2, 2) : 0m;
return this.BranchCoverageRatio == null ? 0m : ((decimal)(this.BranchCoverageRatio.Item1*100))/((decimal)this.BranchCoverageRatio.Item2);
}

2
src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageMethodsTreeNode.cs

@ -40,7 +40,7 @@ namespace ICSharpCode.CodeCoverage @@ -40,7 +40,7 @@ namespace ICSharpCode.CodeCoverage
Name = name;
VisitedCodeLength = visitedCodeLength;
UnvisitedCodeLength = unvisitedCodeLength;
VisitedBranchCoverage = branchCoverageCount == 0 ? 100 : decimal.Round(branchCoverage/branchCoverageCount,2);
VisitedBranchCoverage = branchCoverageCount == 0 ? 100 : branchCoverage/branchCoverageCount;
}
void AddDummyNodeIfHasNoMethods()

2
src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageResults.cs

@ -116,7 +116,9 @@ namespace ICSharpCode.CodeCoverage @@ -116,7 +116,9 @@ namespace ICSharpCode.CodeCoverage
CodeCoverageMethod AddMethod(CodeCoverageModule module, string className, XElement reader)
{
CodeCoverageMethod method = new CodeCoverageMethod(className, reader, this);
if (!method.Name.Contains("__")) {
module.Methods.Add(method);
}
return method;
}

5
src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageTreeNode.cs

@ -88,7 +88,7 @@ namespace ICSharpCode.CodeCoverage @@ -88,7 +88,7 @@ namespace ICSharpCode.CodeCoverage
{
if (TotalCodeLength > 0) {
if ( visitedCodeLength == TotalCodeLength && visitedBranchCoverage != 0 && visitedBranchCoverage != 100 ) {
return String.Format("{0} (100%/{1}%)", Name, visitedBranchCoverage);
return String.Format("{0} (100%/{1}%)", Name, decimal.Round (visitedBranchCoverage, 2));
}
int percentage = GetPercentage();
return String.Format("{0} ({1}%)", Name, percentage);
@ -98,8 +98,7 @@ namespace ICSharpCode.CodeCoverage @@ -98,8 +98,7 @@ namespace ICSharpCode.CodeCoverage
int GetPercentage()
{
int percentage = (visitedCodeLength * 100) / TotalCodeLength;
return percentage;
return TotalCodeLength == 0? 0 : (int)decimal.Round((((decimal)visitedCodeLength * 100) / (decimal)TotalCodeLength), 0);
}
void SetImageIndex()

Loading…
Cancel
Save