public void ShouldThrowException_OnInvalidTraversalStrategy() { Assert.Throws <ArgumentNullException>(() => { _sut.TraversalStrategy = null; }); Assert.Throws <ArgumentNullException>(() => { _sut.SetTraversalStrategy(null); }); }
public void PostOrderTraversal() { // Arrange var sut = new BinaryTree <int>(); sut.AddRange(_testData); var expected = new [] { 3, 7, 5, 10, 15, 12, 8 }; // Act sut.SetTraversalStrategy(new PostOrderTraversal <int>()); // Assert Assert.True(expected.SequenceEqual(sut)); }
public void TestPostOrderTraversal() { // arrange var expected = new int[] { 3, 7, 5, 10, 15, 12, 8 }; var binaryTree = new BinaryTree <int> { 8, 5, 12, 3, 7, 10, 15 }; var postOrder = new PostOrderTraversal <int>(); // act binaryTree.SetTraversalStrategy(postOrder); // assert Assert.IsTrue(expected.SequenceEqual(binaryTree)); }
public void TestPreOrderTraversal() { // Arrange var expected = new [] { 8, 5, 3, 7, 12, 10, 15 }; var binaryTree = new BinaryTree <int> { 8, 5, 12, 3, 7, 10, 15 }; var preOrder = new PreOrderTraversal <int>(); // Act binaryTree.SetTraversalStrategy(preOrder); // Assert Assert.IsTrue(expected.SequenceEqual(binaryTree)); }
public void TestInOrderTraversal() { // Arrange var expected = new [] { 3, 5, 7, 8, 10, 12, 15 }; var binaryTree = new BinaryTree <int> { 8, 5, 12, 3, 7, 10, 15 }; var inOrderTraversalStrategy = new InOrderTraversal <int>(); // Act binaryTree.SetTraversalStrategy(inOrderTraversalStrategy); // Assert Assert.IsTrue(expected.SequenceEqual(binaryTree)); }
public void TestInOrderTraversal() { // arrange var orderedTree = new BinaryTree <int> { 3, 5, 7, 8, 10, 12, 15 }; var binaryTree = new BinaryTree <int> { 8, 5, 12, 3, 7, 10, 15 }; var inOrder = new InOrderTraversal <int>(); // act binaryTree.SetTraversalStrategy(inOrder); // assert Assert.IsTrue(orderedTree.SequenceEqual(binaryTree)); }