diff options
author | Travis Reitter <treitter@gmail.com> | 2009-12-21 22:57:12 -0800 |
---|---|---|
committer | Travis Reitter <treitter@gmail.com> | 2010-01-15 13:30:00 -0800 |
commit | df7e75f7f5492ff873e3054f34fc9bcbbfe0be0a (patch) | |
tree | 520632d6582c26eb606b6a687dc7aa6206b1de47 | |
parent | 18be86d524851b0944a72558c4d6b07b7e7283d5 (diff) | |
download | evolution-data-server-df7e75f7f5492ff873e3054f34fc9bcbbfe0be0a.tar.gz |
Add test for EDataCal method 'getTimezone'.
-rw-r--r-- | calendar/tests/ecal/Makefile.am | 3 | ||||
-rw-r--r-- | calendar/tests/ecal/ecal-test-utils.c | 16 | ||||
-rw-r--r-- | calendar/tests/ecal/ecal-test-utils.h | 4 | ||||
-rw-r--r-- | calendar/tests/ecal/test-ecal-get-timezone.c | 31 |
4 files changed, 54 insertions, 0 deletions
diff --git a/calendar/tests/ecal/Makefile.am b/calendar/tests/ecal/Makefile.am index 815e38c44..812701d0e 100644 --- a/calendar/tests/ecal/Makefile.am +++ b/calendar/tests/ecal/Makefile.am @@ -34,6 +34,7 @@ test_scripts = \ TESTS = \ test-ecal-remove \ test-ecal-open \ + test-ecal-get-timezone \ test-ecal-get-alarm-email-address \ test-ecal-get-cal-address \ test-ecal-get-ldap-attribute \ @@ -74,6 +75,8 @@ test_ecal_get_object_list_LDADD=$(TEST_ECAL_LIBS) test_ecal_get_object_list_CPPFLAGS=$(TEST_ECAL_CPPFLAGS) test_ecal_get_objects_for_uid_LDADD=$(TEST_ECAL_LIBS) test_ecal_get_objects_for_uid_CPPFLAGS=$(TEST_ECAL_CPPFLAGS) +test_ecal_get_timezone_LDADD=$(TEST_ECAL_LIBS) +test_ecal_get_timezone_CPPFLAGS=$(TEST_ECAL_CPPFLAGS) test_ecal_modify_object_LDADD=$(TEST_ECAL_LIBS) test_ecal_modify_object_CPPFLAGS=$(TEST_ECAL_CPPFLAGS) test_ecal_open_LDADD=$(TEST_ECAL_LIBS) diff --git a/calendar/tests/ecal/ecal-test-utils.c b/calendar/tests/ecal/ecal-test-utils.c index 49c4b0824..5c959e155 100644 --- a/calendar/tests/ecal/ecal-test-utils.c +++ b/calendar/tests/ecal/ecal-test-utils.c @@ -531,3 +531,19 @@ ecal_test_utils_cal_component_set_icalcomponent (ECalComponent *e_component, g_error ("Could not set icalcomponent\n"); } } + +icaltimezone* +ecal_test_utils_cal_get_timezone (ECal *cal, + const char *tzid) +{ + GError *error = NULL; + icaltimezone *zone = NULL; + + if (!e_cal_get_timezone (cal, tzid, &zone, &error)) { + g_warning ("failed to get icaltimezone* for ID '%s'; %s\n", tzid, error->message); + exit(1); + } + g_print ("successfully got icaltimezone* for ID '%s'\n", tzid); + + return zone; +} diff --git a/calendar/tests/ecal/ecal-test-utils.h b/calendar/tests/ecal/ecal-test-utils.h index 77918f854..aea710fd6 100644 --- a/calendar/tests/ecal/ecal-test-utils.h +++ b/calendar/tests/ecal/ecal-test-utils.h @@ -116,4 +116,8 @@ void ecal_test_utils_cal_component_set_icalcomponent (ECalComponent *e_component, icalcomponent *component); +icaltimezone* +ecal_test_utils_cal_get_timezone (ECal *cal, + const char *tzid); + #endif /* _ECAL_TEST_UTILS_H */ diff --git a/calendar/tests/ecal/test-ecal-get-timezone.c b/calendar/tests/ecal/test-ecal-get-timezone.c new file mode 100644 index 000000000..3f6961b1b --- /dev/null +++ b/calendar/tests/ecal/test-ecal-get-timezone.c @@ -0,0 +1,31 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ + +#include <stdlib.h> +#include <libecal/e-cal.h> +#include <libical/ical.h> + +#include "ecal-test-utils.h" + +gint +main (gint argc, gchar **argv) +{ + ECal *cal; + char *uri = NULL; + icaltimezone *zone; + icaltimezone *utc_zone; + + g_type_init (); + + cal = ecal_test_utils_cal_new_temp (&uri, E_CAL_SOURCE_TYPE_EVENT); + ecal_test_utils_cal_open (cal, FALSE); + + zone = ecal_test_utils_cal_get_timezone (cal, "UTC"); + utc_zone = icaltimezone_get_utc_timezone (); + + g_assert (!g_strcmp0 (icaltimezone_get_tzid (zone), + icaltimezone_get_tzid (utc_zone))); + + ecal_test_utils_cal_remove (cal); + + return 0; +} |