aboutsummaryrefslogtreecommitdiffstats
path: root/libglouglou/tests/connect.c
diff options
context:
space:
mode:
Diffstat (limited to 'libglouglou/tests/connect.c')
-rw-r--r--libglouglou/tests/connect.c22
1 files changed, 18 insertions, 4 deletions
diff --git a/libglouglou/tests/connect.c b/libglouglou/tests/connect.c
index 6c33e61..361daf8 100644
--- a/libglouglou/tests/connect.c
+++ b/libglouglou/tests/connect.c
@@ -2,22 +2,36 @@
#include "../libglouglou.h"
+int connect_ok = 0;
+
+int
+handle_conn(struct gg_server *s, int client_id, struct sockaddr_in *addr)
+{
+ connect_ok = 1;
+ return 0;
+}
+
int
main(void)
{
struct event_base *ev_base;
ev_base = event_base_new();
- if (!gg_server_start(ev_base, "127.0.0.1", 12345, NULL, NULL)) {
- printf("gg_server_start returned NULL\n");
+ if (!gg_server_start(ev_base, "127.0.0.1", 12345, handle_conn, NULL)) {
+ printf("error: gg_server_start returned NULL\n");
return 1;
}
if (!gg_client_connect(ev_base, "127.0.0.1", 12345, NULL, NULL)) {
- printf("gg_client_connect returned NULL\n");
+ printf("error: gg_client_connect returned NULL\n");
return 1;
}
- event_dispatch();
+ event_base_loop(ev_base, EVLOOP_ONCE);
+
+ if (connect_ok == 0) {
+ printf("error: connect_ok == 0\n");
+ return 1;
+ }
return 0;
}