]> git.0d.be Git - empathy.git/commitdiff
port check-empathy-irc-network.c to GTest
authorGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>
Tue, 27 Oct 2009 16:18:10 +0000 (16:18 +0000)
committerGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>
Tue, 3 Nov 2009 12:25:01 +0000 (12:25 +0000)
tests/.gitignore
tests/Makefile.am
tests/check-empathy-irc-network.c [deleted file]
tests/check-libempathy.h
tests/check-main.c
tests/empathy-irc-network-test.c [new file with mode: 0644]

index ccf6ccd3e0e07e07882415f4721be6cc980bf0ba..7500f716f519b9ba727acf2ca7a83de3ff20053f 100644 (file)
@@ -2,4 +2,5 @@ check-main
 *.log
 empathy-utils-test
 empathy-irc-server-test
+empathy-irc-network-test
 test-report.xml
index 29bd2257f60db08c088ecfe029b7866c248a003f..4780adab59f3cd368df022a55b2a146a90a5e0db 100644 (file)
@@ -25,7 +25,8 @@ LDADD =                                                               \
 
 TEST_PROGS =                                     \
      empathy-utils-test                          \
-     empathy-irc-server-test
+     empathy-irc-server-test                     \
+     empathy-irc-network-test
 
 empathy_utils_test_SOURCES = empathy-utils-test.c \
      test-helper.c test-helper.h
@@ -34,6 +35,10 @@ empathy_irc_server_test_SOURCES = empathy-irc-server-test.c \
      test-helper.c test-helper.h                       \
      check-irc-helper.h check-irc-helper.c
 
+empathy_irc_network_test_SOURCES = empathy-irc-network-test.c \
+     test-helper.c test-helper.h                       \
+     check-irc-helper.h check-irc-helper.c
+
 check_PROGRAMS = check-main $(TEST_PROGS)
 
 TESTS = check-main
@@ -46,7 +51,6 @@ check_main_SOURCES =                             \
     check-empathy-helpers.c                      \
     check-irc-helper.h                           \
     check-irc-helper.c                           \
-    check-empathy-irc-network.c                  \
     check-empathy-irc-network-manager.c          \
     check-empathy-chatroom.c                     \
     check-empathy-chatroom-manager.c
