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

Comprehensive test suite for QuadTree spatial data structure. More...

#include <gtest/gtest.h>
#include <quadtree.H>
#include <random>
#include <algorithm>
#include <unordered_set>
#include <sstream>
Include dependency graph for quadtree_test.cc:

Go to the source code of this file.

Functions

 TEST (QuadTreeBasic, ConstructorAndEmpty)
 
 TEST (QuadTreeBasic, InsertSinglePoint)
 
 TEST (QuadTreeBasic, InsertOutsideBounds)
 
 TEST (QuadTreeBasic, ContainsCheck)
 
 TEST (QuadTreeBasic, SearchExistingPoint)
 
 TEST (QuadTreeBasic, SearchNonExistingPoint)
 
 TEST (QuadTreeBasic, SearchContainerNode)
 
 TEST (QuadTreeBasic, RemoveSinglePoint)
 
 TEST (QuadTreeBasic, RemoveNonExistingPoint)
 
 TEST (QuadTreeBasic, EmptyTree)
 
 TEST (QuadTreeSubdivision, SingleLevelSplit)
 
 TEST (QuadTreeSubdivision, MultiLevelSplit)
 
 TEST (QuadTreeSubdivision, AllQuadrantsPopulated)
 
 TEST (QuadTreeMerging, RemovalTriggersJoin)
 
 TEST (QuadTreeMerging, MultipleRemovalsGradualJoin)
 
 TEST (QuadTreeCopy, CopyConstructor)
 
 TEST (QuadTreeCopy, AssignmentOperator)
 
 TEST (QuadTreeCopy, SelfAssignment)
 
 TEST (QuadTreeStress, InsertManyPoints)
 
 TEST (QuadTreeStress, InsertRemoveCycles)
 
 TEST (QuadTreeStress, DenseRegion)
 
 TEST (QuadTreeEdgeCases, BoundaryPoints)
 
 TEST (QuadTreeEdgeCases, MidpointCoordinates)
 
 TEST (QuadTreeEdgeCases, SinglePointCapacity)
 
 TEST (QuadTreeEdgeCases, VerySmallRegion)
 
 TEST (QuadTreeEdgeCases, VeryLargeRegion)
 
 TEST (QuadTreeTraversal, ForEachNode)
 
 TEST (QuadTreeTraversal, CountLeaves)
 
 TEST (QuadTreeFuzz, RandomOperations)
 
int main (int argc, char **argv)
 

Detailed Description

Comprehensive test suite for QuadTree spatial data structure.

Author
Test Suite Generator

Definition in file quadtree_test.cc.

Function Documentation

◆ main()

int main ( int  argc,
char **  argv 
)

Definition at line 594 of file quadtree_test.cc.

References Aleph::maps().

◆ TEST() [1/29]

TEST ( QuadTreeBasic  ,
ConstructorAndEmpty   
)

◆ TEST() [2/29]

TEST ( QuadTreeBasic  ,
ContainsCheck   
)

Definition at line 84 of file quadtree_test.cc.

References QuadTree::contains(), QuadTree::insert(), and Aleph::maps().

◆ TEST() [3/29]

TEST ( QuadTreeBasic  ,
EmptyTree   
)

◆ TEST() [4/29]

TEST ( QuadTreeBasic  ,
InsertOutsideBounds   
)

Definition at line 69 of file quadtree_test.cc.

References QuadTree::insert(), and Aleph::maps().

◆ TEST() [5/29]

TEST ( QuadTreeBasic  ,
InsertSinglePoint   
)

Definition at line 58 of file quadtree_test.cc.

References QuadTree::insert(), and Aleph::maps().

◆ TEST() [6/29]

TEST ( QuadTreeBasic  ,
RemoveNonExistingPoint   
)

◆ TEST() [7/29]

TEST ( QuadTreeBasic  ,
RemoveSinglePoint   
)

◆ TEST() [8/29]

