public void GetSubtreeWeight_CalculatesWeightCorrectly()
        {
            var root = new ProgramTreeNode("test", 7);

            root.AddChild(new ProgramTreeNode("test", 2));
            root.AddChild(new ProgramTreeNode("test", 3));
            root.AddChild(new ProgramTreeNode("test", 2));

            Assert.AreEqual(14, _systemUnderTest.GetSubTreeWeight(root));
        }
        public void IsBalanced_FalseIfChildrenNotAllSameWeight()
        {
            var root = new ProgramTreeNode("test", 7);

            root.AddChild(new ProgramTreeNode("test", 2));
            root.AddChild(new ProgramTreeNode("test", 3));
            root.AddChild(new ProgramTreeNode("test", 2));

            Assert.IsFalse(_systemUnderTest.IsBalanced(root));
        }
        public void IsBalanced_TrueIfChildrenAllSameWeight()
        {
            var root = new ProgramTreeNode("test", 6);

            root.AddChild(new ProgramTreeNode("test", 2));
            root.AddChild(new ProgramTreeNode("test", 2));
            root.AddChild(new ProgramTreeNode("test", 2));

            Assert.IsTrue(_systemUnderTest.IsBalanced(root));
        }
Пример #4
0
        public void AddChild_ChildNodeHasReferenceToParent()
        {
            var parent = new ProgramTreeNode("test", 1);
            var child  = new ProgramTreeNode("child", 1);

            parent.AddChild(child);

            Assert.AreEqual(parent, child.Parent);
        }
Пример #5
0
        public void AddChild_ChildNodeAddedToChildrenCollection()
        {
            var parent = new ProgramTreeNode("test", 1);
            var child  = new ProgramTreeNode("child", 1);

            parent.AddChild(child);

            Assert.Contains(child, parent.Children.ToList());
        }