private void FindSuccessorTest(IFindSuccessor findSuccessor) { int[] arr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 }; BinaryTreeNode <int> root = CreateMinimalTree(arr); TraverseTree(root, findSuccessor); }
private void TraverseTree(BinaryTreeNode <int> root, IFindSuccessor findSuccessor) { if (root == null) { return; } int expected = root.Value + ((root.Value == 13) ? 0 : 1); TraverseTree(root.Left, findSuccessor); BinaryTreeNode <int> n = findSuccessor.FindSuccessor(root); Assert.AreEqual(expected, n.Value); TraverseTree(root.Right, findSuccessor); }
private void RunTests(IFindSuccessor findSuccessor) { FindSuccessorTest(findSuccessor); }