|
Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
|
GoogleTest suite for Kruskal.H. More...
#include <gtest/gtest.h>#include <limits>#include <random>#include <set>#include <vector>#include <Kruskal.H>#include <tpl_graph.H>#include <tpl_sgraph.H>#include <tpl_agraph.H>Go to the source code of this file.
Typedefs | |
| using | GT = List_Graph< Graph_Node< int >, Graph_Arc< int > > |
| using | Node = GT::Node |
| using | Arc = GT::Arc |
| using | AGT = Array_Graph< Graph_Anode< int >, Graph_Aarc< int > > |
| using | ANode = AGT::Node |
| using | AArc = AGT::Arc |
Functions | |
| TEST (KruskalTest, SimpleConnectedGraph) | |
| TEST (KruskalTest, SingleNodeGraph) | |
| TEST (KruskalTest, TwoNodesOneArc) | |
| TEST (KruskalTest, LinearChain) | |
| TEST (KruskalTest, CompleteGraphK4) | |
| TEST (KruskalTest, StarGraph) | |
| TEST (KruskalTest, GridGraph3x3) | |
| TEST (KruskalTest, DiamondGraph) | |
| TEST (KruskalTest, AllEqualWeights) | |
| TEST (KruskalTest, UniqueWeights) | |
| TEST (KruskalTest, ZeroWeightEdges) | |
| TEST (KruskalTest, LargeWeights) | |
| TEST (KruskalTest, ParallelEdges) | |
| TEST (KruskalTest, SelfLoop) | |
| TEST (KruskalTest, CycleGraph) | |
| TEST (KruskalTest, PaintMode) | |
| TEST (KruskalTest, TreeBuildingMode) | |
| TEST (KruskalTest, TreeHasCorrectArcCount) | |
| TEST (KruskalTest, AllNodesInTree) | |
| TEST (KruskalTest, TreeIsConnected) | |
| TEST (KruskalTest, BitFlagsCorrectlySet) | |
| TEST (KruskalTest, NodeMappingCorrect) | |
| TEST (KruskalTest, ArcMappingCorrect) | |
| TEST (KruskalTest, DigraphRejection) | |
| TEST (KruskalTest, EmptyGraph) | |
| TEST (KruskalTest, CustomDistanceFunctor) | |
| TEST (KruskalTest, ArrayGraphType) | |
| TEST (KruskalTest, MultipleCallsSameInstance) | |
| TEST (KruskalTest, LargeConnectedGraph) | |
| TEST (KruskalTest, PaintThenBuildTree) | |
| TEST (KruskalTest, DisconnectedGraphCreatesForest) | |
| TEST (KruskalTest, VerifyMinimumWeightProperty) | |
| TEST (KruskalTest, RepeatedEdgesSameNodes) | |
| TEST (KruskalTest, IsPaintedGetter) | |
| int | main (int argc, char **argv) |
GoogleTest suite for Kruskal.H.
This file contains exhaustive tests to verify the correctness of Kruskal's minimum spanning tree algorithm implementation in Aleph-w.
Tests for Test Kruskal
Definition in file test_kruskal.cc.
Definition at line 35 of file test_kruskal.cc.
| using AGT = Array_Graph<Graph_Anode<int>, Graph_Aarc<int> > |
Definition at line 33 of file test_kruskal.cc.
Definition at line 34 of file test_kruskal.cc.
Definition at line 30 of file test_kruskal.cc.
| using GT = List_Graph<Graph_Node<int>, Graph_Arc<int> > |
Definition at line 28 of file test_kruskal.cc.
Definition at line 29 of file test_kruskal.cc.
| int main | ( | int | argc, |
| char ** | argv | ||
| ) |
Definition at line 959 of file test_kruskal.cc.
References Aleph::maps().
| TEST | ( | KruskalTest | , |
| AllEqualWeights | |||
| ) |
| TEST | ( | KruskalTest | , |
| AllNodesInTree | |||
| ) |
Definition at line 574 of file test_kruskal.cc.
References Aleph::DynList< T >::insert(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), and Aleph::maps().
| TEST | ( | KruskalTest | , |
| ArcMappingCorrect | |||
| ) |
Definition at line 673 of file test_kruskal.cc.
References Aleph::DynList< T >::insert(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), and Aleph::maps().
| TEST | ( | KruskalTest | , |
| ArrayGraphType | |||
| ) |
| TEST | ( | KruskalTest | , |
| BitFlagsCorrectlySet | |||
| ) |
Definition at line 628 of file test_kruskal.cc.
References Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), IS_ARC_VISITED, Aleph::maps(), and Aleph::Spanning_Tree.
| TEST | ( | KruskalTest | , |
| CompleteGraphK4 | |||
| ) |
| TEST | ( | KruskalTest | , |
| CustomDistanceFunctor | |||
| ) |
Definition at line 724 of file test_kruskal.cc.
References GraphCommon< GT, Node, Arc >::get_num_arcs(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), and Aleph::maps().
| TEST | ( | KruskalTest | , |
| CycleGraph | |||
| ) |
Definition at line 480 of file test_kruskal.cc.
References GraphCommon< GT, Node, Arc >::get_num_arcs(), GraphCommon< GT, Node, Arc >::get_num_nodes(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), Aleph::maps(), nodes, and num_nodes.
| TEST | ( | KruskalTest | , |
| DiamondGraph | |||
| ) |
| TEST | ( | KruskalTest | , |
| DigraphRejection | |||
| ) |
Definition at line 697 of file test_kruskal.cc.
References Aleph::maps().
| TEST | ( | KruskalTest | , |
| DisconnectedGraphCreatesForest | |||
| ) |
| TEST | ( | KruskalTest | , |
| EmptyGraph | |||
| ) |
Definition at line 711 of file test_kruskal.cc.
References GraphCommon< GT, Node, Arc >::get_num_arcs(), GraphCommon< GT, Node, Arc >::get_num_nodes(), and Aleph::maps().
| TEST | ( | KruskalTest | , |
| GridGraph3x3 | |||
| ) |
| TEST | ( | KruskalTest | , |
| IsPaintedGetter | |||
| ) |
Definition at line 933 of file test_kruskal.cc.
References Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), and Aleph::maps().
| TEST | ( | KruskalTest | , |
| LargeConnectedGraph | |||
| ) |
Definition at line 794 of file test_kruskal.cc.
References GraphCommon< GT, Node, Arc >::get_num_arcs(), GraphCommon< GT, Node, Arc >::get_num_nodes(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), Aleph::maps(), nodes, num_nodes, and rng.
| TEST | ( | KruskalTest | , |
| LargeWeights | |||
| ) |
Definition at line 417 of file test_kruskal.cc.
References GraphCommon< GT, Node, Arc >::get_num_arcs(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), and Aleph::maps().
| TEST | ( | KruskalTest | , |
| LinearChain | |||
| ) |
Definition at line 209 of file test_kruskal.cc.
References GraphCommon< GT, Node, Arc >::get_num_arcs(), GraphCommon< GT, Node, Arc >::get_num_nodes(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), Aleph::maps(), nodes, and num_nodes.
| TEST | ( | KruskalTest | , |
| MultipleCallsSameInstance | |||
| ) |
Definition at line 768 of file test_kruskal.cc.
References Aleph::maps().
| TEST | ( | KruskalTest | , |
| NodeMappingCorrect | |||
| ) |
Definition at line 648 of file test_kruskal.cc.
References Aleph::DynList< T >::insert(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), and Aleph::maps().
| TEST | ( | KruskalTest | , |
| PaintMode | |||
| ) |
Definition at line 505 of file test_kruskal.cc.
References GraphCommon< GT, Node, Arc >::get_num_nodes(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), and Aleph::maps().
| TEST | ( | KruskalTest | , |
| PaintThenBuildTree | |||
| ) |
Definition at line 830 of file test_kruskal.cc.
References Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), and Aleph::maps().
| TEST | ( | KruskalTest | , |
| ParallelEdges | |||
| ) |
| TEST | ( | KruskalTest | , |
| RepeatedEdgesSameNodes | |||
| ) |
Definition at line 911 of file test_kruskal.cc.
References Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), and Aleph::maps().
| TEST | ( | KruskalTest | , |
| SelfLoop | |||
| ) |
| TEST | ( | KruskalTest | , |
| SimpleConnectedGraph | |||
| ) |
| TEST | ( | KruskalTest | , |
| SingleNodeGraph | |||
| ) |
Definition at line 178 of file test_kruskal.cc.
References GraphCommon< GT, Node, Arc >::get_num_arcs(), GraphCommon< GT, Node, Arc >::get_num_nodes(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), and Aleph::maps().
| TEST | ( | KruskalTest | , |
| StarGraph | |||
| ) |
| TEST | ( | KruskalTest | , |
| TreeBuildingMode | |||
| ) |
| TEST | ( | KruskalTest | , |
| TreeHasCorrectArcCount | |||
| ) |
Definition at line 550 of file test_kruskal.cc.
References GraphCommon< GT, Node, Arc >::get_num_arcs(), GraphCommon< GT, Node, Arc >::get_num_nodes(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), Aleph::maps(), nodes, and num_nodes.
| TEST | ( | KruskalTest | , |
| TreeIsConnected | |||
| ) |
Definition at line 602 of file test_kruskal.cc.
References Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), Aleph::maps(), nodes, num_nodes, and rng.
| TEST | ( | KruskalTest | , |
| TwoNodesOneArc | |||
| ) |
| TEST | ( | KruskalTest | , |
| UniqueWeights | |||
| ) |
Definition at line 372 of file test_kruskal.cc.
References Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), and Aleph::maps().
| TEST | ( | KruskalTest | , |
| VerifyMinimumWeightProperty | |||
| ) |
Definition at line 880 of file test_kruskal.cc.
References Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_arc(), Aleph::List_Graph< _Graph_Node, _Graph_Arc >::insert_node(), and Aleph::maps().
| TEST | ( | KruskalTest | , |
| ZeroWeightEdges | |||
| ) |