|
Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
|
Comprehensive tests for Dial.H. More...
#include <gtest/gtest.h>#include <cstdint>#include <Dial.H>#include <Dijkstra.H>#include <tpl_graph.H>Go to the source code of this file.
Classes | |
| struct | Int8Dist |
Typedefs | |
| using | GT = List_Graph< Graph_Node< int >, Graph_Arc< int > > |
| using | Node = GT::Node |
| using | Arc = GT::Arc |
| using | DGT = List_Digraph< Graph_Node< int >, Graph_Arc< int > > |
| using | DNode = DGT::Node |
| using | DArc = DGT::Arc |
Functions | |
| TEST (Dial, BasicShortestPath) | |
| TEST (Dial, PathToSelf) | |
| TEST (Dial, NoPathExists) | |
| TEST (Dial, SingleNode) | |
| TEST (Dial, LinearChain) | |
| TEST (Dial, AllZeroWeights) | |
| TEST (Dial, WeightOneEdges) | |
| TEST (Dial, NullNodeValidation) | |
| TEST (Dial, NegativeWeightValidation) | |
| TEST (Dial, PaintAndGetMinPath) | |
| TEST (Dial, GetDistanceAfterPainting) | |
| TEST (Dial, GetDistanceBeforePainting) | |
| TEST (Dial, CrossValidationWithDijkstra) | |
| TEST (Dial, DigraphBasic) | |
| TEST (Dial, DigraphNoReturn) | |
| TEST (Dial, MultipleComputations) | |
| TEST (Dial, LargeLinearGraph) | |
| TEST (Dial, LargeWeights) | |
| TEST (Dial, PathNodeVerification) | |
| TEST (Dial, CompleteGraphK4) | |
| TEST (Dial, GraphWithCycle) | |
| TEST (Dial, StateGetters) | |
| TEST (Dial, DisconnectedPainting) | |
| TEST (Dial, RelaxationCorrectness) | |
| TEST (Dial, StarGraph) | |
| TEST (Dial, RoadNetworkExample) | |
| TEST (Dial, LargerCrossValidation) | |
| TEST (Dial, DistanceTypeOverflowValidation) | |
| TEST (Dial, BucketUpperBoundValidation) | |
| TEST (Dial, ParallelEdgesKeepSingleParentArcMarked) | |
Comprehensive tests for Dial.H.
Tests cover correctness, edge cases, validation, and cross-checks against Dijkstra's algorithm for integer-weighted graphs.
Definition in file test_dial.cc.
Definition at line 23 of file test_dial.cc.
Definition at line 27 of file test_dial.cc.
| using DGT = List_Digraph<Graph_Node<int>, Graph_Arc<int> > |
Definition at line 25 of file test_dial.cc.
Definition at line 26 of file test_dial.cc.
| using GT = List_Graph<Graph_Node<int>, Graph_Arc<int> > |
Definition at line 21 of file test_dial.cc.
Definition at line 22 of file test_dial.cc.
| TEST | ( | Dial | , |
| AllZeroWeights | |||
| ) |
Definition at line 136 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| BasicShortestPath | |||
| ) |
Definition at line 42 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| BucketUpperBoundValidation | |||
| ) |
Definition at line 677 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| CompleteGraphK4 | |||
| ) |
Definition at line 452 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| CrossValidationWithDijkstra | |||
| ) |
Definition at line 279 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| DigraphBasic | |||
| ) |
Definition at line 314 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp().
| TEST | ( | Dial | , |
| DigraphNoReturn | |||
| ) |
Definition at line 334 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp().
| TEST | ( | Dial | , |
| DisconnectedPainting | |||
| ) |
| TEST | ( | Dial | , |
| DistanceTypeOverflowValidation | |||
| ) |
Definition at line 658 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| GetDistanceAfterPainting | |||
| ) |
| TEST | ( | Dial | , |
| GetDistanceBeforePainting | |||
| ) |
Definition at line 267 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| GraphWithCycle | |||
| ) |
Definition at line 477 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| LargeLinearGraph | |||
| ) |
Definition at line 376 of file test_dial.cc.
References Aleph::Array< T >::create(), Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), N, and nodes.
| TEST | ( | Dial | , |
| LargerCrossValidation | |||
| ) |
Definition at line 626 of file test_dial.cc.
References Aleph::Array< T >::create(), Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), N, and nodes.
| TEST | ( | Dial | , |
| LargeWeights | |||
| ) |
Definition at line 398 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| LinearChain | |||
| ) |
Definition at line 114 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| MultipleComputations | |||
| ) |
Definition at line 354 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| NegativeWeightValidation | |||
| ) |
Definition at line 194 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), IS_ARC_VISITED, IS_NODE_VISITED, NODE_COOKIE, and Aleph::Spanning_Tree.
| TEST | ( | Dial | , |
| NoPathExists | |||
| ) |
Definition at line 82 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), and Aleph::Path< GT >::is_empty().
| TEST | ( | Dial | , |
| NullNodeValidation | |||
| ) |
Definition at line 179 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| PaintAndGetMinPath | |||
| ) |
| TEST | ( | Dial | , |
| ParallelEdgesKeepSingleParentArcMarked | |||
| ) |
Definition at line 695 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), IS_ARC_VISITED, Aleph::Dial_Min_Paths< GT, Distance, Itor, SA >::paint_min_paths_tree(), and Aleph::Spanning_Tree.
| TEST | ( | Dial | , |
| PathNodeVerification | |||
| ) |
| TEST | ( | Dial | , |
| PathToSelf | |||
| ) |
Definition at line 67 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| RelaxationCorrectness | |||
| ) |
Definition at line 543 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| RoadNetworkExample | |||
| ) |
Definition at line 600 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), and Aleph::Path< GT >::is_empty().
| TEST | ( | Dial | , |
| SingleNode | |||
| ) |
Definition at line 99 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| StarGraph | |||
| ) |
| TEST | ( | Dial | , |
| StateGetters | |||
| ) |
Definition at line 499 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().
| TEST | ( | Dial | , |
| WeightOneEdges | |||
| ) |
Definition at line 156 of file test_dial.cc.
References Aleph::divide_and_conquer_partition_dp(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), and Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node().