Пример #1
0
        public void RemoveChild_ShouldProduceDesiredResults_ForTargetNotContainingChildNodeArgument()
        {
            // Arrange.
            var childNode = new TestTreeNode();
            var target    = new TestTreeNode();

            // Act.
            var result = target.RemoveChild(childNode);

            // Assert.
            result.Should().BeFalse();
        }
Пример #2
0
        public void RemoveChild_ShouldRaiseArgumentNullException_ForNullChildNodeArgument()
        {
            // Arrange.
            var target    = new TestTreeNode();
            var childNode = (TestTreeNode)null;

            // Act.
            var action = new Action(() =>
            {
                target.RemoveChild(childNode);
            });

            // Assert.
            action.Should().Throw <ArgumentNullException>($"because {nameof(childNode)} is null");
        }
Пример #3
0
        public void RemoveChild_ShouldProduceDesiredResults_ForTargetContainingChildNodeArgument()
        {
            // Arrange.
            var childNode = new TestTreeNode();
            var target    = new TestTreeNode(0, new TestTreeNode[]
            {
                childNode
            });

            // Act.
            var result = target.RemoveChild(childNode);

            // Assert.
            result.Should().BeTrue();
            target.Children.Should().NotContain(childNode);
            childNode.Parent.Should().BeNull();
        }