diff options
Diffstat (limited to 'libglouglou/tests/connect.c')
-rw-r--r-- | libglouglou/tests/connect.c | 22 |
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; } |