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

Tests for Avl Rb Rk. More...

#include <gtest/gtest.h>
#include <random>
#include <vector>
#include <algorithm>
#include <tpl_avlRk.H>
#include <tpl_rbRk.H>
Include dependency graph for avl-rb-rk.cc:

Go to the source code of this file.

Classes

class  RankTreeTest< Tree >
 

Typedefs

using AvlRkTest = RankTreeTest< Avl_Tree_Rk< int > >
 
using RbRkTest = RankTreeTest< Rb_Tree_Rk< int > >
 

Functions

static mt19937 rng (42)
 
 TEST_F (AvlRkTest, InsertAndVerify)
 
 TEST_F (AvlRkTest, SelectOperations)
 
 TEST_F (AvlRkTest, PositionOperations)
 
 TEST_F (AvlRkTest, PositionNotFound)
 
 TEST_F (AvlRkTest, RemoveAndVerify)
 
 TEST_F (AvlRkTest, SelectAfterRemoval)
 
 TEST_F (RbRkTest, InsertAndVerify)
 
 TEST_F (RbRkTest, SelectOperations)
 
 TEST_F (RbRkTest, PositionOperations)
 
 TEST_F (RbRkTest, PositionNotFound)
 
 TEST_F (RbRkTest, RemoveAndVerify)
 
 TEST_F (RbRkTest, SelectAfterRemoval)
 
 TEST (StressTest, MixedOperationsAvl)
 
 TEST (StressTest, MixedOperationsRb)
 
 TEST (EdgeCases, EmptyAvlTree)
 
 TEST (EdgeCases, EmptyRbTree)
 
 TEST (EdgeCases, SingleElementAvl)
 
 TEST (EdgeCases, SingleElementRb)
 
 TEST (SearchOrInsert, AvlTree)
 
 TEST (SearchOrInsert, RbTree)
 
 TEST (InsertDup, AvlTree)
 
 TEST (InsertDup, RbTree)
 
template<typename Tree >
void destroy_tree (Tree &tree)
 
 TEST (JoinSplitAvl, JoinExclusiveBasic)
 
 TEST (JoinSplitAvl, JoinExclusiveEmptyLeft)
 
 TEST (JoinSplitAvl, JoinExclusiveEmptyRight)
 
 TEST (JoinSplitAvl, SplitKeyBasic)
 
 TEST (JoinSplitAvl, SplitKeyNotFound)
 
 TEST (JoinSplitAvl, SplitPosBasic)
 
 TEST (JoinSplitAvl, SplitPosZero)
 
 TEST (JoinSplitAvl, SplitPosEnd)
 
 TEST (JoinSplitAvl, JoinThenSplit)
 
 TEST (JoinSplitRb, JoinExclusiveBasic)
 
 TEST (JoinSplitRb, JoinExclusiveEmptyLeft)
 
 TEST (JoinSplitRb, JoinExclusiveEmptyRight)
 
 TEST (JoinSplitRb, SplitKeyBasic)
 
 TEST (JoinSplitRb, SplitKeyNotFound)
 
 TEST (JoinSplitRb, SplitPosBasic)
 
 TEST (JoinSplitRb, SplitPosZero)
 
 TEST (JoinSplitRb, SplitPosEnd)
 
 TEST (JoinSplitRb, JoinThenSplit)
 
 TEST (JoinSplitStress, AvlLargeJoinSplit)
 
 TEST (JoinSplitStress, RbLargeJoinSplit)
 
 TEST (SplitDup, AvlSplitKeyDup)
 
 TEST (SplitDup, RbSplitKeyDup)
 
int main (int argc, char **argv)
 

Detailed Description

Tests for Avl Rb Rk.

Definition in file avl-rb-rk.cc.

Typedef Documentation

◆ AvlRkTest

Definition at line 89 of file avl-rb-rk.cc.

◆ RbRkTest

Definition at line 90 of file avl-rb-rk.cc.

Function Documentation

◆ destroy_tree()

◆ main()

int main ( int  argc,
char **  argv 
)

Definition at line 1068 of file avl-rb-rk.cc.

References Aleph::maps().

◆ rng()

static mt19937 rng ( 42  )
static

◆ TEST() [1/32]

◆ TEST() [2/32]

◆ TEST() [3/32]

◆ TEST() [4/32]

