public void TestThatHeadsAreOrderedBasedOnInput() { var root = new SimpleNode("root"); var child1 = new SimpleNode("child1"); var child2 = new SimpleNode("child2"); root.AddChild(child1); root.AddChild(child2); var graph = new GraphBuilder<SimpleNode>(GetChildren).Build(root); Assert.AreSame(child1, graph.HeadByIndex(root, 0)); }
public void TestThatRootHeadsAreReachableThroughIndex() { var root = new SimpleNode("root"); var child = new SimpleNode("child"); root.AddChild(child); var graph = new GraphBuilder<SimpleNode>(GetChildren).Build(root); Assert.AreSame(child, graph.HeadByIndex(root, 0)); }
public void TestThatRequestForHeadByIndexForUnknownNodeThrows() { var graph = new GraphBuilder<SimpleNode>(GetChildren).Build(new SimpleNode("root")); graph.HeadByIndex(new SimpleNode("dummy"), 0); // should throw }