コード例 #1
0
        public void CanChangeSuffixOfRootNode()
        {
            var rootNode = new ConfigurableDictionaryNode {
                Parent = null, Label = "rootNode", LabelSuffix = "orig"
            };
            var rootNodes = new List <ConfigurableDictionaryNode> {
                rootNode
            };

            // SUT
            var result = rootNode.ChangeSuffix("new", rootNodes);

            Assert.That(result, Is.True, "allow changing suffix of root");
            Assert.That(rootNode.LabelSuffix, Is.EqualTo("new"), "failed to change suffix");
        }
コード例 #2
0
        public void ReportSuccessfulChangedSuffix()
        {
            var parent = new ConfigurableDictionaryNode {
                Children = new List <ConfigurableDictionaryNode>(), Parent = null
            };
            var node = new ConfigurableDictionaryNode {
                Parent = parent, Label = "originalLabel", LabelSuffix = "blah"
            };

            parent.Children.Add(node);

            // SUT
            var result = node.ChangeSuffix("new");

            Assert.That(result, Is.True);
        }
コード例 #3
0
        public void CanRequestChangingSuffixToSameSuffix()
        {
            var parent = new ConfigurableDictionaryNode {
                Children = new List <ConfigurableDictionaryNode>(), Parent = null
            };
            var originalLabel  = "originalLabel";
            var originalSuffix = "blah";
            var node           = new ConfigurableDictionaryNode {
                Parent = parent, Label = originalLabel, LabelSuffix = originalSuffix
            };

            parent.Children.Add(node);

            // SUT
            var result = node.ChangeSuffix(originalSuffix);

            Assert.That(result, Is.True, "Report success when requesting a suffix that is already the suffix");
            Assert.That(node.LabelSuffix, Is.EqualTo(originalSuffix), "Should not have changed suffix");
        }
コード例 #4
0
        public void CanAddInitialSuffix()
        {
            var parent = new ConfigurableDictionaryNode {
                Children = new List <ConfigurableDictionaryNode>(), Parent = null
            };

            var originallabel = "originalLabel";
            var node          = new ConfigurableDictionaryNode {
                Parent = parent, Label = originallabel, LabelSuffix = null
            };

            parent.Children.Add(node);

            var newSuffix = "new";

            // SUT
            node.ChangeSuffix(newSuffix);
            Assert.That(node.LabelSuffix, Is.EqualTo(newSuffix), "suffix was not updated");
            Assert.That(node.Label, Is.EqualTo(originallabel), "should not have changed label");
        }
コード例 #5
0
        public void CantHaveTwoSiblingsWithSameNonNullSuffix()
        {
            var parent = new ConfigurableDictionaryNode {
                Children = new List <ConfigurableDictionaryNode>(), Parent = null
            };
            var originalLabel  = "originalLabel";
            var originalSuffix = "originalSuffix";
            var node           = new ConfigurableDictionaryNode {
                Parent = parent, Label = originalLabel, LabelSuffix = originalSuffix
            };
            var otherNode = new ConfigurableDictionaryNode {
                Parent = parent, Label = originalLabel, LabelSuffix = "otherSuffix"
            };

            parent.Children.Add(node);
            parent.Children.Add(otherNode);

            // SUT
            var result = node.ChangeSuffix(otherNode.LabelSuffix);

            Assert.That(result, Is.False, "Should have reported failure to change suffix");
            Assert.That(node.LabelSuffix, Is.EqualTo(originalSuffix), "Should not have changed suffix");
        }