summaryrefslogtreecommitdiff
path: root/ccan/aga/test
AgeCommit message (Collapse)Author
2015-08-02aga: Add lazytrie testcaseDavid Gibson
This adds a more complex testcase to the aga module. This one is a trie (basically a radix tree for strings). It demonstrates different ways of constructing edge information from an internal representation than the existing testcases. Importantly, it also demonstrates aga's ability to cope with the edge function lazily constructing nodes on the fly. Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2015-08-02aga: Testcase for attempt to run concurrent algorithmsDavid Gibson
The aga algorithms can't be run concurrently, because they store state information in the aga_node structures. However, they are supposed to detect an attempt to re-enter and safely report an error. This adds a testcase for this. Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2015-08-02aga: Breadth first searchDavid Gibson
This implements breadth first search for the abstract graph algorithms module. Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2015-08-02aga: Depth first searchDavid Gibson
This implements depth first search for the abstract graph algorithms module. Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2015-08-02aga: Simple test graphsDavid Gibson
This adds code for a number of example graphs for use in tests of the aga module. They also demonstrate several different ways of constructing graphs using the aga callbacks. It adds one actual testcase, which just verifies that the example graph look like what they're supposed to. Specifically it computes a set of adjacency lists for the example graphs from the callback code, then compares that to a canned example of what it should be. Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2015-08-02aga: Abstract Graph AlgorithmsDavid Gibson
New module. This patch just adds the module, with some generic helper routines, no actual algorithms are implemented yet. Signed-off-by: David Gibson <david@gibson.dropbear.id.au>