public void GetPreviousEntryWorks() { var tree = new HierarchyObjectMock("root", new HierarchyObjectMock("child1", new HierarchyObjectMock("child1-1"), new HierarchyObjectMock("child1-2", new HierarchyObjectMock("child1-2-1"), new HierarchyObjectMock("child1-2-2", new HierarchyObjectMock("child1-2-2-1"))), new HierarchyObjectMock("child1-3", new HierarchyObjectMock("child1-3-1")), new HierarchyObjectMock("child1-4"))); var navigator = new HierarchyObjectNavigator(); Assert.AreEqual("child1-4", GetPreviousItem(navigator, tree, "root")); Assert.AreEqual("root", GetPreviousItem(navigator, tree, "child1")); Assert.AreEqual("child1", GetPreviousItem(navigator, tree, "child1-1")); Assert.AreEqual("child1-1", GetPreviousItem(navigator, tree, "child1-2")); Assert.AreEqual("child1-2", GetPreviousItem(navigator, tree, "child1-2-1")); Assert.AreEqual("child1-2-2", GetPreviousItem(navigator, tree, "child1-2-2-1")); Assert.AreEqual("child1-2-2-1", GetPreviousItem(navigator, tree, "child1-3")); Assert.AreEqual("child1-3", GetPreviousItem(navigator, tree, "child1-3-1")); Assert.AreEqual("child1-3-1", GetPreviousItem(navigator, tree, "child1-4")); }
public void GetPreviousEntryForSingleEntryWorks() { var tree = new HierarchyObjectMock("root"); var navigator = new HierarchyObjectNavigator(); Assert.AreEqual("root", GetPreviousItem(navigator, tree, "root")); Assert.AreEqual("root", GetNextItem(navigator, tree, "root")); }
private string GetNextItem(HierarchyObjectNavigator navigator, HierarchyObjectMock root, string value) { var node = FindNode(root, value); if (node == null) { return(null); } return(GetNextItem(navigator, node)); }
private string GetPreviousItem(HierarchyObjectNavigator navigator, HierarchyObjectMock tree) { var item = navigator.GetPreviousItem(tree) as HierarchyObjectMock; if (item == null) { return(null); } return(item.Value); }
private HierarchyObjectMock FindNode(HierarchyObjectMock root, string value) { if (root == null) return null; if (root.Value == value) return root; foreach (var child in root.ChildMocks) { var result = FindNode(child, value); if (result != null) return result; } return null; }
private HierarchyObjectMock FindNode(HierarchyObjectMock root, string value) { if (root == null) { return(null); } if (root.Value == value) { return(root); } foreach (var child in root.ChildMocks) { var result = FindNode(child, value); if (result != null) { return(result); } } return(null); }
public void GetNextEntryWorks() { var tree = new HierarchyObjectMock("root", new HierarchyObjectMock("child1", new HierarchyObjectMock("child1-1"), new HierarchyObjectMock("child1-2", new HierarchyObjectMock("child1-2-1"), new HierarchyObjectMock("child1-2-2", new HierarchyObjectMock("child1-2-2-1"))), new HierarchyObjectMock("child1-3", new HierarchyObjectMock("child1-3-1")), new HierarchyObjectMock("child1-4"))); var navigator = new HierarchyObjectNavigator(); Assert.AreEqual("child1", GetNextItem(navigator, tree, "root")); Assert.AreEqual("child1-1", GetNextItem(navigator, tree, "child1")); Assert.AreEqual("child1-2", GetNextItem(navigator, tree, "child1-1")); Assert.AreEqual("child1-2-1", GetNextItem(navigator, tree, "child1-2")); Assert.AreEqual("child1-2-2", GetNextItem(navigator, tree, "child1-2-1")); Assert.AreEqual("child1-3", GetNextItem(navigator, tree, "child1-2-2-1")); Assert.AreEqual("child1-4", GetNextItem(navigator, tree, "child1-3-1")); Assert.AreEqual("root", GetNextItem(navigator, tree, "child1-4")); }
private string GetPreviousItem(HierarchyObjectNavigator navigator, HierarchyObjectMock root, string value) { var node = FindNode(root, value); if (node == null) return null; return GetPreviousItem(navigator, node); }
private string GetNextItem(HierarchyObjectNavigator navigator, HierarchyObjectMock tree) { var item = navigator.GetNextItem(tree) as HierarchyObjectMock; if (item == null) return null; return item.Value; }