public void BST_TryToFindNullValue_ShouldThrowArgumentNullException() { string valueToFind = null; BinaryTree <string> tree = new BinaryTree <string>(); Assert.Throws <ArgumentNullException>(() => tree.Find(valueToFind)); }
public void NotEmptyBST_InsertOneElement_ShouldContainsIt() { // Arrange int numberToInsert = 10; BinaryTree <int> tree = new BinaryTree <int>(); tree.InsertRange(new int[] { 5, 3 }); // Act tree.Insert(numberToInsert); // Assert Assert.NotNull(tree.Root); Assert.NotNull(tree.Find(numberToInsert)); }
public void BST_FindNotExistingElement_ShouldReturnNullNode() { // Arrange int numberToFind = 10; BinaryTree <int> tree = new BinaryTree <int>(); int[] numbersToInsert = { 1, 2, 3, 4 }; tree.InsertRange(numbersToInsert); // Act var node = tree.Find(numberToFind); // Assert Assert.Null(node); }
public void BST_FindExistingElement_BSTNodeShouldIcludeIt() { // Arrange int numberToFind = 10; BinaryTree <int> tree = new BinaryTree <int>(); int[] numbersToInsert = { 10, 2, 3, 4 }; tree.InsertRange(numbersToInsert); // Act var node = tree.Find(numberToFind); // Assert Assert.Equal(numberToFind, node.Data); }
public void BST_RemoveNotExistingElement_ReturnRoot() { // Arrange int number = 10; BinaryTree <int> tree = new BinaryTree <int>(); tree.Insert(1); // Act tree.Remove(number); // Assert Assert.NotNull(tree.Root); Assert.Null(tree.Find(number)); }
public void BST_RemoveExistingElement_ThisRootShouldBeNull() { // Arrange int number = 10; BinaryTree <int> tree = new BinaryTree <int>(); tree.Insert(number); // Act tree.Remove(number); // Assert Assert.Null(tree.Root); Assert.Null(tree.Find(number)); }
public void EmptyBST_InsertSeveralElements_ShouldInsertTheseElements() { // Arrange int[] numbersToInsert = { 1, 2, 3, 4 }; BinaryTree <int> tree = new BinaryTree <int>(); // Act tree.InsertRange(numbersToInsert); // Assert Assert.NotNull(tree.Root); foreach (int number in numbersToInsert) { Assert.Equal(tree.Find(number).Data, number); } }