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 OnAfterSelect(TreeViewEventArgs e) { CodeCoverageTreeNode node = e.Node as CodeCoverageTreeNode; if (node != null) { node.PerformInitialization(); } base.OnAfterSelect(e); }
void DisplaySelectedItem(CodeCoverageTreeNode node) { if (node == null) { return; } if (listView != null) { UpdateListView(node); } if (textEditor != null) { UpdateTextEditor(node); } }
void UpdateTextEditor(CodeCoverageTreeNode node) { CodeCoverageClassTreeNode classNode = node as CodeCoverageClassTreeNode; CodeCoverageMethodTreeNode methodNode = node as CodeCoverageMethodTreeNode; if (classNode != null && classNode.Nodes.Count > 0) { methodNode = (CodeCoverageMethodTreeNode)classNode.Nodes[0]; } if (methodNode != null && methodNode.Method.SequencePoints.Count > 0) { CodeCoverageSequencePoint sequencePoint = methodNode.Method.SequencePoints[0]; if (classNode == null) { OpenFile(sequencePoint.Document, sequencePoint.Line - 1, sequencePoint.Column - 1); } else { OpenFile(sequencePoint.Document, 1, 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(); } }
public void SetUpFixture() { treeView = new CodeCoverageTreeView(); nodeSorter = treeView.NodeSorter; List<CodeCoverageModule> modules = new List<CodeCoverageModule>(); // Create a module called Z. CodeCoverageModule zModule = new CodeCoverageModule("Z"); modules.Add(zModule); // Create a module called CodeCoverage. CodeCoverageModule codeCoverageModule = new CodeCoverageModule("CodeCoverage"); modules.Add(codeCoverageModule); // Add a method that lives in a class without any namespace. CodeCoverageMethod testMethod = new CodeCoverageMethod("Test", "TestFixture"); codeCoverageModule.Methods.Add(testMethod); // Add a method which produces a namespace that alphabetically // occurs after the class already added. CodeCoverageMethod removeCodeMarkersMethod = new CodeCoverageMethod("RemoveCodeMarkersMethod", "Beta.TestFixture"); codeCoverageModule.Methods.Add(removeCodeMarkersMethod); // Add a method that lives in a namespace that // occurs before the removeCodeMarkersMethod. We want to // make sure that this namespace node gets added before the Beta one. CodeCoverageMethod zebraMethod = new CodeCoverageMethod("Zebra", "Aardvark.TestFixture"); codeCoverageModule.Methods.Add(zebraMethod); // Add a second class in the beta namespace so we check the // sorting of classes. CodeCoverageMethod addCodeMarkersMethod = new CodeCoverageMethod("AddCodeMarkersMethod", "Beta.AnotherTestFixture"); codeCoverageModule.Methods.Add(addCodeMarkersMethod); // Add a method which produces occurs before the remove code markers method. CodeCoverageMethod addNodeMethod = new CodeCoverageMethod("AddNode", "Beta.TestFixture"); codeCoverageModule.Methods.Add(addNodeMethod); // Add two get and set properties. CodeCoverageMethod method = new CodeCoverageMethod("get_Zebra", "Beta.AnotherTestFixture"); codeCoverageModule.Methods.Add(method); method = new CodeCoverageMethod("set_Zebra", "Beta.AnotherTestFixture"); codeCoverageModule.Methods.Add(method); method = new CodeCoverageMethod("set_Aardvark", "Beta.AnotherTestFixture"); codeCoverageModule.Methods.Add(method); method = new CodeCoverageMethod("get_Aardvark", "Beta.AnotherTestFixture"); codeCoverageModule.Methods.Add(method); // Add a method which should appear between the two properties. method = new CodeCoverageMethod("Chimp", "Beta.AnotherTestFixture"); codeCoverageModule.Methods.Add(method); // Add the modules to the tree. treeView.AddModules(modules); codeCoverageModuleTreeNode = (CodeCoverageModuleTreeNode)treeView.Nodes[0]; zModuleTreeNode = (CodeCoverageModuleTreeNode)treeView.Nodes[1]; // Initialise the code coverage module tree node. codeCoverageModuleTreeNode.PerformInitialization(); aardvarkNamespaceTreeNode = (CodeCoverageTreeNode)codeCoverageModuleTreeNode.Nodes[0]; betaNamespaceTreeNode = (CodeCoverageTreeNode)codeCoverageModuleTreeNode.Nodes[1]; testFixtureClassTreeNode = (CodeCoverageTreeNode)codeCoverageModuleTreeNode.Nodes[2]; // Initialise the beta namespace tree node. betaNamespaceTreeNode.PerformInitialization(); anotherTestFixtureTreeNode = (CodeCoverageTreeNode)betaNamespaceTreeNode.Nodes[0]; testFixtureTreeNode = (CodeCoverageTreeNode)betaNamespaceTreeNode.Nodes[1]; // Initialise the test fixture class tree node testFixtureTreeNode.PerformInitialization(); addNodeTestTreeNode = (CodeCoverageTreeNode)testFixtureTreeNode.Nodes[0]; removeMarkersTestTreeNode = (CodeCoverageTreeNode)testFixtureTreeNode.Nodes[1]; // Initialise the anotherTestFixtureTreeNode anotherTestFixtureTreeNode.PerformInitialization(); }
public void CodeCoverageTreeNodeCompareString() { CodeCoverageTreeNode node = new CodeCoverageTreeNode("A", CodeCoverageImageListIndex.Class, 1, 2); Assert.AreEqual("A", node.CompareString); }