void UpdateTextEditor(CodeCoverageTreeNode node) { CodeCoverageClassTreeNode classNode = node as CodeCoverageClassTreeNode; CodeCoverageMethodTreeNode methodNode = node as CodeCoverageMethodTreeNode; CodeCoveragePropertyTreeNode propertyNode = node as CodeCoveragePropertyTreeNode; if (classNode != null && classNode.Nodes.Count > 0) { propertyNode = classNode.Nodes[0] as CodeCoveragePropertyTreeNode; methodNode = classNode.Nodes[0] as CodeCoverageMethodTreeNode; } if (propertyNode != null && propertyNode.Nodes.Count > 0) { methodNode = propertyNode.Nodes[0] as CodeCoverageMethodTreeNode; } if (methodNode != null && methodNode.Method.SequencePoints.Count > 0) { CodeCoverageSequencePoint sequencePoint = methodNode.Method.SequencePoints[0]; if (sequencePoint.HasDocument()) { if (classNode == null) { OpenFile(sequencePoint.Document, sequencePoint.Line, sequencePoint.Column); } else { OpenFile(sequencePoint.Document, 1, 1); } } } }
protected override void Initialize() { Nodes.Clear(); // Add methods. CodeCoveragePropertyCollection properties = new CodeCoveragePropertyCollection(); foreach (CodeCoverageMethod method in Methods) { // method name that is generated by compiler, contains "__" (double underscore) if (!method.Name.Contains("__")) { if (method.IsProperty) { properties.Add(method); } else { CodeCoverageMethodTreeNode node = new CodeCoverageMethodTreeNode(method); node.AddTo(this); } } } // Add properties.s foreach (CodeCoverageProperty property in properties) { CodeCoveragePropertyTreeNode node = new CodeCoveragePropertyTreeNode(property); node.AddTo(this); } // Sort nodes. SortChildNodes(); }
protected override void Initialize() { Nodes.Clear(); // Add methods. CodeCoveragePropertyCollection properties = new CodeCoveragePropertyCollection(); foreach (CodeCoverageMethod method in Methods) { if (method.IsProperty) { properties.Add(method); } else { CodeCoverageMethodTreeNode node = new CodeCoverageMethodTreeNode(method); node.AddTo(this); } } // Add properties.s foreach (CodeCoverageProperty property in properties) { CodeCoveragePropertyTreeNode node = new CodeCoveragePropertyTreeNode(property); node.AddTo(this); } // Sort nodes. SortChildNodes(); }
protected override void Initialize() { Nodes.Clear(); // Add methods. CodeCoveragePropertyCollection properties = new CodeCoveragePropertyCollection(); foreach (CodeCoverageMethod method in Methods) { // method name that is generated by compiler, contains "__" (double underscore) if ( !method.Name.Contains("__") ) { if (method.IsProperty) { properties.Add(method); } else { CodeCoverageMethodTreeNode node = new CodeCoverageMethodTreeNode(method); node.AddTo(this); } } } // Add properties.s foreach (CodeCoverageProperty property in properties) { CodeCoveragePropertyTreeNode node = new CodeCoveragePropertyTreeNode(property); node.AddTo(this); } // Sort nodes. SortChildNodes(); }
void AddClassTreeNode(CodeCoverageClassTreeNode node) { foreach (CodeCoverageTreeNode childNode in node.Nodes) { CodeCoverageMethodTreeNode method = childNode as CodeCoverageMethodTreeNode; CodeCoveragePropertyTreeNode property = childNode as CodeCoveragePropertyTreeNode; if (method != null) { AddSequencePoints(method.Method.SequencePoints); } else { AddPropertyTreeNode(property); } } }
public void SetUpFixture() { List<CodeCoverageModule> modules = new List<CodeCoverageModule>(); CodeCoverageModule fooModule = new CodeCoverageModule("Tests"); XElement setterMethod = CreateSetterElement("Tests.FooTest", "Count"); fooSetterMethod = new CodeCoverageMethod("Tests.FooTest", setterMethod); fooSetterMethod.SequencePoints.Add(new CodeCoverageSequencePoint("c:\\Projects\\Foo\\FooTest.cs", 1, 2, 2, 3, 4, 2)); fooSetterMethod.SequencePoints.Add(new CodeCoverageSequencePoint("c:\\Projects\\Foo\\FooTest.cs", 0, 3, 4, 4, 4, 1)); XElement getterMethod = CreateGetterElement("Tests.FooTest", "Count"); fooGetterMethod = new CodeCoverageMethod("Tests.FooTest", getterMethod); fooGetterMethod.SequencePoints.Add(new CodeCoverageSequencePoint("c:\\Projects\\Foo\\FooTest.cs", 1, 1, 0, 2, 1, 1)); fooModule.Methods.Add(fooGetterMethod); fooModule.Methods.Add(fooSetterMethod); modules.Add(fooModule); using (CodeCoverageTreeView treeView = new CodeCoverageTreeView()) { treeView.AddModules(modules); fooModuleNode = (CodeCoverageModuleTreeNode)treeView.Nodes[0]; } fooModuleNode.Expanding(); fooTestsNamespaceTreeNode = (CodeCoverageNamespaceTreeNode)fooModuleNode.Nodes[0]; fooTestsNamespaceTreeNode.Expanding(); fooTestTreeNode = (CodeCoverageClassTreeNode)fooTestsNamespaceTreeNode.Nodes[0]; fooTestTreeNode.Expanding(); if (fooTestTreeNode.Nodes.Count > 0) { countPropertyTreeNode = fooTestTreeNode.Nodes[0] as CodeCoveragePropertyTreeNode; } countPropertyTreeNode.Expanding(); if (countPropertyTreeNode != null && countPropertyTreeNode.Nodes.Count > 1) { fooGetterTreeNode = (CodeCoverageMethodTreeNode)countPropertyTreeNode.Nodes[0]; fooSetterTreeNode = (CodeCoverageMethodTreeNode)countPropertyTreeNode.Nodes[1]; } }
void UpdateListView(CodeCoverageTreeNode node) { listView.BeginUpdate(); try { listView.Items.Clear(); CodeCoverageClassTreeNode classNode = node as CodeCoverageClassTreeNode; CodeCoverageMethodTreeNode methodNode = node as CodeCoverageMethodTreeNode; CodeCoveragePropertyTreeNode propertyNode = node as CodeCoveragePropertyTreeNode; if (classNode != null) { AddClassTreeNode(classNode); } else if (methodNode != null) { AddSequencePoints(methodNode.Method.SequencePoints); } else if (propertyNode != null) { AddPropertyTreeNode(propertyNode); } } finally { listView.EndUpdate(); } }
void AddPropertyTreeNode(CodeCoveragePropertyTreeNode node) { AddMethodIfNotNull(node.Property.Getter); AddMethodIfNotNull(node.Property.Setter); }