X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=test%2Fbasic.c;fp=test%2Fbasic.c;h=b373581dae76145f621b25bedf1c236caa7d1418;hb=c0da99fc9f3d0b148807c4679ffa69840646e70b;hp=0000000000000000000000000000000000000000;hpb=fee97d39829f1b54176d9db75d84fc2bd8d023df;p=meshlink diff --git a/test/basic.c b/test/basic.c new file mode 100644 index 00000000..b373581d --- /dev/null +++ b/test/basic.c @@ -0,0 +1,62 @@ +#include + +#include "meshlink.h" + +int main(int argc, char *argv[]) { + // Open a new meshlink instance. + + meshlink_handle_t *mesh = meshlink_open("basic_conf", "foo"); + if(!mesh) + return 1; + + // Check that our own node exists. + + meshlink_node_t *self = meshlink_get_node(mesh, "foo"); + if(!self) + return 1; + if(strcmp(self->name, "foo")) + return 1; + + // Start and stop the mesh. + + if(!meshlink_start(mesh)) + return 1; + meshlink_stop(mesh); + + // Make sure we can start and stop the mesh again. + + if(!meshlink_start(mesh)) + return 1; + meshlink_stop(mesh); + + // Close the mesh and open it again, now with a different name parameter. + + meshlink_close(mesh); + + // Check that the name is ignored now, and that we still are "foo". + + mesh = meshlink_open("basic_conf", "bar"); + if(!mesh) + return 1; + + if(meshlink_get_node(mesh, "bar")) + return 1; + + self = meshlink_get_node(mesh, "foo"); + if(!self) + return 1; + if(strcmp(self->name, "foo")) + return 1; + + // Start and stop the mesh. + + if(!meshlink_start(mesh)) + return 1; + meshlink_stop(mesh); + + // That's it. + + meshlink_close(mesh); + + return 0; +}