public void Test_TrySearch_Traverser_Was_Traversed()
        {
            var searchStrategy = new SearchByIdStrategy();
            var traverser      = new MockTraverser();

            searchStrategy.TrySearch(new GeneralTree <object>(), 1, traverser);

            Assert.IsTrue(traverser.WasTraversed);
        }
        public void Test_TrySearch_SearchId_Not_In_Tree_Returns_Null()
        {
            var tree      = BuildTreeForTest();
            var traverser = new LevelorderTraversalStrategy();

            var searchStrategy = new SearchByIdStrategy();
            var result         = searchStrategy.TrySearch(tree, 22, traverser);

            Assert.IsNull(result);
        }
        public void Test_TrySearch_SearchId_In_Tree_Returns_Corresponding_Node()
        {
            var tree      = BuildTreeForTest();
            var traverser = new LevelorderTraversalStrategy();

            var searchStrategy = new SearchByIdStrategy();
            var result         = searchStrategy.TrySearch(tree, 5, traverser);

            Assert.IsNotNull(result);
            Assert.IsTrue(result.Id == 5);
        }
Ejemplo n.º 4
0
        public INode <T> TrySearchById(int id)
        {
            var searchStrategy = new SearchByIdStrategy();

            return(searchStrategy.TrySearch(this, id, new LevelorderTraversalStrategy()));
        }