Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
tpl_binNodeGenerators_test.cc File Reference

Tests for lazy binary tree traversals (tpl_binNodeGenerators.H). More...

#include <vector>
#include <gtest/gtest.h>
#include <tpl_binNode.H>
#include <tpl_binNodeGenerators.H>
#include <tpl_binNodeUtils.H>
Include dependency graph for tpl_binNodeGenerators_test.cc:

Go to the source code of this file.

Functions

 TEST (BinNodeGenerators, EmptyTreeYieldsNothing)
 
 TEST (BinNodeGenerators, SingleNodeYieldsThatNode)
 
 TEST (BinNodeGenerators, InOrderMatchesEagerTraversal)
 
 TEST (BinNodeGenerators, PreOrderMatchesEagerTraversal)
 
 TEST (BinNodeGenerators, PostOrderMatchesEagerTraversal)
 
 TEST (BinNodeGenerators, EarlyBreakStopsTraversal)
 
 TEST (BinNodeGenerators, DegenerateChainMatchesEagerTraversal)
 

Detailed Description

Tests for lazy binary tree traversals (tpl_binNodeGenerators.H).

Property tests comparing lazy_in_order/lazy_pre_order/lazy_post_order against the eager for_each_in_order/for_each_preorder/for_each_postorder traversals from tpl_binNodeUtils.H: same node sequence, same order. Also covers an empty tree, a single node, early break, and a deliberately degenerate (linked-list-shaped) tree to exercise deep explicit stack state.

Definition in file tpl_binNodeGenerators_test.cc.

Function Documentation

◆ TEST() [1/7]

TEST ( BinNodeGenerators  ,
DegenerateChainMatchesEagerTraversal   
)

◆ TEST() [2/7]

TEST ( BinNodeGenerators  ,
EarlyBreakStopsTraversal   
)

◆ TEST() [3/7]

TEST ( BinNodeGenerators  ,
EmptyTreeYieldsNothing   
)

◆ TEST() [4/7]

TEST ( BinNodeGenerators  ,
InOrderMatchesEagerTraversal   
)

◆ TEST() [5/7]

TEST ( BinNodeGenerators  ,
PostOrderMatchesEagerTraversal   
)

◆ TEST() [6/7]

TEST ( BinNodeGenerators  ,
PreOrderMatchesEagerTraversal   
)

◆ TEST() [7/7]

TEST ( BinNodeGenerators  ,
SingleNodeYieldsThatNode   
)