Exemple #1
0
        public void PopChild()
        {
            var n = new MultiTreeNode <string>("1");

            n.AddChild(new MultiTreeNode <string>("2"));
            n.AddChild(new MultiTreeNode <string>("3"));
            Assert.AreEqual(n.GetChildren().Select(t => t.Data), new[] { "3", "2" });
            Assert.AreEqual(n.PopChild().Data, "3");
            Assert.AreEqual(n.GetChildren().Select(t => t.Data), new[] { "2" }, "Incorrect GetChildren after ChildPop");
        }
Exemple #2
0
        public void SeveralChildren()
        {
            var n = new MultiTreeNode <string>("1");

            n.AddChild(new MultiTreeNode <string>("2"));
            n.AddChild(new MultiTreeNode <string>("3"));
            n.AddChild(new MultiTreeNode <string>("4"));
            n.AddChild(new MultiTreeNode <string>("5"));
            Assert.AreEqual(n.GetChildren().Select(t => t.Data), new[] { "5", "4", "3", "2" });
        }
Exemple #3
0
        public void OneChild()
        {
            var n = new MultiTreeNode <string>("1");

            n.AddChild(new MultiTreeNode <string>("2"));
            Assert.AreEqual(n.GetChildren().Select(t => t.Data), new[] { "2" });
        }
Exemple #4
0
        public void ManyChildrenCount()
        {
            var n = new MultiTreeNode <int>(0);

            for (var i = 1; i <= 4; i++)
            {
                n.AddChild(new MultiTreeNode <int>(i));
            }

            Assert.AreEqual(n.Count, 4, "Child count was incorrect");
        }
Exemple #5
0
        public void ChildByIdx()
        {
            var n = new MultiTreeNode <int>(0);

            for (var i = 1; i <= 4; i++)
            {
                n.AddChild(new MultiTreeNode <int>(i));
            }

            Assert.AreEqual(n[3].Data, 1, "Child by idx was incorrect");
        }
Exemple #6
0
        public void ParentsAreOk()
        {
            var n = new MultiTreeNode <int>(0);

            for (var i = 1; i <= 4; i++)
            {
                n.AddChild(new MultiTreeNode <int>(i));
            }

            foreach (var ch in n.GetChildren())
            {
                Assert.AreSame(ch.Parent, n, "Parent is incorrect");
            }
        }
Exemple #7
0
        public void ChildByIncorrectIdx()
        {
            var n = new MultiTreeNode <int>(0);

            n.AddChild(new MultiTreeNode <int>(1));
            try
            {
                var x = n[3].Data;
            }
            catch (ArgumentException)
            {
                return;
            }
            Assert.Fail();
        }