X-Git-Url: http://git.meshlink.io/?p=meshlink;a=blobdiff_plain;f=test%2Fimport-export.c;h=bffe0fc49cabfd9aae8b8022b723106c43122a63;hp=8bc41c1b3c06fad7ac11b7fba4956f41abfe5dac;hb=be83b0af60449c7b35d17d97f2e6dc12f611e831;hpb=529b8fab8c21e7ae5af91d742ff202eab38e51f3 diff --git a/test/import-export.c b/test/import-export.c index 8bc41c1b..bffe0fc4 100644 --- a/test/import-export.c +++ b/test/import-export.c @@ -58,6 +58,16 @@ int main() { assert(meshlink_import(mesh1, data)); free(data); + // Check that foo knows bar, but that it is not reachable. + + time_t last_reachable; + time_t last_unreachable; + meshlink_node_t *bar = meshlink_get_node(mesh1, "bar"); + assert(bar); + assert(!meshlink_get_node_reachability(mesh1, bar, &last_reachable, &last_unreachable)); + assert(!last_reachable); + assert(!last_unreachable); + // Start both instances meshlink_set_node_status_cb(mesh1, status_cb); @@ -80,6 +90,24 @@ int main() { assert(pmtu); + // Check that we now have reachability information + + assert(meshlink_get_node_reachability(mesh1, bar, &last_reachable, &last_unreachable)); + assert(last_reachable); + assert(!last_unreachable); + + // Stop the meshes. + + meshlink_stop(mesh1); + meshlink_stop(mesh2); + + // Check that bar is no longer reachable + + assert(!meshlink_get_node_reachability(mesh1, bar, &last_reachable, &last_unreachable)); + assert(last_reachable); + assert(last_unreachable); + assert(last_reachable <= last_unreachable); + // Clean up. meshlink_close(mesh2);