diff --git a/tests/check-empathy-irc-network.c b/tests/check-empathy-irc-network.c
deleted file mode 100644 (file)
index b8124a3..0000000
+++ /dev/null
@@ -1,240 +0,0 @@
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-
-#include <check.h>
-#include "check-helpers.h"
-#include "check-libempathy.h"
-#include "check-irc-helper.h"
-
-#include <libempathy/empathy-irc-network.h>
-
-START_TEST (test_empathy_irc_network_new)
-{
-  EmpathyIrcNetwork *network;
-
-  network = empathy_irc_network_new ("Network1");
-  check_network (network, "Network1", "UTF-8", NULL, 0);
-
-  g_object_unref (network);
-}
-END_TEST
-
-START_TEST (test_property_change)
-{
-  EmpathyIrcNetwork *network;
-
-  network = empathy_irc_network_new ("Network1");
-  check_network (network, "Network1", "UTF-8", NULL, 0);
-
-  g_object_set (network,
-      "name", "Network2",
-      "charset", "ISO-8859-1",
-      NULL);
-
-  check_network (network, "Network2", "ISO-8859-1", NULL, 0);
-
-  g_object_unref (network);
-
-}
-END_TEST
-
-static gboolean modified;
-
-static void
-modified_cb (EmpathyIrcNetwork *network,
-             gpointer unused)
-{
-  modified = TRUE;
-}
-
-START_TEST (test_modified_signal)
-{
-  EmpathyIrcNetwork *network;
-
-  network = empathy_irc_network_new ("Network1");
-  check_network (network, "Network1", "UTF-8", NULL, 0);
-
-  modified = FALSE;
-  g_signal_connect (network, "modified", G_CALLBACK (modified_cb), NULL);
-
-  g_object_set (network, "name", "Network2", NULL);
-  fail_if (!modified);
-  modified = FALSE;
-  g_object_set (network, "name", "Network2", NULL);
-  fail_if (modified);
-
-  g_object_unref (network);
-}
-END_TEST
-
-static void
-add_servers (EmpathyIrcNetwork *network,
-             struct server_t *servers,
-             guint nb_servers)
-{
-  guint i;
-
-  for (i = 0; i < nb_servers; i ++)
-    {
-      EmpathyIrcServer *server;
-
-      server = empathy_irc_server_new (servers[i].address,
-          servers[i].port, servers[i].ssl);
-      modified = FALSE;
-      empathy_irc_network_append_server (network, server);
-      fail_if (!modified);
-      g_object_unref (server);
-    }
-}
-
-START_TEST (test_add_server)
-{
-  EmpathyIrcNetwork *network;
-  EmpathyIrcServer *server;
-  GSList *servers, *l;
-  struct server_t test_servers[] = {
-    { "server1", 6667, FALSE },
-    { "server2", 6668, TRUE },
-    { "server3", 6667, FALSE },
-    { "server4", 6669, TRUE }};
-  struct server_t servers_without_3[] = {
-    { "server1", 6667, FALSE },
-    { "server2", 6668, TRUE },
-    { "server4", 6669, TRUE }};
-
-  network = empathy_irc_network_new ("Network1");
-  check_network (network, "Network1", "UTF-8", NULL, 0);
-
-  modified = FALSE;
-  g_signal_connect (network, "modified", G_CALLBACK (modified_cb), NULL);
-
-  check_network (network, "Network1", "UTF-8", NULL, 0);
-
-  /* add the servers */
-  add_servers (network, test_servers, 4);
-
-  check_network (network, "Network1", "UTF-8", test_servers, 4);
-
-  /* Now let's remove the 3rd server */
-  servers = empathy_irc_network_get_servers (network);
-  l = g_slist_nth (servers, 2);
-  fail_if (l == NULL);
-  server = l->data;
-  modified = FALSE;
-  empathy_irc_network_remove_server (network, server);
-  fail_if (!modified);
-
-  /* free the list */
-  g_slist_foreach (servers, (GFunc) g_object_unref, NULL);
-  g_slist_free (servers);
-
-  /* The 3rd server should have disappear */
-  check_network (network, "Network1", "UTF-8", servers_without_3, 3);
-
-  g_object_unref (network);
-}
-END_TEST
-
-START_TEST (test_modified_signal_because_of_server)
-{
-  EmpathyIrcNetwork *network;
-  EmpathyIrcServer *server;
-
-  network = empathy_irc_network_new ("Network1");
-  check_network (network, "Network1", "UTF-8", NULL, 0);
-
-  g_signal_connect (network, "modified", G_CALLBACK (modified_cb), NULL);
-
-  server = empathy_irc_server_new ("server1", 6667, FALSE);
-  empathy_irc_network_append_server (network, server);
-
-  /* Change server properties */
-  modified = FALSE;
-  g_object_set (server, "address", "server2", NULL);
-  fail_if (!modified);
-  modified = FALSE;
-  g_object_set (server, "port", 6668, NULL);
-  fail_if (!modified);
-  modified = FALSE;
-  g_object_set (server, "ssl", TRUE, NULL);
-  fail_if (!modified);
-
-  empathy_irc_network_remove_server (network, server);
-  modified = FALSE;
-  g_object_set (server, "address", "server3", NULL);
-  /* We removed the server so the network is not modified anymore */
-  fail_if (modified);
-
-  g_object_unref (network);
-}
-END_TEST
-
-START_TEST (test_empathy_irc_network_set_server_position)
-{
-  EmpathyIrcNetwork *network;
-  GSList *servers, *l;
-  struct server_t test_servers[] = {
-    { "server1", 6667, FALSE },
-    { "server2", 6668, TRUE },
-    { "server3", 6667, FALSE },
-    { "server4", 6669, TRUE }};
-  struct server_t test_servers_sorted[] = {
-    { "server2", 6668, TRUE },
-    { "server4", 6669, TRUE },
-    { "server3", 6667, FALSE },
-    { "server1", 6667, FALSE }};
-
-  network = empathy_irc_network_new ("Network1");
-  check_network (network, "Network1", "UTF-8", NULL, 0);
-
-  modified = FALSE;
-  g_signal_connect (network, "modified", G_CALLBACK (modified_cb), NULL);
-
-  /* add the servers */
-  add_servers (network, test_servers, 4);
-  check_network (network, "Network1", "UTF-8", test_servers, 4);
-
-  /* get servers list */
-  servers = empathy_irc_network_get_servers (network);
-  fail_if (g_slist_length (servers) != 4);
-  modified = FALSE;
-
-  /* server1 go to the last position */
-  empathy_irc_network_set_server_position (network, servers->data, -1);
-
-  /* server2 go to the first position */
-  l = servers->next;
-  empathy_irc_network_set_server_position (network, l->data, 0);
-
-  /* server3 go to the third position */
-  l = l->next;
-  empathy_irc_network_set_server_position (network, l->data, 2);
-
-  /* server4 go to the second position*/
-  l = l->next;
-  empathy_irc_network_set_server_position (network, l->data, 1);
-
-  fail_if (!modified);
-
-  /* free the list */
-  g_slist_foreach (servers, (GFunc) g_object_unref, NULL);
-  g_slist_free (servers);
-
-  /* Check if servers are sorted */
-  check_network (network, "Network1", "UTF-8", test_servers_sorted, 4);
-}
-END_TEST
-
-TCase *
-make_empathy_irc_network_tcase (void)
-{
-    TCase *tc = tcase_create ("empathy-irc-network");
-    tcase_add_test (tc, test_empathy_irc_network_new);
-    tcase_add_test (tc, test_property_change);
-    tcase_add_test (tc, test_modified_signal);
-    tcase_add_test (tc, test_add_server);
-    tcase_add_test (tc, test_modified_signal_because_of_server);
-    tcase_add_test (tc, test_empathy_irc_network_set_server_position);
-    return tc;
-}
index ea8aeb158c5de850f3105b98d7e590bfd11ea1fd..e5333fefdffac43f863ffcbb5d781d9a280092ae 100644 (file)
@@ -1,7 +1,6 @@
 #ifndef __CHECK_LIBEMPATHY__
 #define __CHECK_LIBEMPATHY__
 
