Example #1
0
        /// <summary>
        /// Создает тестовое дерево, которое можно отобразить на TreeView.
        /// </summary>
        /// <returns>Корень тестового дерева.</returns>
        public static NestedTreeNode CreateTestTree()
        {
            NestedTreeNode node  = new NestedTreeNode("Root");
            NestedTreeNode node1 = new NestedTreeNode("1");

            NestedTreeNode node211 = new NestedTreeNode("2.1.1");
            NestedTreeNode node212 = new NestedTreeNode("2.1.2");

            NestedTreeNode node21 = new NestedTreeNode("2.1");

            node21.AddChild(node211);
            node21.AddChild(node212);

            NestedTreeNode node22 = new NestedTreeNode("2.2");

            NestedTreeNode node2 = new NestedTreeNode("2");

            node2.AddChild(node21);
            node2.AddChild(node22);

            NestedTreeNode node31 = new NestedTreeNode("3.1");
            NestedTreeNode node32 = new NestedTreeNode("3.2");
            NestedTreeNode node33 = new NestedTreeNode("3.3");

            NestedTreeNode node3 = new NestedTreeNode("3");

            node3.AddChild(node31);
            node3.AddChild(node32);
            node3.AddChild(node33);

            NestedTreeNode node4 = new NestedTreeNode("4");

            node.AddChild(node1);
            node.AddChild(node2);
            node.AddChild(node3);
            node.AddChild(node4);

            return(node);
        }
Example #2
0
        public void CanCloneChildNodes()
        {
            //Arrange
            node = new NestedTreeNode("Root", 55, true);
            NestedTreeNode child1  = new NestedTreeNode("Child 1", 551, false);
            NestedTreeNode child2  = new NestedTreeNode("Child 2", 552, false);
            NestedTreeNode child21 = new NestedTreeNode("Child 21", 5551, true);

            node.AddChild(child1);
            node.AddChild(child2);
            child2.AddChild(child21);

            //Act
            object actualCopy = node.Clone();

            //Assert
            Assert.AreEqual(node.Nodes.Count, ((NestedTreeNode)actualCopy).Nodes.Count);

            Assert.ReferenceEquals(child1, ((NestedTreeNode)actualCopy).GetChild(0));
            Assert.AreNotSame(child1, ((NestedTreeNode)actualCopy).GetChild(0));
            Assert.AreEqual("Child 1", ((NestedTreeNode)actualCopy).GetChild(0).Text);
            Assert.AreEqual(551, ((NestedTreeNode)actualCopy).GetChild(0).Value);
            Assert.IsFalse(((NestedTreeNode)actualCopy).GetChild(0).Checked);

            Assert.ReferenceEquals(child2, ((NestedTreeNode)actualCopy).GetChild(1));
            Assert.AreNotSame(child2, ((NestedTreeNode)actualCopy).GetChild(1));
            Assert.AreEqual("Child 2", ((NestedTreeNode)actualCopy).GetChild(1).Text);
            Assert.AreEqual(552, ((NestedTreeNode)actualCopy).GetChild(1).Value);
            Assert.IsFalse(((NestedTreeNode)actualCopy).GetChild(1).Checked);

            Assert.ReferenceEquals(child21, ((NestedTreeNode)actualCopy).GetChild(1).GetChild(0));
            Assert.AreNotSame(child21, ((NestedTreeNode)actualCopy).GetChild(1).GetChild(0));
            Assert.AreEqual("Child 21", ((NestedTreeNode)actualCopy).GetChild(1).GetChild(0).Text);
            Assert.AreEqual(5551, ((NestedTreeNode)actualCopy).GetChild(1).GetChild(0).Value);
            Assert.IsTrue(((NestedTreeNode)actualCopy).GetChild(1).GetChild(0).Checked);
        }
Example #3
0
        public void CanAddChildNode()
        {
            //Arrange
            NestedTreeNode child1 = new NestedTreeNode("Child 1");

            //Act
            node.AddChild(child1);

            //Assert
            Assert.AreSame(child1, node.Nodes[0]);
            Assert.AreSame(node, child1.Parent);
        }