I'm happy with the status now. Here are the stats:
[ebb.git] / tcp_server_test.c
blobfa0fa099c21f1bb172a71fd7c2003668d20f7fa8
1 #include "tcp_server.h"
2 #include <stdio.h>
3 #include <stdlib.h>
5 /* Unit tests */
6 void unit_test_error( const gchar *log_domain
7 , GLogLevelFlags log_level
8 , const gchar *message
9 , gpointer user_data
12 printf("ERROR(%d) %s\n", log_level, message);
13 if(log_level < G_LOG_LEVEL_ERROR) { exit(1); }
16 GString *unit_test_input;
18 void unit_test_read_cb(char *buffer, int length, void *data)
20 tcp_client *client = (tcp_client*)(data);
21 GString *reversed = g_string_new(g_utf8_strreverse(buffer, length));
23 //g_string_append_c(reversed, '\n');
25 g_string_append_len(unit_test_input, buffer, length);
27 tcp_client_write(client, reversed->str, reversed->len);
30 void unit_test_accept(tcp_server *server, tcp_client *client, void *data)
32 fprintf(stdout, "Connection\n");
33 client->read_cb = unit_test_read_cb;
34 client->read_cb_data = client;
36 //tcp_client_close(client);
37 //tcp_server_close(server);
40 int main(void)
42 tcp_server *server;
43 unit_test_input = g_string_new(NULL);
44 server = tcp_server_new(unit_test_error);
46 g_log_set_handler (TCP_LOG_DOMAIN, G_LOG_LEVEL_MASK | G_LOG_FLAG_FATAL
47 | G_LOG_FLAG_RECURSION, unit_test_error, NULL);
49 fprintf(stdout, "Starting server at 0.0.0.0 31337\n");
51 tcp_server_listen(server, "localhost", 31337, 1024, unit_test_accept, NULL);
53 tcp_server_close(server);
55 return 0; // success