summaryrefslogtreecommitdiff
path: root/tests/unit/mongo/client/disconnect.c
diff options
context:
space:
mode:
authorJörg Frings-Fürst <debian@jff-webhosting.net>2014-12-02 10:06:21 +0100
committerJörg Frings-Fürst <debian@jff-webhosting.net>2014-12-02 10:06:21 +0100
commitfd841e416881cc0392e61ec312c1870f3a0004bd (patch)
tree8357ba56e79d614ba57f722e7878b853591dc339 /tests/unit/mongo/client/disconnect.c
Initial import of libmongo-client version 0.1.8-2
Diffstat (limited to 'tests/unit/mongo/client/disconnect.c')
-rw-r--r--tests/unit/mongo/client/disconnect.c32
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/unit/mongo/client/disconnect.c b/tests/unit/mongo/client/disconnect.c
new file mode 100644
index 0000000..1b0be93
--- /dev/null
+++ b/tests/unit/mongo/client/disconnect.c
@@ -0,0 +1,32 @@
+#include "test.h"
+#include "tap.h"
+#include "mongo-client.h"
+
+#include "libmongo-private.h"
+#include <errno.h>
+
+void
+test_mongo_disconnect (void)
+{
+ mongo_connection *conn;
+
+ conn = g_new0 (mongo_connection, 1);
+ conn->fd = -1;
+
+ errno = 0;
+ mongo_disconnect (NULL);
+ ok (errno == ENOTCONN,
+ "mongo_disconnect() fails with ENOTCONN when passed a NULL connection");
+
+ mongo_disconnect (conn);
+ ok (errno == 0,
+ "mongo_disconnect() works");
+
+ conn = g_new0 (mongo_connection, 1);
+ conn->fd = 100;
+ mongo_disconnect (conn);
+ ok (errno == 0,
+ "mongo_disconnect() works, even with a bogus FD");
+}
+
+RUN_TEST (3, mongo_disconnect);