cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=48db81cfb5e01e7993afa65b649de4e2c043b07d

commit 48db81cfb5e01e7993afa65b649de4e2c043b07d
Author: Srivardhan Hebbar <sri.heb...@samsung.com>
Date:   Wed Apr 22 14:26:57 2015 +0200

    ecore_con: add test cases to cover more ecore con functions.
    
    Summary:
    The dns lookup test would result in a crash unless 
https://phab.enlightenment.org/D2398 fix.
    Also added more functions to existing case to cover ecore_con.c
    
    Signed-off-by: Srivardhan Hebbar <sri.heb...@samsung.com>
    
    Reviewers: cedric
    
    Subscribers: cedric
    
    Differential Revision: https://phab.enlightenment.org/D2403
    
    Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/tests/ecore_con/ecore_con_test_ecore_con.c | 55 +++++++++++++++++++++++++-
 1 file changed, 53 insertions(+), 2 deletions(-)

diff --git a/src/tests/ecore_con/ecore_con_test_ecore_con.c 
b/src/tests/ecore_con/ecore_con_test_ecore_con.c
index 1d8379e..dc31d8e 100644
--- a/src/tests/ecore_con/ecore_con_test_ecore_con.c
+++ b/src/tests/ecore_con/ecore_con_test_ecore_con.c
@@ -27,6 +27,10 @@ _add(void *data, int type EINA_UNUSED, void *ev)
         fail_if (data != (void *) 1);
         fail_if (!event->client);
 
+        fprintf(stderr, "client fd: %d\n",
+                ecore_con_client_fd_get(event->client));
+        fail_unless(ecore_con_client_fd_get(event->client));
+
         printf("Client with ip %s, port %d, connected = %d!\n",
                ecore_con_client_ip_get(event->client),
                ecore_con_client_port_get(event->client),
@@ -79,8 +83,11 @@ _del(void *data , int type EINA_UNUSED, void *ev)
 
         printf("Lost client with ip %s!\n",
                ecore_con_client_ip_get(event->client));
+        fail_if(ecore_con_client_ip_get(event->client));
+
         printf("Client was connected for %0.3f seconds.\n",
                ecore_con_client_uptime_get(event->client));
+        fail_unless(ecore_con_client_uptime_get(event->client));
 
         del_data = ecore_con_client_del(event->client);
         fail_if (strcmp((char *)del_data, cdata));
@@ -93,7 +100,9 @@ _del(void *data , int type EINA_UNUSED, void *ev)
 
         fail_if (data != (void *) 2);
 
-        printf("Lost server with ip %s!\n", 
ecore_con_server_ip_get(event->server));
+        printf("Lost server with ip %s!\n",
+                ecore_con_server_ip_get(event->server));
+        fail_unless(ecore_con_server_ip_get(event->server));
 
         ecore_con_server_del(event->server);
      }
@@ -179,7 +188,7 @@ _dns_err(void *data, int type EINA_UNUSED, void *ev 
EINA_UNUSED)
 void _ecore_con_server_client_tests(Ecore_Con_Type compl_type, const char 
*name, Eina_Bool is_ssl, int server_port)
 {
    Ecore_Con_Server *server = NULL;
-   Ecore_Con_Server *client;
+   Ecore_Con_Server *client, *client2;
    Ecore_Con_Client *cl;
    const Eina_List *clients, *l;
    Ecore_Event_Handler *handlers[6];
@@ -248,6 +257,10 @@ void _ecore_con_server_client_tests(Ecore_Con_Type 
compl_type, const char *name,
                                      client_data);
    fail_if (client == NULL);
 
+   client2 = ecore_con_server_connect(compl_type, name, server_port,
+                                     client_data);
+   fail_if (client2 == NULL);
+
    if (is_ssl)
      {
         fail_unless(ecore_con_ssl_server_cafile_add(server, 
TESTS_SRC_DIR"/server.pem"));
@@ -259,6 +272,14 @@ void _ecore_con_server_client_tests(Ecore_Con_Type 
compl_type, const char *name,
 
    ecore_main_loop_begin();
 
+   fprintf(stderr, "server fd for client 1: %d\n",
+           ecore_con_server_fd_get(client));
+   fail_unless(ecore_con_server_fd_get(client));
+
+   fprintf(stderr, "server fd for client 2: %d\n",
+           ecore_con_server_fd_get(client2));
+   fail_unless(ecore_con_server_fd_get(client2));
+
    clients = ecore_con_server_clients_get(server);
    printf("Clients connected to this server when exiting: %d\n",
           eina_list_count(clients));
@@ -270,6 +291,9 @@ void _ecore_con_server_client_tests(Ecore_Con_Type 
compl_type, const char *name,
    printf("Server was up for %0.3f seconds\n",
           ecore_con_server_uptime_get(server));
 
+   del_ret = ecore_con_server_del(client2);
+   fail_if (del_ret != client_data);
+
    del_ret = ecore_con_server_del(server);
    fail_if (strcmp((char *)del_ret, sdata));
    free (server_data);
@@ -532,6 +556,32 @@ START_TEST(ecore_test_ecore_con_shutdown_bef_init)
 }
 END_TEST
 
+static void
+_lookup_done_cb(const char *canonname, const char *ip, struct sockaddr *addr, 
int addrlen, void *data)
+{
+   fail_if(strncmp(canonname,(char *)data, strlen((char *)data)));
+
+   fprintf(stderr, "canonname = %s\n", canonname);
+   fprintf(stderr, "ip = %s\n", ip);
+   fprintf(stderr, "addr = %p\n", addr);
+   fprintf(stderr, "addrlen = %d\n", addrlen);
+
+   ecore_main_loop_quit();
+}
+
+START_TEST(ecore_test_ecore_con_dns_lookup)
+{
+   const char link[] = "www.google.com";
+   ecore_con_init();
+
+   fail_unless(ecore_con_lookup(link, _lookup_done_cb, link));
+
+   ecore_main_loop_begin();
+
+   ecore_con_shutdown();
+}
+END_TEST
+
 void ecore_con_test_ecore_con(TCase *tc)
 {
    tcase_add_test(tc, ecore_test_ecore_con_init);
@@ -560,5 +610,6 @@ void ecore_con_test_ecore_con(TCase *tc)
    tcase_add_test(tc, ecore_test_ecore_con_remote_nodelay_mixed_load_cert);
    tcase_add_test(tc, ecore_test_ecore_con_ssl_available);
    tcase_add_test(tc, ecore_test_ecore_con_dns);
+   tcase_add_test(tc, ecore_test_ecore_con_dns_lookup);
    tcase_add_test(tc, ecore_test_ecore_con_shutdown_bef_init);
 }

-- 


Reply via email to