From 7be415d8259a1be20bf0249ce4b91dfa0cac70f8 Mon Sep 17 00:00:00 2001 From: Laurent Ghigonis Date: Thu, 29 Nov 2012 07:42:53 +0100 Subject: add a unittest for testing sending are receiving pkts --- libglouglou/tests/sendrecv.c | 51 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 libglouglou/tests/sendrecv.c diff --git a/libglouglou/tests/sendrecv.c b/libglouglou/tests/sendrecv.c new file mode 100644 index 0000000..f4702e8 --- /dev/null +++ b/libglouglou/tests/sendrecv.c @@ -0,0 +1,51 @@ +#include + +#include "../libglouglou.h" + +int srv_recv_ok = 0; +int cli_recv_ok = 0; + +int +srv_handle_packet(struct gg_server *srv, struct gg_user *usr, struct gg_packet *pkt) +{ + if (usr->id == 1) + srv_recv_ok = 1; + return 0; +} + +int +cli_handle_packet(struct gg_client *cli, struct gg_packet *pkt) +{ + cli_recv_ok = 1; + return 0; +} + +int +main(void) +{ + struct event_base *ev_base; + struct gg_server *srv; + struct gg_client *cli; + struct gg_packet pkt; + + ev_base = event_base_new(); + srv = gg_server_start(ev_base, "127.0.0.1", 12345, NULL, srv_handle_packet); + if (!srv) { + printf("error: gg_server_start returned NULL\n"); + return 1; + } + cli = gg_client_connect(ev_base, "127.0.0.1", 12345, NULL, cli_handle_packet); + if (!cli) { + printf("error: gg_client_connect returned NULL\n"); + return 1; + } + event_base_loop(ev_base, EVLOOP_ONCE); + event_base_loop(ev_base, EVLOOP_ONCE); + + if (srv_recv_ok == 0) + printf("error: srv_recv_ok == 0\n"); + if (cli_recv_ok == 0) + printf("error: cli_recv_ok == 0\n"); + + return (!srv_recv_ok || !cli_recv_ok); +} -- cgit v1.2.3-59-g8ed1b