Browse Source

Reveal compiler generated methods

Some user methods (enumerators) are uncovered without compiler generated
methods
pull/725/head
ddur 10 years ago
parent
commit
97d65bd399
  1. 13
      src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageClassTreeNode.cs
  2. 3
      src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageMethodsTreeNode.cs
  3. 5
      src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageResults.cs

13
src/AddIns/Analysis/CodeCoverage/Project/Src/CodeCoverageClassTreeNode.cs

@ -66,14 +66,11 @@ namespace ICSharpCode.CodeCoverage
// Add methods. // Add methods.
CodeCoveragePropertyCollection properties = new CodeCoveragePropertyCollection(); CodeCoveragePropertyCollection properties = new CodeCoveragePropertyCollection();
foreach (CodeCoverageMethod method in Methods) { foreach (CodeCoverageMethod method in Methods) {
// method name that is generated by compiler, contains "__" (double underscore) if (method.IsProperty) {
if ( !method.Name.Contains("__") ) { properties.Add(method);
if (method.IsProperty) { } else {
properties.Add(method); CodeCoverageMethodTreeNode node = new CodeCoverageMethodTreeNode(method);
} else { node.AddTo(this);
CodeCoverageMethodTreeNode node = new CodeCoverageMethodTreeNode(method);
node.AddTo(this);
}
} }
} }

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

@ -41,9 +41,6 @@ namespace ICSharpCode.CodeCoverage
decimal branchCoverage = 0; decimal branchCoverage = 0;
int branchCoverageCount = 0; int branchCoverageCount = 0;
foreach (CodeCoverageMethod method in methods) { foreach (CodeCoverageMethod method in methods) {
if (method.Name.Contains("__")) {
continue;
}
visitedCodeLength += method.GetVisitedCodeLength(); visitedCodeLength += method.GetVisitedCodeLength();
unvisitedCodeLength += method.GetUnvisitedCodeLength(); unvisitedCodeLength += method.GetUnvisitedCodeLength();
if ( method.IsVisited ) { if ( method.IsVisited ) {

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

@ -78,7 +78,6 @@ namespace ICSharpCode.CodeCoverage
var classNames = var classNames =
assembly.Elements("Classes").Elements("Class").Where( assembly.Elements("Classes").Elements("Class").Where(
c => c =>
!c.Element("FullName").Value.Contains("__") &&
c.Attribute("skippedDueTo") == null).Select( c.Attribute("skippedDueTo") == null).Select(
c => c.Element("FullName").Value).Distinct().OrderBy(name => name); c => c.Element("FullName").Value).Distinct().OrderBy(name => name);
foreach (string className in classNames) { foreach (string className in classNames) {
@ -130,9 +129,7 @@ namespace ICSharpCode.CodeCoverage
CodeCoverageMethod AddMethod(CodeCoverageModule module, string className, XElement reader) CodeCoverageMethod AddMethod(CodeCoverageModule module, string className, XElement reader)
{ {
var method = new CodeCoverageMethod(className, reader, this); var method = new CodeCoverageMethod(className, reader, this);
if (!method.Name.Contains("__")) { module.Methods.Add(method);
module.Methods.Add(method);
}
return method; return method;
} }

Loading…
Cancel
Save