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

Tests for tpl_graph_utils.H. More...

#include <gtest/gtest.h>
#include <functional>
#include <queue>
#include <random>
#include <set>
#include <tuple>
#include <vector>
#include <tpl_dynArray.H>
#include <tpl_graph.H>
#include <tpl_graph_utils.H>
Include dependency graph for tpl_graph_utils_test.cc:

Go to the source code of this file.

Functions

 TEST (GraphUtilsTraversal, DepthFirstTraversalCountsReachableNodes)
 
 TEST (GraphUtilsTraversal, DepthFirstTraversalProvidesFromArc)
 
 TEST (GraphUtilsTraversal, DepthFirstTraversalStopsImmediately)
 
 TEST (GraphUtilsTraversal, BreadthFirstTraversalCountsReachableNodes)
 
 TEST (GraphUtilsTraversal, BreadthFirstTraversalProvidesFromArc)
 
 TEST (GraphUtilsTraversal, BreadthFirstTraversalStopsImmediately)
 
 TEST (GraphUtilsTraversal, DepthFirstTraversalFunctorHonorsArcFilter)
 
 TEST (GraphUtilsTraversal, BreadthFirstTraversalFunctorHonorsArcFilter)
 
 TEST (GraphUtilsPath, FindPathBreadthFirstStartEqualsEnd)
 
 TEST (GraphUtilsPath, FindPathBreadthFirstReturnsEmptyPathWhenUnreachable)
 
 TEST (GraphUtilsPath, FindPathBreadthFirstFindsShortestByEdges)
 
 TEST (GraphUtilsPath, FindPathBreadthFirstRandomGraphsMatchesReferenceBfs)
 
 TEST (GraphUtilsProperties, TestConnectivityBasics)
 
 TEST (GraphUtilsProperties, TestConnectivityRejectsDigraphs)
 
 TEST (GraphUtilsProperties, TestForCycleBehavior)
 
 TEST (GraphUtilsProperties, AcyclicAndHasCycleAgreement)
 
 TEST (GraphUtilsProperties, AcyclicRejectsDigraphs)
 
 TEST (GraphUtilsProperties, TestForPathBasicAndRegression)
 
 TEST (GraphUtilsComponents, InconnectedComponentsReturnsMappedSubgraphs)
 
 TEST (GraphUtilsComponents, BuildSubgraphCopiesReachableComponent)
 
 TEST (GraphUtilsSpanningTrees, DepthFirstSpanningTreeIsTreeAndMapped)
 
 TEST (GraphUtilsSpanningTrees, BreadthFirstSpanningTreeIsTreeAndMapped)
 
 TEST (GraphUtilsSpanningTrees, BuildSpanningTreeFromArcsUsesOneWayMapping)
 
 TEST (GraphUtilsCutNodes, ComputeCutNodesClearsCookiesAndFindsArticulations)
 
 TEST (GraphUtilsCutNodes, PaintAndExtractCutGraphOnChain)
 
 TEST (GraphUtilsCutNodes, PaintAndExtractBlocksOnStar)
 
 TEST (GraphUtilsDigraph, InvertDigraphPreservesIsolatedNodesAndMapsArcs)
 
 TEST (GraphUtilsDigraph, InvertDigraphRejectsUndirectedGraphs)
 
 TEST (GraphUtilsDigraph, InvertDigraphFunctorFiltersArcs)
 
 TEST (GraphUtilsCosts, DftDistConstants)
 
 TEST (GraphUtilsCosts, GetMinPathReconstructsCookieChainAndComputesCost)
 
 TEST (GraphUtilsCosts, TotalCostSumsArcsAndAccumulatorWorks)
 

Detailed Description

Tests for tpl_graph_utils.H.

These tests cover:

  • Depth/breadth traversals (free functions and functors)
  • Path search (BFS)
  • Connectivity, reachability, cycle checks
  • Connected components extraction and mapping
  • Spanning trees (DFS/BFS) and mapping
  • Cut nodes / painting / cut graph extraction
  • Digraph inversion (transpose) and mapping
  • get_min_path() reconstruction and Total_Cost aggregation

Definition in file tpl_graph_utils_test.cc.

Function Documentation

◆ TEST() [1/32]

◆ TEST() [2/32]

◆ TEST() [3/32]

TEST ( GraphUtilsCosts  ,
DftDistConstants   
)

Definition at line 813 of file tpl_graph_utils_test.cc.

References Aleph::maps().

◆ TEST() [4/32]

TEST ( GraphUtilsCosts  ,
GetMinPathReconstructsCookieChainAndComputesCost   
)

◆ TEST() [5/32]

◆ TEST() [6/32]

TEST ( GraphUtilsCutNodes  ,
ComputeCutNodesClearsCookiesAndFindsArticulations   
)

◆ TEST() [7/32]

◆ TEST() [8/32]

◆ TEST() [9/32]

TEST ( GraphUtilsDigraph  ,
InvertDigraphFunctorFiltersArcs   
)

◆ TEST() [10/32]

TEST ( GraphUtilsDigraph  ,
InvertDigraphPreservesIsolatedNodesAndMapsArcs   
)

◆ TEST() [11/32]

TEST ( GraphUtilsDigraph  ,
InvertDigraphRejectsUndirectedGraphs   
)

◆ TEST() [12/32]

◆ TEST() [13/32]

◆ TEST() [14/32]

TEST ( GraphUtilsPath  ,
FindPathBreadthFirstReturnsEmptyPathWhenUnreachable   
)

◆ TEST() [15/32]

◆ TEST() [16/32]

TEST ( GraphUtilsProperties  ,
AcyclicAndHasCycleAgreement   
)

◆ TEST() [17/32]

TEST ( GraphUtilsProperties  ,
AcyclicRejectsDigraphs   
)

Definition at line 473 of file tpl_graph_utils_test.cc.

References Aleph::is_graph_acyclique(), Aleph::maps(), and nodes.

◆ TEST() [18/32]

TEST ( GraphUtilsProperties  ,
TestConnectivityBasics   
)

◆ TEST() [19/32]

TEST ( GraphUtilsProperties  ,
TestConnectivityRejectsDigraphs   
)

Definition at line 432 of file tpl_graph_utils_test.cc.

References Aleph::maps(), nodes, and Aleph::test_connectivity().

◆ TEST() [20/32]

TEST ( GraphUtilsProperties  ,
TestForCycleBehavior   
)

◆ TEST() [21/32]

TEST ( GraphUtilsProperties  ,
TestForPathBasicAndRegression   
)

◆ TEST() [22/32]

◆ TEST() [23/32]

◆ TEST() [24/32]

◆ TEST() [25/32]

◆ TEST() [26/32]

TEST ( GraphUtilsTraversal  ,
BreadthFirstTraversalFunctorHonorsArcFilter   
)

◆ TEST() [27/32]

TEST ( GraphUtilsTraversal  ,
BreadthFirstTraversalProvidesFromArc   
)

◆ TEST() [28/32]

TEST ( GraphUtilsTraversal  ,
BreadthFirstTraversalStopsImmediately   
)

◆ TEST() [29/32]

◆ TEST() [30/32]

TEST ( GraphUtilsTraversal  ,
DepthFirstTraversalFunctorHonorsArcFilter   
)

◆ TEST() [31/32]

TEST ( GraphUtilsTraversal  ,
DepthFirstTraversalProvidesFromArc   
)

◆ TEST() [32/32]

TEST ( GraphUtilsTraversal  ,
DepthFirstTraversalStopsImmediately   
)