X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Faga%2Ftest%2Fapi-dijkstra.c;fp=ccan%2Faga%2Ftest%2Fapi-dijkstra.c;h=9be747d976e9f671b3fb5865f77c98c3e6884ff4;hb=a2eaae42b58a44d6f88f5e20e4a7d7cdbde9edae;hp=08b472884728904fb99d53606cc6479d3451b1fa;hpb=1e742b68d026a258ccf99338f05daf8b694978a3;p=ccan diff --git a/ccan/aga/test/api-dijkstra.c b/ccan/aga/test/api-dijkstra.c index 08b47288..9be747d9 100644 --- a/ccan/aga/test/api-dijkstra.c +++ b/ccan/aga/test/api-dijkstra.c @@ -35,8 +35,9 @@ static void test_parallel(void) struct parallel_graph pg; aga_icost_t cost; struct aga_node *node; + const void *edge; - parallel_graph_init(&pg, 3); + parallel_graph_init(&pg, 3, 0); ok1(aga_dijkstra_start(&pg.sg.g, &pg.sg.nodes[1]) == 0); ok1(aga_dijkstra_step(&pg.sg.g) == &pg.sg.nodes[1]); @@ -45,7 +46,7 @@ static void test_parallel(void) ok1(aga_dijkstra_path(&pg.sg.g, &pg.sg.nodes[1], &cost, NULL, NULL)); ok1(cost == 0); ok1(aga_dijkstra_path(&pg.sg.g, &pg.sg.nodes[2], &cost, &node, NULL)); - ok1(cost == 1); + ok1(cost == 2); ok1(node == &pg.sg.nodes[1]); aga_finish(&pg.sg.g); @@ -56,6 +57,15 @@ static void test_parallel(void) ok1(cost == 0); ok1(!aga_dijkstra_path(&pg.sg.g, &pg.sg.nodes[1], NULL, NULL, NULL)); aga_finish(&pg.sg.g); + + + parallel_graph_init(&pg, 3, 2); + ok1(aga_dijkstra_start(&pg.sg.g, &pg.sg.nodes[1]) == 0); + ok1(aga_dijkstra_path(&pg.sg.g, &pg.sg.nodes[2], &cost, &node, &edge)); + ok1(cost == 1); + ok1(node == &pg.sg.nodes[1]); + ok1(ptr2int(edge) == 2); + aga_finish(&pg.sg.g); } #define FULL_LEN 4 @@ -206,7 +216,7 @@ static void test_traversal1(void) int main(void) { - plan_tests(7 + 15 + plan_tests(7 + 20 + FULL_LEN * (1 + FULL_LEN*4) + CHAIN_LEN * (1 + CHAIN_LEN*2) + 12 + 32);