Add test for EDataCal method 'getCalAddress'.
authorTravis Reitter <treitter@gmail.com>
Thu, 17 Dec 2009 17:26:00 +0000 (09:26 -0800)
committerTravis Reitter <treitter@gmail.com>
Fri, 15 Jan 2010 21:29:59 +0000 (13:29 -0800)
calendar/tests/ecal/Makefile.am
calendar/tests/ecal/ecal-test-utils.c
calendar/tests/ecal/ecal-test-utils.h
calendar/tests/ecal/test-ecal-get-cal-address.c [new file with mode: 0644]

index 8d87c49..f837567 100644 (file)
@@ -30,9 +30,11 @@ test_scripts =                         \
        test-runner.sh                 \
        cleanup.sh
 
+# ordered by relative complexity
 TESTS = \
         test-ecal-remove                       \
         test-ecal-open                         \
+        test-ecal-get-cal-address              \
         $(NULL)
 
 # The test program
@@ -42,6 +44,9 @@ TEST_ECAL_CPPFLAGS= \
        $(libecal_test_utils_la_CPPFLAGS) \
        $(NULL)
 
+# ordered alphanumerically
+test_ecal_get_cal_address_LDADD=$(TEST_ECAL_LIBS)
+test_ecal_get_cal_address_CPPFLAGS=$(TEST_ECAL_CPPFLAGS)
 test_ecal_open_LDADD=$(TEST_ECAL_LIBS)
 test_ecal_open_CPPFLAGS=$(TEST_ECAL_CPPFLAGS)
 test_ecal_remove_LDADD=$(TEST_ECAL_LIBS)
index 185e71f..142dd4b 100644 (file)
@@ -141,3 +141,18 @@ ecal_test_utils_cal_remove (ECal *cal)
 
         g_object_unref (cal);
 }
+
+char*
+ecal_test_utils_cal_get_cal_address (ECal *cal)
+{
+        GError *error = NULL;
+       char *address = NULL;
+
+        if (!e_cal_get_cal_address (cal, &address, &error)) {
+                g_warning ("failed to get calendar address; %s\n", error->message);
+                exit(1);
+        }
+        g_print ("successfully got the calendar address\n");
+
+       return address;
+}
index ed51042..e4ffc40 100644 (file)
@@ -47,4 +47,7 @@ ecal_test_utils_cal_async_open (ECal        *cal,
 void
 ecal_test_utils_cal_remove (ECal *cal);
 
+char*
+ecal_test_utils_cal_get_cal_address (ECal *cal);
+
 #endif /* _ECAL_TEST_UTILS_H */
diff --git a/calendar/tests/ecal/test-ecal-get-cal-address.c b/calendar/tests/ecal/test-ecal-get-cal-address.c
new file mode 100644 (file)
index 0000000..b015d39
--- /dev/null
@@ -0,0 +1,28 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+
+#include <stdlib.h>
+#include <libecal/e-cal.h>
+
+#include "ecal-test-utils.h"
+
+gint
+main (gint argc, gchar **argv)
+{
+       ECal *cal;
+       char *uri = NULL;
+       char *address;
+
+       g_type_init ();
+
+       cal = ecal_test_utils_cal_new_temp (&uri, E_CAL_SOURCE_TYPE_EVENT);
+       ecal_test_utils_cal_open (cal, FALSE);
+
+       address = ecal_test_utils_cal_get_cal_address (cal);
+       g_print ("calendar address: '%s'\n", address);
+
+       ecal_test_utils_cal_remove (cal);
+
+       g_free (address);
+
+       return 0;
+}