|
Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
|
Comprehensive edge case tests for all Aleph-w containers. More...
#include <gtest/gtest.h>#include <limits>#include <random>#include <vector>#include <string>#include <set>#include <deque>#include <tpl_array.H>#include <tpl_dynArray.H>#include <tpl_arrayQueue.H>#include <tpl_arrayStack.H>#include <tpl_dynDlist.H>#include <htlist.H>#include <tpl_odhash.H>#include <tpl_olhash.H>#include <tpl_dynSetTree.H>#include <bitArray.H>Go to the source code of this file.
Classes | |
| class | DynArrayEdgeCases |
| class | ArrayQueueEdgeCases |
| class | ArrayStackEdgeCases |
| class | DynDlistEdgeCases |
| class | DynListEdgeCases |
| class | ODhashTableEdgeCases |
| class | OLhashTableEdgeCases |
| class | DynSetTreeEdgeCases |
Functions | |
| TEST_F (DynArrayEdgeCases, EmptyArray_SizeIsZero) | |
| TEST_F (DynArrayEdgeCases, EmptyArray_ExistReturnsFalse) | |
| TEST_F (DynArrayEdgeCases, SingleElement_InsertAndAccess) | |
| TEST_F (DynArrayEdgeCases, SparseAccess_AutoAllocation) | |
| TEST_F (DynArrayEdgeCases, ExistChecksAllocatedBlocks) | |
| TEST_F (DynArrayEdgeCases, LargeIndex_Grows) | |
| TEST_F (DynArrayEdgeCases, CutToSize_Shrinks) | |
| TEST_F (DynArrayEdgeCases, CutToZero_EmptiesArray) | |
| TEST_F (ArrayQueueEdgeCases, EmptyQueue_IsEmpty) | |
| TEST_F (ArrayQueueEdgeCases, EmptyQueue_GetThrows) | |
| TEST_F (ArrayQueueEdgeCases, EmptyQueue_SizeZero) | |
| TEST_F (ArrayQueueEdgeCases, SingleElement_FIFO) | |
| TEST_F (ArrayQueueEdgeCases, FillToCapacity) | |
| TEST_F (ArrayQueueEdgeCases, FillAndResize) | |
| TEST_F (ArrayQueueEdgeCases, WrapAround) | |
| TEST_F (ArrayStackEdgeCases, EmptyStack_IsEmpty) | |
| TEST_F (ArrayStackEdgeCases, EmptyStack_PopThrows) | |
| TEST_F (ArrayStackEdgeCases, EmptyStack_TopThrows) | |
| TEST_F (ArrayStackEdgeCases, SingleElement_LIFO) | |
| TEST_F (ArrayStackEdgeCases, FillToCapacity) | |
| TEST_F (ArrayStackEdgeCases, FillAndResize) | |
| TEST_F (ArrayStackEdgeCases, PushPopSequence) | |
| TEST_F (DynDlistEdgeCases, EmptyList_IsEmpty) | |
| TEST_F (DynDlistEdgeCases, EmptyList_RemoveThrows) | |
| TEST_F (DynDlistEdgeCases, EmptyList_GetThrows) | |
| TEST_F (DynDlistEdgeCases, SingleElement_FirstEqualsLast) | |
| TEST_F (DynDlistEdgeCases, SingleElement_RemoveFirst) | |
| TEST_F (DynDlistEdgeCases, SingleElement_RemoveLast) | |
| TEST_F (DynDlistEdgeCases, AppendAndInsert_Order) | |
| TEST_F (DynDlistEdgeCases, IteratorOnEmpty) | |
| TEST_F (DynDlistEdgeCases, ReverseEmpty) | |
| TEST_F (DynDlistEdgeCases, ReverseSingleElement) | |
| TEST_F (DynDlistEdgeCases, ReverseMultiple) | |
| TEST_F (DynDlistEdgeCases, AppendListEmpty) | |
| TEST_F (DynDlistEdgeCases, AppendListToEmpty) | |
| TEST_F (DynListEdgeCases, EmptyList_IsEmpty) | |
| TEST_F (DynListEdgeCases, EmptyList_RemoveThrows) | |
| TEST_F (DynListEdgeCases, SingleElement_InsertAndRemove) | |
| TEST_F (DynListEdgeCases, AppendKeepsOrder) | |
| TEST_F (DynListEdgeCases, InsertReverseOrder) | |
| TEST_F (ODhashTableEdgeCases, EmptyTable_SizeIsZero) | |
| TEST_F (ODhashTableEdgeCases, EmptyTable_SearchReturnsNull) | |
| TEST_F (ODhashTableEdgeCases, EmptyTable_RemoveThrows) | |
| TEST_F (ODhashTableEdgeCases, SingleElement_InsertSearchRemove) | |
| TEST_F (ODhashTableEdgeCases, DuplicateInsert_ReturnsNull) | |
| TEST_F (ODhashTableEdgeCases, HashCollisions) | |
| TEST_F (ODhashTableEdgeCases, RemoveNonExistent) | |
| TEST_F (ODhashTableEdgeCases, ZeroAndNegativeKeys) | |
| TEST_F (OLhashTableEdgeCases, EmptyTable_SizeIsZero) | |
| TEST_F (OLhashTableEdgeCases, EmptyTable_SearchReturnsNull) | |
| TEST_F (OLhashTableEdgeCases, SingleElement_Operations) | |
| TEST_F (OLhashTableEdgeCases, LinearProbingCollisions) | |
| TEST_F (DynSetTreeEdgeCases, EmptyTree_SizeIsZero) | |
| TEST_F (DynSetTreeEdgeCases, EmptyTree_SearchReturnsNull) | |
| TEST_F (DynSetTreeEdgeCases, EmptyTree_RemoveReturnsDefault) | |
| TEST_F (DynSetTreeEdgeCases, SingleElement_Insert) | |
| TEST_F (DynSetTreeEdgeCases, SingleElement_MinMax) | |
| TEST_F (DynSetTreeEdgeCases, DuplicateInsert_ReturnsNull) | |
| TEST_F (DynSetTreeEdgeCases, SortedInsert_Ascending) | |
| TEST_F (DynSetTreeEdgeCases, SortedInsert_Descending) | |
| TEST_F (DynSetTreeEdgeCases, RemoveMin) | |
| TEST_F (DynSetTreeEdgeCases, RemoveMax) | |
| TEST_F (DynSetTreeEdgeCases, RemoveMiddle) | |
| TEST_F (DynSetTreeEdgeCases, InorderTraversal) | |
| TEST_F (DynSetTreeEdgeCases, ExtremeValues) | |
| TEST (BitArrayEdgeCases, ZeroSized_NotAllowed) | |
| TEST (BitArrayEdgeCases, SingleBit_SetAndRead) | |
| TEST (BitArrayEdgeCases, AllBitsSet) | |
| TEST (BitArrayEdgeCases, AllBitsClear) | |
| TEST (BitArrayEdgeCases, AlternatingBits) | |
| TEST (BitArrayEdgeCases, BoundaryAccess) | |
| TEST (ArrayEdgeCases, SingleElement) | |
| TEST (ArrayEdgeCases, BoundaryAccess) | |
| TEST (ContainerStress, DynSetTreeRandomOperations) | |
| TEST (ContainerStress, HashTableRandomOperations) | |
| TEST (ContainerStress, DynDlistRandomOperations) | |
| TEST (ContainerStress, ArrayQueueCycles) | |
| int | main (int argc, char **argv) |
Comprehensive edge case tests for all Aleph-w containers.
This file contains edge case tests covering:
Definition in file container_edge_cases_test.cc.
| int main | ( | int | argc, |
| char ** | argv | ||
| ) |
Definition at line 977 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST | ( | ArrayEdgeCases | , |
| BoundaryAccess | |||
| ) |
Definition at line 796 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST | ( | ArrayEdgeCases | , |
| SingleElement | |||
| ) |
Definition at line 788 of file container_edge_cases_test.cc.
References Aleph::maps(), and Aleph::Array< T >::size().
| TEST | ( | BitArrayEdgeCases | , |
| AllBitsClear | |||
| ) |
Definition at line 746 of file container_edge_cases_test.cc.
References Aleph::maps(), and Aleph::BitArray::read_bit().
| TEST | ( | BitArrayEdgeCases | , |
| AllBitsSet | |||
| ) |
Definition at line 735 of file container_edge_cases_test.cc.
References Aleph::maps(), Aleph::BitArray::read_bit(), and Aleph::BitArray::write_bit().
| TEST | ( | BitArrayEdgeCases | , |
| AlternatingBits | |||
| ) |
Definition at line 755 of file container_edge_cases_test.cc.
References Aleph::maps(), Aleph::BitArray::read_bit(), and Aleph::BitArray::write_bit().
| TEST | ( | BitArrayEdgeCases | , |
| BoundaryAccess | |||
| ) |
Definition at line 766 of file container_edge_cases_test.cc.
References Aleph::maps(), Aleph::BitArray::read_bit(), and Aleph::BitArray::write_bit().
| TEST | ( | BitArrayEdgeCases | , |
| SingleBit_SetAndRead | |||
| ) |
Definition at line 724 of file container_edge_cases_test.cc.
References Aleph::maps(), Aleph::BitArray::read_bit(), and Aleph::BitArray::write_bit().
| TEST | ( | BitArrayEdgeCases | , |
| ZeroSized_NotAllowed | |||
| ) |
Definition at line 717 of file container_edge_cases_test.cc.
References Aleph::maps(), and Aleph::BitArray::size().
| TEST | ( | ContainerStress | , |
| ArrayQueueCycles | |||
| ) |
Definition at line 949 of file container_edge_cases_test.cc.
References Aleph::ArrayQueue< T >::get(), Aleph::MemArray< T >::is_empty(), Aleph::maps(), Aleph::ArrayQueue< T >::put(), and Aleph::MemArray< T >::size().
| TEST | ( | ContainerStress | , |
| DynDlistRandomOperations | |||
| ) |
Definition at line 898 of file container_edge_cases_test.cc.
References Aleph::DynDlist< T >::append(), Aleph::DynDlist< T >::insert(), Aleph::maps(), Aleph::DynDlist< T >::remove_first(), Aleph::DynDlist< T >::remove_last(), and Aleph::DynDlist< T >::size().
| TEST | ( | ContainerStress | , |
| DynSetTreeRandomOperations | |||
| ) |
Definition at line 812 of file container_edge_cases_test.cc.
References Aleph::DynSetTree< Key, Tree, Compare >::has(), Aleph::DynSetTree< Key, Tree, Compare >::insert(), Aleph::DynList< T >::insert(), Aleph::maps(), Aleph::DynSetTree< Key, Tree, Compare >::remove(), Aleph::DynSetTree< Key, Tree, Compare >::size(), and Aleph::HTList::size().
| TEST | ( | ContainerStress | , |
| HashTableRandomOperations | |||
| ) |
Definition at line 855 of file container_edge_cases_test.cc.
References OhashCommon< HashTbl, Key >::insert(), Aleph::DynList< T >::insert(), Aleph::maps(), Aleph::ODhashTable< Key, Cmp >::remove(), Aleph::ODhashTable< Key, Cmp >::search(), OhashCommon< HashTbl, Key >::size(), and Aleph::HTList::size().
| TEST_F | ( | ArrayQueueEdgeCases | , |
| EmptyQueue_GetThrows | |||
| ) |
Definition at line 163 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ArrayQueueEdgeCases | , |
| EmptyQueue_IsEmpty | |||
| ) |
Definition at line 157 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ArrayQueueEdgeCases | , |
| EmptyQueue_SizeZero | |||
| ) |
Definition at line 168 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ArrayQueueEdgeCases | , |
| FillAndResize | |||
| ) |
Definition at line 199 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ArrayQueueEdgeCases | , |
| FillToCapacity | |||
| ) |
Definition at line 189 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ArrayQueueEdgeCases | , |
| SingleElement_FIFO | |||
| ) |
Definition at line 178 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ArrayQueueEdgeCases | , |
| WrapAround | |||
| ) |
Definition at line 211 of file container_edge_cases_test.cc.
References Aleph::maps(), and Aleph::DynList< T >::put().
| TEST_F | ( | ArrayStackEdgeCases | , |
| EmptyStack_IsEmpty | |||
| ) |
Definition at line 238 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ArrayStackEdgeCases | , |
| EmptyStack_PopThrows | |||
| ) |
Definition at line 244 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ArrayStackEdgeCases | , |
| EmptyStack_TopThrows | |||
| ) |
Definition at line 249 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ArrayStackEdgeCases | , |
| FillAndResize | |||
| ) |
Definition at line 273 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ArrayStackEdgeCases | , |
| FillToCapacity | |||
| ) |
Definition at line 264 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ArrayStackEdgeCases | , |
| PushPopSequence | |||
| ) |
Definition at line 285 of file container_edge_cases_test.cc.
References Aleph::maps(), and Aleph::DynList< T >::push().
| TEST_F | ( | ArrayStackEdgeCases | , |
| SingleElement_LIFO | |||
| ) |
Definition at line 254 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynArrayEdgeCases | , |
| CutToSize_Shrinks | |||
| ) |
Definition at line 127 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynArrayEdgeCases | , |
| CutToZero_EmptiesArray | |||
| ) |
Definition at line 139 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynArrayEdgeCases | , |
| EmptyArray_ExistReturnsFalse | |||
| ) |
Definition at line 86 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynArrayEdgeCases | , |
| EmptyArray_SizeIsZero | |||
| ) |
Definition at line 80 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynArrayEdgeCases | , |
| ExistChecksAllocatedBlocks | |||
| ) |
Definition at line 112 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynArrayEdgeCases | , |
| LargeIndex_Grows | |||
| ) |
Definition at line 120 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynArrayEdgeCases | , |
| SingleElement_InsertAndAccess | |||
| ) |
Definition at line 93 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynArrayEdgeCases | , |
| SparseAccess_AutoAllocation | |||
| ) |
Definition at line 101 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynDlistEdgeCases | , |
| AppendAndInsert_Order | |||
| ) |
Definition at line 346 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynDlistEdgeCases | , |
| AppendListEmpty | |||
| ) |
Definition at line 387 of file container_edge_cases_test.cc.
References Aleph::DynList< T >::append(), and Aleph::maps().
| TEST_F | ( | DynDlistEdgeCases | , |
| AppendListToEmpty | |||
| ) |
Definition at line 394 of file container_edge_cases_test.cc.
References Aleph::DynList< T >::append(), Aleph::HTList::is_empty(), and Aleph::maps().
| TEST_F | ( | DynDlistEdgeCases | , |
| EmptyList_GetThrows | |||
| ) |
Definition at line 318 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynDlistEdgeCases | , |
| EmptyList_IsEmpty | |||
| ) |
Definition at line 306 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynDlistEdgeCases | , |
| EmptyList_RemoveThrows | |||
| ) |
Definition at line 312 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynDlistEdgeCases | , |
| IteratorOnEmpty | |||
| ) |
Definition at line 356 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynDlistEdgeCases | , |
| ReverseEmpty | |||
| ) |
Definition at line 362 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynDlistEdgeCases | , |
| ReverseMultiple | |||
| ) |
Definition at line 376 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynDlistEdgeCases | , |
| ReverseSingleElement | |||
| ) |
Definition at line 368 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynDlistEdgeCases | , |
| SingleElement_FirstEqualsLast | |||
| ) |
Definition at line 324 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynDlistEdgeCases | , |
| SingleElement_RemoveFirst | |||
| ) |
Definition at line 332 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynDlistEdgeCases | , |
| SingleElement_RemoveLast | |||
| ) |
Definition at line 339 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynListEdgeCases | , |
| AppendKeepsOrder | |||
| ) |
Definition at line 436 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynListEdgeCases | , |
| EmptyList_IsEmpty | |||
| ) |
Definition at line 416 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynListEdgeCases | , |
| EmptyList_RemoveThrows | |||
| ) |
Definition at line 422 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynListEdgeCases | , |
| InsertReverseOrder | |||
| ) |
Definition at line 447 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynListEdgeCases | , |
| SingleElement_InsertAndRemove | |||
| ) |
Definition at line 427 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynSetTreeEdgeCases | , |
| DuplicateInsert_ReturnsNull | |||
| ) |
Definition at line 633 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynSetTreeEdgeCases | , |
| EmptyTree_RemoveReturnsDefault | |||
| ) |
Definition at line 612 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynSetTreeEdgeCases | , |
| EmptyTree_SearchReturnsNull | |||
| ) |
Definition at line 605 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynSetTreeEdgeCases | , |
| EmptyTree_SizeIsZero | |||
| ) |
Definition at line 599 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynSetTreeEdgeCases | , |
| ExtremeValues | |||
| ) |
Definition at line 703 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynSetTreeEdgeCases | , |
| InorderTraversal | |||
| ) |
Definition at line 691 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynSetTreeEdgeCases | , |
| RemoveMax | |||
| ) |
Definition at line 671 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynSetTreeEdgeCases | , |
| RemoveMiddle | |||
| ) |
Definition at line 681 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynSetTreeEdgeCases | , |
| RemoveMin | |||
| ) |
Definition at line 661 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynSetTreeEdgeCases | , |
| SingleElement_Insert | |||
| ) |
Definition at line 617 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynSetTreeEdgeCases | , |
| SingleElement_MinMax | |||
| ) |
Definition at line 626 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynSetTreeEdgeCases | , |
| SortedInsert_Ascending | |||
| ) |
Definition at line 641 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | DynSetTreeEdgeCases | , |
| SortedInsert_Descending | |||
| ) |
Definition at line 651 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ODhashTableEdgeCases | , |
| DuplicateInsert_ReturnsNull | |||
| ) |
Definition at line 500 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ODhashTableEdgeCases | , |
| EmptyTable_RemoveThrows | |||
| ) |
Definition at line 481 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ODhashTableEdgeCases | , |
| EmptyTable_SearchReturnsNull | |||
| ) |
Definition at line 474 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ODhashTableEdgeCases | , |
| EmptyTable_SizeIsZero | |||
| ) |
Definition at line 468 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ODhashTableEdgeCases | , |
| HashCollisions | |||
| ) |
Definition at line 508 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ODhashTableEdgeCases | , |
| RemoveNonExistent | |||
| ) |
Definition at line 524 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ODhashTableEdgeCases | , |
| SingleElement_InsertSearchRemove | |||
| ) |
Definition at line 486 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | ODhashTableEdgeCases | , |
| ZeroAndNegativeKeys | |||
| ) |
Definition at line 533 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | OLhashTableEdgeCases | , |
| EmptyTable_SearchReturnsNull | |||
| ) |
Definition at line 560 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | OLhashTableEdgeCases | , |
| EmptyTable_SizeIsZero | |||
| ) |
Definition at line 554 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | OLhashTableEdgeCases | , |
| LinearProbingCollisions | |||
| ) |
Definition at line 576 of file container_edge_cases_test.cc.
References Aleph::maps().
| TEST_F | ( | OLhashTableEdgeCases | , |
| SingleElement_Operations | |||
| ) |
Definition at line 565 of file container_edge_cases_test.cc.
References Aleph::maps().