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

Tests for Gen_Fenwick_Tree, Fenwick_Tree, and Range_Fenwick_Tree. More...

#include <gtest/gtest.h>
#include <tpl_fenwick_tree.H>
#include <random>
#include <vector>
Include dependency graph for fenwick_tree.cc:

Go to the source code of this file.

Functions

 TEST (GenFenwickTree, EmptyConstruction)
 
 TEST (GenFenwickTree, ZeroInitialized)
 
 TEST (GenFenwickTree, InitializerListConstruction)
 
 TEST (GenFenwickTree, ArrayConstruction)
 
 TEST (GenFenwickTree, VectorConstruction)
 
 TEST (GenFenwickTree, DynListConstruction)
 
 TEST (GenFenwickTree, PointUpdate)
 
 TEST (GenFenwickTree, RangeQuery)
 
 TEST (GenFenwickTree, SetValue)
 
 TEST (GenFenwickTree, Values)
 
 TEST (GenFenwickTree, CopyAndMove)
 
 TEST (GenFenwickTree, Swap)
 
 TEST (GenFenwickTree, BoundsChecking)
 
 TEST (GenFenwickTree, XorGroup)
 
 TEST (GenFenwickTree, StressRandomUpdates)
 
 TEST (FenwickTree, InheritsBaseOperations)
 
 TEST (FenwickTree, FindKthBasic)
 
 TEST (FenwickTree, FindKthSingleElement)
 
 TEST (FenwickTree, FindKthOrderStatistics)
 
 TEST (FenwickTree, FindKthEmpty)
 
 TEST (FenwickTree, FindKthPowerOfTwo)
 
 TEST (FenwickTree, FindKthWithZeros)
 
 TEST (FenwickTree, StressFindKth)
 
 TEST (FenwickTree, DoubleType)
 
 TEST (RangeFenwickTree, EmptyConstruction)
 
 TEST (RangeFenwickTree, ZeroInitialized)
 
 TEST (RangeFenwickTree, InitializerListConstruction)
 
 TEST (RangeFenwickTree, ArrayConstruction)
 
 TEST (RangeFenwickTree, RangeUpdate)
 
 TEST (RangeFenwickTree, OverlappingRangeUpdates)
 
 TEST (RangeFenwickTree, PointUpdate)
 
 TEST (RangeFenwickTree, SetValue)
 
 TEST (RangeFenwickTree, UpdateLastElement)
 
 TEST (RangeFenwickTree, UpdateEntireRange)
 
 TEST (RangeFenwickTree, Values)
 
 TEST (RangeFenwickTree, CopyAndMove)
 
 TEST (RangeFenwickTree, Swap)
 
 TEST (RangeFenwickTree, BoundsChecking)
 
 TEST (RangeFenwickTree, StressRandomUpdates)
 

Detailed Description

Tests for Gen_Fenwick_Tree, Fenwick_Tree, and Range_Fenwick_Tree.

Definition in file fenwick_tree.cc.

Function Documentation

◆ TEST() [1/39]

TEST ( FenwickTree  ,
DoubleType   
)

Definition at line 419 of file fenwick_tree.cc.

References Aleph::maps().

◆ TEST() [2/39]

TEST ( FenwickTree  ,
FindKthBasic   
)

Definition at line 299 of file fenwick_tree.cc.

References Aleph::maps().

◆ TEST() [3/39]

TEST ( FenwickTree  ,
FindKthEmpty   
)

Definition at line 343 of file fenwick_tree.cc.

References Aleph::maps().

◆ TEST() [4/39]

TEST ( FenwickTree  ,
FindKthOrderStatistics   
)

Definition at line 324 of file fenwick_tree.cc.

References Aleph::maps().

◆ TEST() [5/39]

TEST ( FenwickTree  ,
FindKthPowerOfTwo   
)

Definition at line 349 of file fenwick_tree.cc.

References Aleph::maps().

◆ TEST() [6/39]

TEST ( FenwickTree  ,
FindKthSingleElement   
)

Definition at line 315 of file fenwick_tree.cc.

References Aleph::maps().

◆ TEST() [7/39]

TEST ( FenwickTree  ,
FindKthWithZeros   
)

Definition at line 360 of file fenwick_tree.cc.

References Aleph::maps().

◆ TEST() [8/39]

TEST ( FenwickTree  ,
InheritsBaseOperations   
)

Definition at line 285 of file fenwick_tree.cc.

References Aleph::maps(), and Aleph::HTList::size().

◆ TEST() [9/39]

TEST ( FenwickTree  ,
StressFindKth   
)

Definition at line 376 of file fenwick_tree.cc.

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

◆ TEST() [10/39]

TEST ( GenFenwickTree  ,
ArrayConstruction   
)

Definition at line 79 of file fenwick_tree.cc.

References Aleph::maps().

◆ TEST() [11/39]

