public void Default() { Tree <string> tree = new Tree <string>("Root"); tree.AddBranch("Child1"); Assert.AreEqual(1, tree.Branches.Count); Tree <string> child2 = new Tree <string>("Child2"); tree.AddBranch(child2); Assert.AreEqual(2, tree.Branches.Count); Assert.AreEqual(tree, child2.Parent); tree.Branches.Remove(child2); Assert.AreEqual(1, tree.Branches.Count); Assert.AreEqual(null, child2.Parent); Tree <string> child3 = tree.AddBranch("Child3"); Assert.AreEqual(2, tree.Branches.Count); Assert.AreEqual("Child3", child3.Value); Assert.AreEqual(tree, child3.Parent); Tree <string> result = tree.BreathFirstSearch(t => t.Value == "Child3"); Assert.AreEqual("Child3", result.Value); }
public void GivenNodeInBranch_WhenRemoved_ThenNotShownInBranch() { Tree t = new Tree(); ICommit c1 = new CommitStub("h1"); ICommit c2 = new CommitStub("h2", c1); ICommit c3 = new CommitStub("h3", c2); t.SetCommits(new[] { c1, c2, c3 }); IBranch b = new BranchStub("b", c3.Hash); t.AddBranch(b, new[] { c1.Hash, c2.Hash, c3.Hash }); INode n2 = t.GetNode(c2.Hash); Assert.NotNull(n2); // Act. t.RemoveNode(n2); // Verify. INode[] nodesInBranch = t.EnumerateNodes(b).ToArray(); Assert.Equal(2, nodesInBranch.Length); Assert.Equal(c1.Hash, nodesInBranch[0].Commit.Hash); Assert.Equal(c3.Hash, nodesInBranch[1].Commit.Hash); }
static void Main(String[] args) { var tree = new Tree(); var fileReader = new FileReaderEnumerator(fileName); foreach (var inputLine in fileReader) { tree.AddBranch(inputLine); } tree.MergePossibleNodes(); Console.WriteLine(tree.GetCountNodes()); Console.ReadKey(); }
public void NAME() { var tree = new Tree <object>(); var node = tree.AddLeaf("value of T"); var branch = tree.AddBranch(); }