-TCase * make_empathy_irc_network_tcase (void);
 TCase * make_empathy_irc_network_manager_tcase (void);
 TCase * make_empathy_chatroom_tcase (void);
 TCase * make_empathy_chatroom_manager_tcase (void);
index 311e6ccae47a0e8bc2e84384a634d88cd1bc3f54..7ef5fece01495c73a141134a1d967a47eb7c0060 100644 (file)
@@ -16,7 +16,6 @@ make_libempathy_suite (void)
 {
     Suite *s = suite_create ("libempathy");
 
-    suite_add_tcase (s, make_empathy_irc_network_tcase ());
     suite_add_tcase (s, make_empathy_irc_network_manager_tcase ());
     suite_add_tcase (s, make_empathy_chatroom_tcase ());
     suite_add_tcase (s, make_empathy_chatroom_manager_tcase ());
diff --git a/tests/empathy-irc-network-test.c b/tests/empathy-irc-network-test.c
new file mode 100644 (file)
index 0000000..00fbe91
--- /dev/null
@@ -0,0 +1,247 @@
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+
+#include "check-irc-helper.h"
+#include "test-helper.h"
+
+#include <libempathy/empathy-irc-network.h>
+
+static void
+test_empathy_irc_network_new (void)
+{
+  EmpathyIrcNetwork *network;
+
+  network = empathy_irc_network_new ("Network1");
+  check_network (network, "Network1", "UTF-8", NULL, 0);
+
+  g_object_unref (network);
+}
+
+static void
+test_property_change (void)
+{
+  EmpathyIrcNetwork *network;
+
+  network = empathy_irc_network_new ("Network1");
+  check_network (network, "Network1", "UTF-8", NULL, 0);
+
+  g_object_set (network,
+      "name", "Network2",
+      "charset", "ISO-8859-1",
+      NULL);
+
+  check_network (network, "Network2", "ISO-8859-1", NULL, 0);
+
+  g_object_unref (network);
+
+}
+
+static gboolean modified;
+
+static void
+modified_cb (EmpathyIrcNetwork *network,
+             gpointer unused)
+{
+  modified = TRUE;
+}
+
+static void
+test_modified_signal (void)
+{
+  EmpathyIrcNetwork *network;
+
+  network = empathy_irc_network_new ("Network1");
+  check_network (network, "Network1", "UTF-8", NULL, 0);
+
+  modified = FALSE;
+  g_signal_connect (network, "modified", G_CALLBACK (modified_cb), NULL);
+
+  g_object_set (network, "name", "Network2", NULL);
+  g_assert (modified);
+  modified = FALSE;
+  g_object_set (network, "name", "Network2", NULL);
+  g_assert (!modified);
+
+  g_object_unref (network);
+}
+
+static void
+add_servers (EmpathyIrcNetwork *network,
+             struct server_t *servers,
+             guint nb_servers)
+{
+  guint i;
+
+  for (i = 0; i < nb_servers; i ++)
+    {
+      EmpathyIrcServer *server;
+
+      server = empathy_irc_server_new (servers[i].address,
+          servers[i].port, servers[i].ssl);
+      modified = FALSE;
+      empathy_irc_network_append_server (network, server);
+      g_assert (modified);
+      g_object_unref (server);
+    }
+}
+
+static void
+test_add_server (void)
+{
+  EmpathyIrcNetwork *network;
+  EmpathyIrcServer *server;
+  GSList *servers, *l;
+  struct server_t test_servers[] = {
+    { "server1", 6667, FALSE },
+    { "server2", 6668, TRUE },
+    { "server3", 6667, FALSE },
+    { "server4", 6669, TRUE }};
+  struct server_t servers_without_3[] = {
+    { "server1", 6667, FALSE },
+    { "server2", 6668, TRUE },
+    { "server4", 6669, TRUE }};
+
+  network = empathy_irc_network_new ("Network1");
+  check_network (network, "Network1", "UTF-8", NULL, 0);
+
+  modified = FALSE;
+  g_signal_connect (network, "modified", G_CALLBACK (modified_cb), NULL);
+
+  check_network (network, "Network1", "UTF-8", NULL, 0);
+
+  /* add the servers */
+  add_servers (network, test_servers, 4);
+
+  check_network (network, "Network1", "UTF-8", test_servers, 4);
+
+  /* Now let's remove the 3rd server */
+  servers = empathy_irc_network_get_servers (network);
+  l = g_slist_nth (servers, 2);
+  g_assert (l != NULL);
+  server = l->data;
+  modified = FALSE;
+  empathy_irc_network_remove_server (network, server);
+  g_assert (modified);
+
+  /* free the list */
+  g_slist_foreach (servers, (GFunc) g_object_unref, NULL);
+  g_slist_free (servers);
+
+  /* The 3rd server should have disappear */
+  check_network (network, "Network1", "UTF-8", servers_without_3, 3);
+
+  g_object_unref (network);
+}
+
+static void
+test_modified_signal_because_of_server (void)
+{
+  EmpathyIrcNetwork *network;
+  EmpathyIrcServer *server;
+
+  network = empathy_irc_network_new ("Network1");
+  check_network (network, "Network1", "UTF-8", NULL, 0);
+
+  g_signal_connect (network, "modified", G_CALLBACK (modified_cb), NULL);
+
+  server = empathy_irc_server_new ("server1", 6667, FALSE);
+  empathy_irc_network_append_server (network, server);
+
+  /* Change server properties */
+  modified = FALSE;
+  g_object_set (server, "address", "server2", NULL);
+  g_assert (modified);
+  modified = FALSE;
+  g_object_set (server, "port", 6668, NULL);
+  g_assert (modified);
+  modified = FALSE;
+  g_object_set (server, "ssl", TRUE, NULL);
+  g_assert (modified);
+
+  empathy_irc_network_remove_server (network, server);
+  modified = FALSE;
+  g_object_set (server, "address", "server3", NULL);
+  /* We removed the server so the network is not modified anymore */
+  g_assert (!modified);
+
+  g_object_unref (network);
+}
+
+static void
+test_empathy_irc_network_set_server_position (void)
+{
+  EmpathyIrcNetwork *network;
+  GSList *servers, *l;
+  struct server_t test_servers[] = {
+    { "server1", 6667, FALSE },
+    { "server2", 6668, TRUE },
+    { "server3", 6667, FALSE },
+    { "server4", 6669, TRUE }};
+  struct server_t test_servers_sorted[] = {
+    { "server2", 6668, TRUE },
+    { "server4", 6669, TRUE },
+    { "server3", 6667, FALSE },
+    { "server1", 6667, FALSE }};
+
+  network = empathy_irc_network_new ("Network1");
+  check_network (network, "Network1", "UTF-8", NULL, 0);
+
+  modified = FALSE;
+  g_signal_connect (network, "modified", G_CALLBACK (modified_cb), NULL);
+
+  /* add the servers */
+  add_servers (network, test_servers, 4);
+  check_network (network, "Network1", "UTF-8", test_servers, 4);
+
+  /* get servers list */
+  servers = empathy_irc_network_get_servers (network);
+  g_assert (g_slist_length (servers) == 4);
+  modified = FALSE;
+
+  /* server1 go to the last position */
+  empathy_irc_network_set_server_position (network, servers->data, -1);
+
+  /* server2 go to the first position */
+  l = servers->next;
+  empathy_irc_network_set_server_position (network, l->data, 0);
+
+  /* server3 go to the third position */
+  l = l->next;
+  empathy_irc_network_set_server_position (network, l->data, 2);
+
+  /* server4 go to the second position*/
+  l = l->next;
+  empathy_irc_network_set_server_position (network, l->data, 1);
+
+  g_assert (modified);
+
+  /* free the list */
+  g_slist_foreach (servers, (GFunc) g_object_unref, NULL);
+  g_slist_free (servers);
+
+  /* Check if servers are sorted */
+  check_network (network, "Network1", "UTF-8", test_servers_sorted, 4);
+}
+
+int
+main (int argc,
+    char **argv)
+{
+  int result;
+
+  test_init (argc, argv);
+
+  g_test_add_func ("/irc-network/new", test_empathy_irc_network_new);
+  g_test_add_func ("/irc-network/property-change", test_property_change);
+  g_test_add_func ("/irc-network/modified-signal", test_modified_signal);
+  g_test_add_func ("/irc-network/add-server", test_add_server);
+  g_test_add_func ("/irc-network/modified-signal-because-of-server",
+      test_modified_signal_because_of_server);
+  g_test_add_func ("/irc-network/set-server-position",
+      test_empathy_irc_network_set_server_position);
+
+  result = g_test_run ();
+  test_deinit ();
+  return result;
+}