◆ TEST() [5/32]

◆ TEST() [6/32]

◆ TEST() [7/32]

TEST ( JoinSplitAvl  ,
JoinExclusiveBasic   
)

◆ TEST() [8/32]

TEST ( JoinSplitAvl  ,
JoinExclusiveEmptyLeft   
)

◆ TEST() [9/32]

TEST ( JoinSplitAvl  ,
JoinExclusiveEmptyRight   
)

◆ TEST() [10/32]

TEST ( JoinSplitAvl  ,
JoinThenSplit   
)

◆ TEST() [11/32]

◆ TEST() [12/32]

◆ TEST() [13/32]

◆ TEST() [14/32]

◆ TEST() [15/32]

◆ TEST() [16/32]

TEST ( JoinSplitRb  ,
JoinExclusiveBasic   
)

◆ TEST() [17/32]

TEST ( JoinSplitRb  ,
JoinExclusiveEmptyLeft   
)

◆ TEST() [18/32]

TEST ( JoinSplitRb  ,
JoinExclusiveEmptyRight   
)

◆ TEST() [19/32]

TEST ( JoinSplitRb  ,
JoinThenSplit   
)

◆ TEST() [20/32]

◆ TEST() [21/32]

◆ TEST() [22/32]

◆ TEST() [23/32]

◆ TEST() [24/32]

◆ TEST() [25/32]

TEST ( JoinSplitStress  ,
AvlLargeJoinSplit   
)

◆ TEST() [26/32]

TEST ( JoinSplitStress  ,
RbLargeJoinSplit   
)

◆ TEST() [27/32]

◆ TEST() [28/32]

◆ TEST() [29/32]

◆ TEST() [30/32]

◆ TEST() [31/32]

◆ TEST() [32/32]

◆ TEST_F() [1/12]

TEST_F ( AvlRkTest  ,
InsertAndVerify   
)

Definition at line 94 of file avl-rb-rk.cc.

References Aleph::maps(), and N.

◆ TEST_F() [2/12]

TEST_F ( AvlRkTest  ,
PositionNotFound   
)

Definition at line 129 of file avl-rb-rk.cc.

References Aleph::maps(), and N.

◆ TEST_F() [3/12]

TEST_F ( AvlRkTest  ,
PositionOperations   
)

Definition at line 115 of file avl-rb-rk.cc.

References Aleph::maps(), and N.

◆ TEST_F() [4/12]

TEST_F ( AvlRkTest  ,
RemoveAndVerify   
)

Definition at line 138 of file avl-rb-rk.cc.

References Aleph::maps(), N, rng, and Aleph::shuffle().

◆ TEST_F() [5/12]

TEST_F ( AvlRkTest  ,
SelectAfterRemoval   
)

Definition at line 155 of file avl-rb-rk.cc.

References Aleph::maps(), and N.

◆ TEST_F() [6/12]

TEST_F ( AvlRkTest  ,
SelectOperations   
)

Definition at line 102 of file avl-rb-rk.cc.

References Aleph::maps(), and N.

◆ TEST_F() [7/12]

TEST_F ( RbRkTest  ,
InsertAndVerify   
)

Definition at line 179 of file avl-rb-rk.cc.

References Aleph::maps(), and N.

◆ TEST_F() [8/12]

TEST_F ( RbRkTest  ,
PositionNotFound   
)

Definition at line 214 of file avl-rb-rk.cc.

References Aleph::maps(), and N.

◆ TEST_F() [9/12]

TEST_F ( RbRkTest  ,
PositionOperations   
)

Definition at line 200 of file avl-rb-rk.cc.

References Aleph::maps(), and N.

◆ TEST_F() [10/12]

TEST_F ( RbRkTest  ,
RemoveAndVerify   
)

Definition at line 223 of file avl-rb-rk.cc.

References Aleph::maps(), N, rng, and Aleph::shuffle().

◆ TEST_F() [11/12]

TEST_F ( RbRkTest  ,
SelectAfterRemoval   
)

Definition at line 240 of file avl-rb-rk.cc.

References Aleph::maps(), and N.

◆ TEST_F() [12/12]

TEST_F ( RbRkTest  ,
SelectOperations   
)

Definition at line 187 of file avl-rb-rk.cc.

References Aleph::maps(), and N.