public void Reset_a_right_node_must_detach_older_one() { var root = new BinaryTreeSpec(1); var right = new BinaryTreeSpec(2); var right2 = new BinaryTreeSpec(3); root.SetRigth(right); root.SetRigth(right2); Assert.IsNull(right.Parent); Assert.AreEqual(root.Right.Value, right2.Value); }
private BinaryTreeSpec GetTree() { //root var root = new BinaryTreeSpec(1); //left tree var firstLvlLeftNode = new BinaryTreeSpec(2); var secondLvlLeftNodeLeft = new BinaryTreeSpec(2); var secondLvlLeftNodeRight = new BinaryTreeSpec(4); var thirdLvlLeftNode = new BinaryTreeSpec(5); root.SetLeft(firstLvlLeftNode); firstLvlLeftNode.SetLeft(secondLvlLeftNodeLeft); firstLvlLeftNode.SetRigth(secondLvlLeftNodeRight); secondLvlLeftNodeLeft.SetLeft(thirdLvlLeftNode); //right tree var firstLvlRightNode = new BinaryTreeSpec(3); var secondLvlRightNodeRight = new BinaryTreeSpec(7); var thirdLvlRightNode = new BinaryTreeSpec(10); root.SetRigth(firstLvlRightNode); firstLvlRightNode.SetRigth(secondLvlRightNodeRight); secondLvlRightNodeRight.SetLeft(thirdLvlRightNode); return(root); }
public void Set_right_node_must_set_HasRight_property_true() { var root = new BinaryTreeSpec(1); var right = new BinaryTreeSpec(3); root.SetRigth(right); Assert.IsTrue(root.HasRight); }
public void ToString_must_values_separate_by_a_dash() { var root = new BinaryTreeSpec(1); var left = new BinaryTreeSpec(2); var right = new BinaryTreeSpec(3); root.SetLeft(left); root.SetRigth(right); Assert.AreEqual(root.ToString(), "1 - 2 - 3"); }
public void Detach_right_node_must_clear_relationship_in_both_ways() { var root = new BinaryTreeSpec(1); var right = new BinaryTreeSpec(3); root.SetRigth(right); root.DetachRightNode(); Assert.IsFalse(root.HasLeft); Assert.IsTrue(right.IsRoot); }
public void Set_null_value_to_right_node_must_throw_ArgumentNullException() { var root = new BinaryTreeSpec(1); root.SetRigth(null); }