[evolution-data-server] ECal test, test-ecal-get-free-busy: Create a valid user identity and account
- From: Tristan Van Berkom <tvb src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution-data-server] ECal test, test-ecal-get-free-busy: Create a valid user identity and account
- Date: Wed, 23 Jan 2013 08:02:21 +0000 (UTC)
commit e7156ac32dba5fae370f4b5e3b73891d94cb09ae
Author: Tristan Van Berkom <tristanvb openismus com>
Date: Wed Jan 23 16:52:50 2013 +0900
ECal test, test-ecal-get-free-busy: Create a valid user identity and account
Without this, the backend does not report any free-busy information,
with this commit the backend actually reports the free-busy data.
NOTE: This test still fails, because e_cal_get_free_busy() does not report
free busy information from the ECalClient API properly (see FIXME comment
in e_cal_get_free_busy()).
tests/libecal/test-ecal-get-free-busy.c | 72 ++++++++++++++++++++++++++++++-
1 files changed, 70 insertions(+), 2 deletions(-)
---
diff --git a/tests/libecal/test-ecal-get-free-busy.c b/tests/libecal/test-ecal-get-free-busy.c
index 5125ce7..c3d3929 100644
--- a/tests/libecal/test-ecal-get-free-busy.c
+++ b/tests/libecal/test-ecal-get-free-busy.c
@@ -7,10 +7,78 @@
#include "ecal-test-utils.h"
#include "e-test-server-utils.h"
+#define MAIL_ACCOUNT_UID "test-email-account"
+#define MAIL_IDENTITY_UID "test-email-identity"
+#define USER_EMAIL "user example com"
+
static ETestServerClosure cal_closure =
{ E_TEST_SERVER_DEPRECATED_CALENDAR, NULL, E_CAL_SOURCE_TYPE_EVENT };
static void
+setup_fixture (ETestServerFixture *fixture,
+ gconstpointer user_data)
+{
+ GError *error = NULL;
+ ESource *scratch;
+ ESourceMailAccount *mail_account;
+ ESourceMailIdentity *mail_identity;
+
+ e_test_server_utils_setup (fixture, user_data);
+
+ /* Create the mail identity */
+ scratch = e_source_new_with_uid (MAIL_IDENTITY_UID, NULL, &error);
+ if (!scratch)
+ g_error ("Failed to create scratch source for an email user: %s", error->message);
+
+ mail_identity = e_source_get_extension (scratch, E_SOURCE_EXTENSION_MAIL_IDENTITY);
+ e_source_mail_identity_set_address (mail_identity, USER_EMAIL);
+
+ if (!e_source_registry_commit_source_sync (fixture->registry, scratch, NULL, &error))
+ g_error ("Unable to add new addressbook source to the registry: %s", error->message);
+
+ g_object_unref (scratch);
+
+ /* Create the mail account */
+ scratch = e_source_new_with_uid (MAIL_ACCOUNT_UID, NULL, &error);
+ if (!scratch)
+ g_error ("Failed to create scratch source for an email user: %s", error->message);
+
+ mail_account = e_source_get_extension (scratch, E_SOURCE_EXTENSION_MAIL_ACCOUNT);
+ e_source_mail_account_set_identity_uid (mail_account, MAIL_IDENTITY_UID);
+
+ if (!e_source_registry_commit_source_sync (fixture->registry, scratch, NULL, &error))
+ g_error ("Unable to add new addressbook source to the registry: %s", error->message);
+
+ g_object_unref (scratch);
+}
+
+static void
+teardown_fixture (ETestServerFixture *fixture,
+ gconstpointer user_data)
+{
+ GError *error = NULL;
+ ESource *source;
+
+ /* Remove the account */
+ source = e_source_registry_ref_source (fixture->registry, MAIL_ACCOUNT_UID);
+ if (!source)
+ g_error ("Unable to fetch mail account");
+
+ if (!e_source_remove_sync (source, NULL, &error))
+ g_error ("Unable to remove mail account: %s", error->message);
+
+ /* Remove the identity */
+ source = e_source_registry_ref_source (fixture->registry, MAIL_IDENTITY_UID);
+ if (!source)
+ g_error ("Unable to fetch mail identity");
+
+ if (!e_source_remove_sync (source, NULL, &error))
+ g_error ("Unable to remove mail identity: %s", error->message);
+
+ e_test_server_utils_teardown (fixture, user_data);
+}
+
+static void
test_get_free_busy (ETestServerFixture *fixture,
gconstpointer user_data)
{
@@ -25,7 +93,7 @@ test_get_free_busy (ETestServerFixture *fixture,
utc = icaltimezone_get_utc_timezone ();
start = time_from_isodate ("20040212T000000Z");
end = time_add_day_with_zone (start, 2, utc);
- users = g_list_prepend (users, (gpointer) "user example com");
+ users = g_list_prepend (users, (gpointer) USER_EMAIL);
free_busy = ecal_test_utils_cal_get_free_busy (cal, users, start, end);
@@ -44,7 +112,7 @@ main (gint argc,
g_test_add (
"/ECal/GetFreeBusy", ETestServerFixture, &cal_closure,
- e_test_server_utils_setup, test_get_free_busy, e_test_server_utils_teardown);
+ setup_fixture, test_get_free_busy, teardown_fixture);
return e_test_server_utils_run ();
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]