TEST ( QuadTreeBasic  ,
SearchContainerNode   
)

◆ TEST() [9/29]

TEST ( QuadTreeBasic  ,
SearchExistingPoint   
)

Definition at line 98 of file quadtree_test.cc.

References QuadTree::insert(), Aleph::maps(), and QuadTree::search().

◆ TEST() [10/29]

TEST ( QuadTreeBasic  ,
SearchNonExistingPoint   
)

Definition at line 116 of file quadtree_test.cc.

References QuadTree::insert(), Aleph::maps(), and QuadTree::search().

◆ TEST() [11/29]

TEST ( QuadTreeCopy  ,
AssignmentOperator   
)

Definition at line 320 of file quadtree_test.cc.

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

◆ TEST() [12/29]

TEST ( QuadTreeCopy  ,
CopyConstructor   
)

Definition at line 300 of file quadtree_test.cc.

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

◆ TEST() [13/29]

TEST ( QuadTreeCopy  ,
SelfAssignment   
)

Definition at line 340 of file quadtree_test.cc.

References QuadTree::insert(), Aleph::maps(), and QuadTree::search().

◆ TEST() [14/29]

TEST ( QuadTreeEdgeCases  ,
BoundaryPoints   
)

Definition at line 441 of file quadtree_test.cc.

References QuadTree::insert(), and Aleph::maps().

◆ TEST() [15/29]

TEST ( QuadTreeEdgeCases  ,
MidpointCoordinates   
)

Definition at line 457 of file quadtree_test.cc.

References QuadTree::insert(), Aleph::maps(), and QuadTree::search().

◆ TEST() [16/29]

TEST ( QuadTreeEdgeCases  ,
SinglePointCapacity   
)

◆ TEST() [17/29]

TEST ( QuadTreeEdgeCases  ,
VeryLargeRegion   
)

Definition at line 493 of file quadtree_test.cc.

References QuadTree::insert(), Aleph::maps(), and QuadTree::search().

◆ TEST() [18/29]

TEST ( QuadTreeEdgeCases  ,
VerySmallRegion   
)

Definition at line 482 of file quadtree_test.cc.

References QuadTree::insert(), Aleph::maps(), and QuadTree::search().

◆ TEST() [19/29]

◆ TEST() [20/29]

TEST ( QuadTreeMerging  ,
MultipleRemovalsGradualJoin   
)

◆ TEST() [21/29]

TEST ( QuadTreeMerging  ,
RemovalTriggersJoin   
)

◆ TEST() [22/29]

TEST ( QuadTreeStress  ,
DenseRegion   
)

Definition at line 414 of file quadtree_test.cc.

References QuadTree::insert(), Aleph::maps(), QuadTree::search(), and y.

◆ TEST() [23/29]

TEST ( QuadTreeStress  ,
InsertManyPoints   
)

Definition at line 355 of file quadtree_test.cc.

References QuadTree::insert(), Aleph::maps(), and QuadTree::search().

◆ TEST() [24/29]

TEST ( QuadTreeStress  ,
InsertRemoveCycles   
)

Definition at line 380 of file quadtree_test.cc.

References QuadTree::insert(), Aleph::maps(), QuadTree::remove(), and test().

◆ TEST() [25/29]

TEST ( QuadTreeSubdivision  ,
AllQuadrantsPopulated   
)

◆ TEST() [26/29]

TEST ( QuadTreeSubdivision  ,
MultiLevelSplit   
)

◆ TEST() [27/29]

TEST ( QuadTreeSubdivision  ,
SingleLevelSplit   
)

◆ TEST() [28/29]

TEST ( QuadTreeTraversal  ,
CountLeaves   
)

◆ TEST() [29/29]

TEST ( QuadTreeTraversal  ,
ForEachNode   
)

Definition at line 510 of file quadtree_test.cc.

References QuadTree::for_each(), QuadTree::insert(), and Aleph::maps().