]> git.meshlink.io Git - meshlink/commitdiff
Add missing basic.c test.
authorGuus Sliepen <guus@meshlink.io>
Sun, 25 May 2014 20:05:50 +0000 (22:05 +0200)
committerGuus Sliepen <guus@meshlink.io>
Sun, 25 May 2014 20:05:50 +0000 (22:05 +0200)
test/basic.c [new file with mode: 0644]

diff --git a/test/basic.c b/test/basic.c
new file mode 100644 (file)
index 0000000..b373581
--- /dev/null
@@ -0,0 +1,62 @@
+#include <string.h>
+
+#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;
+}