TEST ( GenFenwickTree  ,
BoundsChecking   
)

Definition at line 199 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), and Aleph::maps().

◆ TEST() [12/39]

TEST ( GenFenwickTree  ,
CopyAndMove   
)

Definition at line 168 of file fenwick_tree.cc.

References Aleph::maps().

◆ TEST() [13/39]

TEST ( GenFenwickTree  ,
DynListConstruction   
)

◆ TEST() [14/39]

TEST ( GenFenwickTree  ,
EmptyConstruction   
)

Definition at line 51 of file fenwick_tree.cc.

References Aleph::HTList::is_empty(), Aleph::maps(), and Aleph::HTList::size().

◆ TEST() [15/39]

TEST ( GenFenwickTree  ,
InitializerListConstruction   
)

Definition at line 66 of file fenwick_tree.cc.

References Aleph::maps().

◆ TEST() [16/39]

TEST ( GenFenwickTree  ,
PointUpdate   
)

Definition at line 117 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), and Aleph::maps().

◆ TEST() [17/39]

TEST ( GenFenwickTree  ,
RangeQuery   
)

Definition at line 133 of file fenwick_tree.cc.

References Aleph::maps().

◆ TEST() [18/39]

TEST ( GenFenwickTree  ,
SetValue   
)

Definition at line 144 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), and Aleph::maps().

◆ TEST() [19/39]

TEST ( GenFenwickTree  ,
StressRandomUpdates   
)

Definition at line 248 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), Aleph::maps(), N, and rng.

◆ TEST() [20/39]

◆ TEST() [21/39]

TEST ( GenFenwickTree  ,
Values   
)

Definition at line 156 of file fenwick_tree.cc.

References Aleph::maps(), and Aleph::HTList::size().

◆ TEST() [22/39]

TEST ( GenFenwickTree  ,
VectorConstruction   
)

Definition at line 89 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), Aleph::maps(), and Aleph::HTList::size().

◆ TEST() [23/39]

TEST ( GenFenwickTree  ,
XorGroup   
)

Definition at line 221 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), and Aleph::maps().

◆ TEST() [24/39]

TEST ( GenFenwickTree  ,
ZeroInitialized   
)

Definition at line 58 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), Aleph::maps(), and Aleph::HTList::size().

◆ TEST() [25/39]

TEST ( RangeFenwickTree  ,
ArrayConstruction   
)

Definition at line 464 of file fenwick_tree.cc.

References Aleph::maps().

◆ TEST() [26/39]

TEST ( RangeFenwickTree  ,
BoundsChecking   
)

Definition at line 613 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), and Aleph::maps().

◆ TEST() [27/39]

TEST ( RangeFenwickTree  ,
CopyAndMove   
)

Definition at line 575 of file fenwick_tree.cc.

References Aleph::maps().

◆ TEST() [28/39]

TEST ( RangeFenwickTree  ,
EmptyConstruction   
)

Definition at line 433 of file fenwick_tree.cc.

References Aleph::HTList::is_empty(), Aleph::maps(), and Aleph::HTList::size().

◆ TEST() [29/39]

TEST ( RangeFenwickTree  ,
InitializerListConstruction   
)

Definition at line 448 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), and Aleph::maps().

◆ TEST() [30/39]

TEST ( RangeFenwickTree  ,
OverlappingRangeUpdates   
)

Definition at line 489 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), and Aleph::maps().

◆ TEST() [31/39]

TEST ( RangeFenwickTree  ,
PointUpdate   
)

Definition at line 508 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), and Aleph::maps().

◆ TEST() [32/39]

TEST ( RangeFenwickTree  ,
RangeUpdate   
)

Definition at line 475 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), and Aleph::maps().

◆ TEST() [33/39]

TEST ( RangeFenwickTree  ,
SetValue   
)

Definition at line 524 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), and Aleph::maps().

◆ TEST() [34/39]

TEST ( RangeFenwickTree  ,
StressRandomUpdates   
)

Definition at line 627 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), Aleph::maps(), N, and rng.

◆ TEST() [35/39]

◆ TEST() [36/39]

TEST ( RangeFenwickTree  ,
UpdateEntireRange   
)

Definition at line 550 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), and Aleph::maps().

◆ TEST() [37/39]

TEST ( RangeFenwickTree  ,
UpdateLastElement   
)

Definition at line 536 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), and Aleph::maps().

◆ TEST() [38/39]

TEST ( RangeFenwickTree  ,
Values   
)

Definition at line 562 of file fenwick_tree.cc.

References Aleph::maps(), and Aleph::HTList::size().

◆ TEST() [39/39]

TEST ( RangeFenwickTree  ,
ZeroInitialized   
)

Definition at line 440 of file fenwick_tree.cc.

References Aleph::DynList< T >::get(), Aleph::maps(), and Aleph::HTList::size().