Example #1
0
		public void ShouldTraverseSimpleTree()
		{
			var tree = new MultiTree<int, string>(1);
			tree.AddChild(2);
			tree.AddChild(3);
			CollectionAssert.AreEquivalent(new [] { 1, 2, 3 }, tree);
		}
Example #2
0
        public void ShouldTraverseSimpleTree()
        {
            var tree = new MultiTree <int, string>(1);

            tree.AddChild(2);
            tree.AddChild(3);
            CollectionAssert.AreEquivalent(new [] { 1, 2, 3 }, tree);
        }
Example #3
0
		public void ShouldCreateOneNodeForTheSameValue()
		{
			var tree = new MultiTree<int, string>(1);
			var twoNode = tree.AddChild(2);
			var threeNode = twoNode.AddChild(3);
			var anotherTreeNode = tree.AddChild(3);
			Assert.AreSame(threeNode, anotherTreeNode);
		}
Example #4
0
        public void ShouldCreateOneNodeForTheSameValue()
        {
            var tree            = new MultiTree <int, string>(1);
            var twoNode         = tree.AddChild(2);
            var threeNode       = twoNode.AddChild(3);
            var anotherTreeNode = tree.AddChild(3);

            Assert.AreSame(threeNode, anotherTreeNode);
        }
Example #5
0
		public void ShouldTraverseAnotherSimpleTree()
		{
			var tree = new MultiTree<int, string>(1);
			var twoNode = tree.AddChild(2);
			twoNode.AddChild(3);
			twoNode.AddChild(4);
			tree.AddChild(5);
			CollectionAssert.AreEquivalent(new [] { 1, 2, 3, 4, 5 }, tree);
		}
Example #6
0
        public void ShouldTraverseAnotherSimpleTree()
        {
            var tree    = new MultiTree <int, string>(1);
            var twoNode = tree.AddChild(2);

            twoNode.AddChild(3);
            twoNode.AddChild(4);
            tree.AddChild(5);
            CollectionAssert.AreEquivalent(new [] { 1, 2, 3, 4, 5 }, tree);
        }
Example #7
0
		public void ShouldRemoveSubtree()
		{
			var tree = new MultiTree<int, string>(1);
			var twoNode = tree.AddChild(2);
			twoNode.AddChild(3);
			twoNode.AddChild(4);
			tree.AddChild(5);
			tree.RemoveChild(2);
			CollectionAssert.AreEquivalent(new [] { 1, 5 }, tree);
		}
Example #8
0
        public void ShouldRemoveSubtree()
        {
            var tree    = new MultiTree <int, string>(1);
            var twoNode = tree.AddChild(2);

            twoNode.AddChild(3);
            twoNode.AddChild(4);
            tree.AddChild(5);
            tree.RemoveChild(2);
            CollectionAssert.AreEquivalent(new [] { 1, 5 }, tree);
        }
Example #9
0
		public void ShouldRemoveSubtreeFromDictionary()
		{
			var tree = new MultiTree<int, string>(1);
			var twoNode = tree.AddChild(2);
			twoNode.AddChild(3);
			twoNode.AddChild(4);
			tree.AddChild(5);
			tree.RemoveChild(2);
			Assert.Throws(typeof(KeyNotFoundException), () => tree.GetNode(2));
			Assert.Throws(typeof(KeyNotFoundException), () => tree.GetNode(3));
			Assert.Throws(typeof(KeyNotFoundException), () => tree.GetNode(4));
			tree.GetNode(5);
		}
Example #10
0
        public void ShouldRemoveSubtreeFromDictionary()
        {
            var tree    = new MultiTree <int, string>(1);
            var twoNode = tree.AddChild(2);

            twoNode.AddChild(3);
            twoNode.AddChild(4);
            tree.AddChild(5);
            tree.RemoveChild(2);
            Assert.Throws(typeof(KeyNotFoundException), () => tree.GetNode(2));
            Assert.Throws(typeof(KeyNotFoundException), () => tree.GetNode(3));
            Assert.Throws(typeof(KeyNotFoundException), () => tree.GetNode(4));
            tree.GetNode(5);
        }