summaryrefslogtreecommitdiff
path: root/gdata/tests/contacts.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdata/tests/contacts.c')
-rw-r--r--gdata/tests/contacts.c257
1 files changed, 195 insertions, 62 deletions
diff --git a/gdata/tests/contacts.c b/gdata/tests/contacts.c
index 710851c5..9fc59cd2 100644
--- a/gdata/tests/contacts.c
+++ b/gdata/tests/contacts.c
@@ -24,6 +24,8 @@
#include "gdata.h"
#include "common.h"
+static GDataMockServer *mock_server = NULL;
+
typedef struct {
GDataContactsContact *contact;
} TempContactData;
@@ -33,6 +35,8 @@ set_up_temp_contact (TempContactData *data, gconstpointer service)
{
GDataContactsContact *contact;
+ gdata_test_mock_server_start_trace (mock_server, "setup-temp-contact");
+
/* Create a new temporary contact to use for a single test */
contact = gdata_contacts_contact_new (NULL);
gdata_contacts_contact_set_nickname (contact, "Test Contact Esq.");
@@ -43,6 +47,8 @@ set_up_temp_contact (TempContactData *data, gconstpointer service)
gdata_test_compare_kind (GDATA_ENTRY (data->contact), "http://schemas.google.com/contact/2008#contact", NULL);
g_object_unref (contact);
+
+ gdata_mock_server_end_trace (mock_server);
}
static void
@@ -50,6 +56,8 @@ tear_down_temp_contact (TempContactData *data, gconstpointer service)
{
GDataEntry *updated_contact;
+ gdata_test_mock_server_start_trace (mock_server, "teardown-temp-contact");
+
/* Re-query for the contact to get any updated ETags */
updated_contact = gdata_service_query_single_entry (GDATA_SERVICE (service), gdata_contacts_service_get_primary_authorization_domain (),
gdata_entry_get_id (GDATA_ENTRY (data->contact)), NULL, GDATA_TYPE_CONTACTS_CONTACT,
@@ -63,6 +71,8 @@ tear_down_temp_contact (TempContactData *data, gconstpointer service)
updated_contact, NULL, NULL) == TRUE);
g_object_unref (updated_contact);
+
+ gdata_mock_server_end_trace (mock_server);
}
GDATA_ASYNC_CLOSURE_FUNCTIONS (temp_contact, TempContactData);
@@ -74,6 +84,8 @@ test_authentication (void)
GDataClientLoginAuthorizer *authorizer;
GError *error = NULL;
+ gdata_test_mock_server_start_trace (mock_server, "authentication");
+
/* Create an authorizer */
authorizer = gdata_client_login_authorizer_new (CLIENT_ID, GDATA_TYPE_CONTACTS_SERVICE);
@@ -93,12 +105,16 @@ test_authentication (void)
gdata_contacts_service_get_primary_authorization_domain ()) == TRUE);
g_object_unref (authorizer);
+
+ gdata_mock_server_end_trace (mock_server);
}
GDATA_ASYNC_TEST_FUNCTIONS (authentication, void,
G_STMT_START {
GDataClientLoginAuthorizer *authorizer;
+ gdata_test_mock_server_start_trace (mock_server, "authentication-async");
+
/* Create an authorizer */
authorizer = gdata_client_login_authorizer_new (CLIENT_ID, GDATA_TYPE_CONTACTS_SERVICE);
@@ -133,6 +149,8 @@ G_STMT_START {
g_assert (gdata_authorizer_is_authorized_for_domain (GDATA_AUTHORIZER (authorizer),
gdata_contacts_service_get_primary_authorization_domain ()) == FALSE);
}
+
+ gdata_mock_server_end_trace (mock_server);
} G_STMT_END);
typedef struct {
@@ -146,6 +164,8 @@ set_up_query_all_contacts (QueryAllContactsData *data, gconstpointer service)
{
GDataContactsContact *contact;
+ gdata_test_mock_server_start_trace (mock_server, "setup-query-all-contacts");
+
/* Create new temporary contacts to use for the query all contacts tests */
contact = gdata_contacts_contact_new (NULL);
gdata_contacts_contact_set_nickname (contact, "Test Contact 1");
@@ -161,11 +181,15 @@ set_up_query_all_contacts (QueryAllContactsData *data, gconstpointer service)
gdata_contacts_contact_set_nickname (contact, "Test Contact 3");
data->contact3 = gdata_contacts_service_insert_contact (GDATA_CONTACTS_SERVICE (service), contact, NULL, NULL);
g_object_unref (contact);
+
+ gdata_mock_server_end_trace (mock_server);
}
static void
tear_down_query_all_contacts (QueryAllContactsData *data, gconstpointer service)
{
+ gdata_test_mock_server_start_trace (mock_server, "teardown-query-all-contacts");
+
/* Delete the new contacts */
g_assert (gdata_service_delete_entry (GDATA_SERVICE (service), gdata_contacts_service_get_primary_authorization_domain (),
GDATA_ENTRY (data->contact1), NULL, NULL) == TRUE);
@@ -178,6 +202,8 @@ tear_down_query_all_contacts (QueryAllContactsData *data, gconstpointer service)
g_assert (gdata_service_delete_entry (GDATA_SERVICE (service), gdata_contacts_service_get_primary_authorization_domain (),
GDATA_ENTRY (data->contact3), NULL, NULL) == TRUE);
g_object_unref (data->contact3);
+
+ gdata_mock_server_end_trace (mock_server);
}
static void
@@ -186,6 +212,8 @@ test_query_all_contacts (QueryAllContactsData *data, gconstpointer service)
GDataFeed *feed;
GError *error = NULL;
+ gdata_test_mock_server_start_trace (mock_server, "query-all-contacts");
+
feed = gdata_contacts_service_query_contacts (GDATA_CONTACTS_SERVICE (service), NULL, NULL, NULL, NULL, &error);
g_assert_no_error (error);
g_assert (GDATA_IS_FEED (feed));
@@ -194,12 +222,16 @@ test_query_all_contacts (QueryAllContactsData *data, gconstpointer service)
/* TODO: check entries, kinds and feed properties */
g_object_unref (feed);
+
+ gdata_mock_server_end_trace (mock_server);
}
GDATA_ASYNC_CLOSURE_FUNCTIONS (query_all_contacts, QueryAllContactsData);
GDATA_ASYNC_TEST_FUNCTIONS (query_all_contacts, QueryAllContactsData,
G_STMT_START {
+ gdata_test_mock_server_start_trace (mock_server, "query-all-contacts-async");
+
gdata_contacts_service_query_contacts_async (GDATA_CONTACTS_SERVICE (service), NULL, cancellable, NULL,
NULL, NULL, async_ready_callback, async_data);
} G_STMT_END,
@@ -216,6 +248,8 @@ G_STMT_START {
} else {
g_assert (feed == NULL);
}
+
+ gdata_mock_server_end_trace (mock_server);
} G_STMT_END);
static void
@@ -223,6 +257,8 @@ test_query_all_contacts_async_progress_closure (QueryAllContactsData *query_data
{
GDataAsyncProgressClosure *data = g_slice_new0 (GDataAsyncProgressClosure);
+ gdata_test_mock_server_start_trace (mock_server, "query-all-contacts-async-progress-closure");
+
data->main_loop = g_main_loop_new (NULL, TRUE);
gdata_contacts_service_query_contacts_async (GDATA_CONTACTS_SERVICE (service), NULL, NULL,
@@ -237,6 +273,8 @@ test_query_all_contacts_async_progress_closure (QueryAllContactsData *query_data
g_assert_cmpuint (data->async_ready_notify_count, ==, 1);
g_slice_free (GDataAsyncProgressClosure, data);
+
+ gdata_mock_server_end_trace (mock_server);
}
typedef struct {
@@ -252,11 +290,15 @@ set_up_insert (InsertData *data, gconstpointer service)
static void
tear_down_insert (InsertData *data, gconstpointer service)
{
+ gdata_test_mock_server_start_trace (mock_server, "teardown-insert");
+
/* Delete the new contact */
g_assert (gdata_service_delete_entry (GDATA_SERVICE (service), gdata_contacts_service_get_primary_authorization_domain (),
GDATA_ENTRY (data->new_contact), NULL, NULL) == TRUE);
g_object_unref (data->new_contact);
+
+ gdata_mock_server_end_trace (mock_server);
}
static void
@@ -283,6 +325,8 @@ test_contact_insert (InsertData *data, gconstpointer service)
gint64 edited, creation_time;
GError *error = NULL;
+ gdata_test_mock_server_start_trace (mock_server, "contact-insert");
+
contact = gdata_contacts_contact_new (NULL);
g_get_current_time (&current_time);
@@ -527,6 +571,8 @@ test_contact_insert (InsertData *data, gconstpointer service)
/* TODO: check entries and feed properties */
g_object_unref (contact);
+
+ gdata_mock_server_end_trace (mock_server);
}
static void
@@ -535,6 +581,8 @@ test_contact_update (TempContactData *data, gconstpointer service)
GDataContactsContact *new_contact;
GError *error = NULL;
+ gdata_test_mock_server_start_trace (mock_server, "contact-update");
+
/* Update the contact's name and add an extended property */
gdata_entry_set_title (GDATA_ENTRY (data->contact), "John Wilson");
g_assert (gdata_contacts_contact_set_extended_property (data->contact, "contact-test", "value"));
@@ -554,6 +602,8 @@ test_contact_update (TempContactData *data, gconstpointer service)
g_assert (gdata_contacts_contact_is_deleted (new_contact) == FALSE);
g_object_unref (new_contact);
+
+ gdata_mock_server_end_trace (mock_server);
}
typedef struct {
@@ -567,6 +617,8 @@ set_up_query_all_groups (QueryAllGroupsData *data, gconstpointer service)
{
GDataContactsGroup *group;
+ gdata_test_mock_server_start_trace (mock_server, "setup-query-all-groups");
+
group = gdata_contacts_group_new (NULL);
gdata_entry_set_title (GDATA_ENTRY (group), "Test Group 1");
data->group1 = gdata_contacts_service_insert_group (GDATA_CONTACTS_SERVICE (service), group, NULL, NULL);
@@ -584,11 +636,15 @@ set_up_query_all_groups (QueryAllGroupsData *data, gconstpointer service)
data->group3 = gdata_contacts_service_insert_group (GDATA_CONTACTS_SERVICE (service), group, NULL, NULL);
g_assert (GDATA_IS_CONTACTS_GROUP (data->group3));
g_object_unref (group);
+
+ gdata_mock_server_end_trace (mock_server);
}
static void
tear_down_query_all_groups (QueryAllGroupsData *data, gconstpointer service)
{
+ gdata_test_mock_server_start_trace (mock_server, "teardown-query-all-groups");
+
g_assert (gdata_service_delete_entry (GDATA_SERVICE (service), gdata_contacts_service_get_primary_authorization_domain (),
GDATA_ENTRY (data->group1), NULL, NULL) == TRUE);
g_object_unref (data->group1);
@@ -600,6 +656,8 @@ tear_down_query_all_groups (QueryAllGroupsData *data, gconstpointer service)
g_assert (gdata_service_delete_entry (GDATA_SERVICE (service), gdata_contacts_service_get_primary_authorization_domain (),
GDATA_ENTRY (data->group3), NULL, NULL) == TRUE);
g_object_unref (data->group3);
+
+ gdata_mock_server_end_trace (mock_server);
}
static void
@@ -608,6 +666,8 @@ test_query_all_groups (QueryAllGroupsData *data, gconstpointer service)
GDataFeed *feed;
GError *error = NULL;
+ gdata_test_mock_server_start_trace (mock_server, "query-all-groups");
+
feed = gdata_contacts_service_query_groups (GDATA_CONTACTS_SERVICE (service), NULL, NULL, NULL, NULL, &error);
g_assert_no_error (error);
g_assert (GDATA_IS_FEED (feed));
@@ -616,12 +676,16 @@ test_query_all_groups (QueryAllGroupsData *data, gconstpointer service)
/* TODO: check entries, kinds and feed properties */
g_object_unref (feed);
+
+ gdata_mock_server_end_trace (mock_server);
}
GDATA_ASYNC_CLOSURE_FUNCTIONS (query_all_groups, QueryAllGroupsData);
GDATA_ASYNC_TEST_FUNCTIONS (query_all_groups, QueryAllGroupsData,
G_STMT_START {
+ gdata_test_mock_server_start_trace (mock_server, "query-all-groups-async");
+
gdata_contacts_service_query_groups_async (GDATA_CONTACTS_SERVICE (service), NULL, cancellable, NULL, NULL, NULL,
async_ready_callback, async_data);
} G_STMT_END,
@@ -638,6 +702,8 @@ G_STMT_START {
} else {
g_assert (feed == NULL);
}
+
+ gdata_mock_server_end_trace (mock_server);
} G_STMT_END);
static void
@@ -645,6 +711,8 @@ test_query_all_groups_async_progress_closure (QueryAllGroupsData *query_data, gc
{
GDataAsyncProgressClosure *data = g_slice_new0 (GDataAsyncProgressClosure);
+ gdata_test_mock_server_start_trace (mock_server, "query-all-groups-async-progress-closure");
+
data->main_loop = g_main_loop_new (NULL, TRUE);
gdata_contacts_service_query_groups_async (GDATA_CONTACTS_SERVICE (service), NULL, NULL,
@@ -660,6 +728,8 @@ test_query_all_groups_async_progress_closure (QueryAllGroupsData *query_data, gc
g_assert_cmpuint (data->async_ready_notify_count, ==, 1);
g_slice_free (GDataAsyncProgressClosure, data);
+
+ gdata_mock_server_end_trace (mock_server);
}
typedef struct {
@@ -675,10 +745,14 @@ set_up_insert_group (InsertGroupData *data, gconstpointer service)
static void
tear_down_insert_group (InsertGroupData *data, gconstpointer service)
{
+ gdata_test_mock_server_start_trace (mock_server, "teardown-insert-group");
+
/* Delete the group, just to be tidy */
g_assert (gdata_service_delete_entry (GDATA_SERVICE (service), gdata_contacts_service_get_primary_authorization_domain (),
GDATA_ENTRY (data->new_group), NULL, NULL) == TRUE);
g_object_unref (data->new_group);
+
+ gdata_mock_server_end_trace (mock_server);
}
static void
@@ -689,6 +763,8 @@ test_group_insert (InsertGroupData *data, gconstpointer service)
GHashTable *properties;
GError *error = NULL;
+ gdata_test_mock_server_start_trace (mock_server, "group-insert");
+
g_get_current_time (&time_val);
group = gdata_contacts_group_new (NULL);
@@ -719,6 +795,8 @@ test_group_insert (InsertGroupData *data, gconstpointer service)
g_assert_cmpstr (gdata_contacts_group_get_extended_property (new_group, "foobar"), ==, "barfoo");
g_object_unref (group);
+
+ gdata_mock_server_end_trace (mock_server);
}
GDATA_ASYNC_CLOSURE_FUNCTIONS (insert_group, InsertGroupData);
@@ -727,6 +805,8 @@ GDATA_ASYNC_TEST_FUNCTIONS (group_insert, InsertGroupData,
G_STMT_START {
GDataContactsGroup *group;
+ gdata_test_mock_server_start_trace (mock_server, "group-insert-async");
+
group = gdata_contacts_group_new (NULL);
/* Check the kind is present and correct */
@@ -754,6 +834,8 @@ G_STMT_START {
} else {
g_assert (entry == NULL);
}
+
+ gdata_mock_server_end_trace (mock_server);
} G_STMT_END);
static void
@@ -1906,6 +1988,8 @@ test_photo_add (TempContactData *data, gconstpointer service)
gboolean retval;
GError *error = NULL;
+ gdata_test_mock_server_start_trace (mock_server, "photo-add");
+
/* Get the photo */
g_assert (g_file_get_contents (TEST_FILE_DIR "photo.jpg", (gchar**) &photo_data, &length, NULL) == TRUE);
@@ -1916,6 +2000,8 @@ test_photo_add (TempContactData *data, gconstpointer service)
g_clear_error (&error);
g_free (photo_data);
+
+ gdata_mock_server_end_trace (mock_server);
}
GDATA_ASYNC_TEST_FUNCTIONS (photo_add, TempContactData,
@@ -1923,6 +2009,8 @@ G_STMT_START {
guint8 *photo_data;
gsize length;
+ gdata_test_mock_server_start_trace (mock_server, "photo-add-async");
+
/* Get the photo */
g_assert (g_file_get_contents (TEST_FILE_DIR "photo.jpg", (gchar**) &photo_data, &length, NULL) == TRUE);
@@ -1945,6 +2033,8 @@ G_STMT_START {
g_assert (success == FALSE);
g_assert (gdata_contacts_contact_get_photo_etag (contact) == NULL);
}
+
+ gdata_mock_server_end_trace (mock_server);
} G_STMT_END);
static void
@@ -1990,6 +2080,8 @@ test_photo_get (TempContactData *data, gconstpointer service)
gsize length = 0;
GError *error = NULL;
+ gdata_test_mock_server_start_trace (mock_server, "photo-get");
+
g_assert (gdata_contacts_contact_get_photo_etag (data->contact) != NULL);
/* Get the photo from the network */
@@ -2004,10 +2096,14 @@ test_photo_get (TempContactData *data, gconstpointer service)
g_free (content_type);
g_free (photo_data);
g_clear_error (&error);
+
+ gdata_mock_server_end_trace (mock_server);
}
GDATA_ASYNC_TEST_FUNCTIONS (photo_get, TempContactData,
G_STMT_START {
+ gdata_test_mock_server_start_trace (mock_server, "photo-get-async");
+
g_assert (gdata_contacts_contact_get_photo_etag (data->contact) != NULL);
/* Get the photo from the network asynchronously */
@@ -2036,6 +2132,8 @@ G_STMT_START {
g_free (content_type);
g_free (photo_data);
+
+ gdata_mock_server_end_trace (mock_server);
} G_STMT_END);
static void
@@ -2043,6 +2141,8 @@ test_photo_delete (TempContactData *data, gconstpointer service)
{
GError *error = NULL;
+ gdata_test_mock_server_start_trace (mock_server, "photo-delete");
+
g_assert (gdata_contacts_contact_get_photo_etag (data->contact) != NULL);
/* Remove the contact's photo */
@@ -2052,10 +2152,14 @@ test_photo_delete (TempContactData *data, gconstpointer service)
g_assert (gdata_contacts_contact_get_photo_etag (data->contact) == NULL);
g_clear_error (&error);
+
+ gdata_mock_server_end_trace (mock_server);
}
GDATA_ASYNC_TEST_FUNCTIONS (photo_delete, TempContactData,
G_STMT_START {
+ gdata_test_mock_server_start_trace (mock_server, "photo-delete-async");
+
g_assert (gdata_contacts_contact_get_photo_etag (data->contact) != NULL);
/* Delete it from the contact asynchronously */
@@ -2075,6 +2179,8 @@ G_STMT_START {
g_assert (success == FALSE);
g_assert (gdata_contacts_contact_get_photo_etag (contact) != NULL);
}
+
+ gdata_mock_server_end_trace (mock_server);
} G_STMT_END);
static void
@@ -2088,6 +2194,8 @@ test_batch (gconstpointer service)
guint op_id, op_id2, op_id3;
GError *error = NULL, *entry_error = NULL;
+ gdata_test_mock_server_start_trace (mock_server, "batch");
+
/* Here we hardcode the feed URI, but it should really be extracted from a contacts feed, as the GDATA_LINK_BATCH link */
operation = gdata_batchable_create_operation (GDATA_BATCHABLE (service), gdata_contacts_service_get_primary_authorization_domain (),
"https://www.google.com/m8/feeds/contacts/default/full/batch");
@@ -2186,6 +2294,8 @@ test_batch (gconstpointer service)
g_clear_error (&error);
g_object_unref (operation);
g_object_unref (inserted_entry3);
+
+ gdata_mock_server_end_trace (mock_server);
}
typedef struct {
@@ -2198,6 +2308,8 @@ setup_batch_async (BatchAsyncData *data, gconstpointer service)
GDataContactsContact *contact;
GError *error = NULL;
+ gdata_test_mock_server_start_trace (mock_server, "setup-batch-async");
+
/* Insert a new contact which we can query asyncly */
contact = gdata_contacts_contact_new (NULL);
gdata_entry_set_title (GDATA_ENTRY (contact), "Fooish Bar");
@@ -2208,6 +2320,8 @@ setup_batch_async (BatchAsyncData *data, gconstpointer service)
g_clear_error (&error);
g_object_unref (contact);
+
+ gdata_mock_server_end_trace (mock_server);
}
static void
@@ -2231,6 +2345,8 @@ test_batch_async (BatchAsyncData *data, gconstpointer service)
GDataBatchOperation *operation;
GMainLoop *main_loop;
+ gdata_test_mock_server_start_trace (mock_server, "batch-async");
+
/* Run an async query operation on the contact */
operation = gdata_batchable_create_operation (GDATA_BATCHABLE (service), gdata_contacts_service_get_primary_authorization_domain (),
"https://www.google.com/m8/feeds/contacts/default/full/batch");
@@ -2244,6 +2360,8 @@ test_batch_async (BatchAsyncData *data, gconstpointer service)
g_main_loop_unref (main_loop);
g_object_unref (operation);
+
+ gdata_mock_server_end_trace (mock_server);
}
static void
@@ -2269,6 +2387,8 @@ test_batch_async_cancellation (BatchAsyncData *data, gconstpointer service)
GCancellable *cancellable;
GError *error = NULL;
+ gdata_test_mock_server_start_trace (mock_server, "batch-async-cancellation");
+
/* Run an async query operation on the contact */
operation = gdata_batchable_create_operation (GDATA_BATCHABLE (service), gdata_contacts_service_get_primary_authorization_domain (),
"https://www.google.com/m8/feeds/contacts/default/full/batch");
@@ -2289,6 +2409,8 @@ test_batch_async_cancellation (BatchAsyncData *data, gconstpointer service)
g_main_loop_unref (main_loop);
g_object_unref (cancellable);
g_object_unref (operation);
+
+ gdata_mock_server_end_trace (mock_server);
}
static void
@@ -2296,6 +2418,8 @@ teardown_batch_async (BatchAsyncData *data, gconstpointer service)
{
GError *error = NULL;
+ gdata_test_mock_server_start_trace (mock_server, "teardown-batch-async");
+
/* Delete the contact */
g_assert (gdata_service_delete_entry (GDATA_SERVICE (service), gdata_contacts_service_get_primary_authorization_domain (),
GDATA_ENTRY (data->new_contact), NULL, &error) == TRUE);
@@ -2303,6 +2427,8 @@ teardown_batch_async (BatchAsyncData *data, gconstpointer service)
g_clear_error (&error);
g_object_unref (data->new_contact);
+
+ gdata_mock_server_end_trace (mock_server);
}
static void
@@ -2387,71 +2513,78 @@ main (int argc, char *argv[])
gint retval;
GDataAuthorizer *authorizer = NULL;
GDataService *service = NULL;
+ GFile *trace_directory;
gdata_test_init (argc, argv);
- if (gdata_test_internet () == TRUE) {
- authorizer = GDATA_AUTHORIZER (gdata_client_login_authorizer_new (CLIENT_ID, GDATA_TYPE_CONTACTS_SERVICE));
- gdata_client_login_authorizer_authenticate (GDATA_CLIENT_LOGIN_AUTHORIZER (authorizer), USERNAME, PASSWORD, NULL, NULL);
-
- service = GDATA_SERVICE (gdata_contacts_service_new (authorizer));
-
- g_test_add_func ("/contacts/authentication", test_authentication);
- g_test_add ("/contacts/authentication/async", GDataAsyncTestData, NULL, gdata_set_up_async_test_data, test_authentication_async,
- gdata_tear_down_async_test_data);
- g_test_add ("/contacts/authentication/async/cancellation", GDataAsyncTestData, NULL, gdata_set_up_async_test_data,
- test_authentication_async_cancellation, gdata_tear_down_async_test_data);
-
- g_test_add ("/contacts/contact/insert", InsertData, service, set_up_insert, test_contact_insert, tear_down_insert);
- g_test_add ("/contacts/contact/update", TempContactData, service, set_up_temp_contact, test_contact_update, tear_down_temp_contact);
-
- g_test_add ("/contacts/query/all_contacts", QueryAllContactsData, service, set_up_query_all_contacts, test_query_all_contacts,
- tear_down_query_all_contacts);
- g_test_add ("/contacts/query/all_contacts/async", GDataAsyncTestData, service, set_up_query_all_contacts_async,
- test_query_all_contacts_async, tear_down_query_all_contacts_async);
- g_test_add ("/contacts/query/all_contacts/async/progress_closure", QueryAllContactsData, service,
- set_up_query_all_contacts, test_query_all_contacts_async_progress_closure, tear_down_query_all_contacts);
- g_test_add ("/contacts/query/all_contacts/cancellation", GDataAsyncTestData, service, set_up_query_all_contacts_async,
- test_query_all_contacts_async_cancellation, tear_down_query_all_contacts_async);
-
- g_test_add_data_func ("/contacts/photo/has_photo", service, test_photo_has_photo);
- g_test_add ("/contacts/photo/add", TempContactData, service, set_up_temp_contact, test_photo_add, tear_down_temp_contact);
- g_test_add ("/contacts/photo/add/async", GDataAsyncTestData, service, set_up_temp_contact_async, test_photo_add_async,
- tear_down_temp_contact_async);
- g_test_add ("/contacts/photo/add/async/cancellation", GDataAsyncTestData, service, set_up_temp_contact_async,
- test_photo_add_async_cancellation, tear_down_temp_contact_async);
- g_test_add ("/contacts/photo/get", TempContactData, service, set_up_temp_contact_with_photo, test_photo_get, tear_down_temp_contact);
- g_test_add ("/contacts/photo/get/async", GDataAsyncTestData, service, set_up_temp_contact_with_photo_async, test_photo_get_async,
- tear_down_temp_contact_with_photo_async);
- g_test_add ("/contacts/photo/get/async/cancellation", GDataAsyncTestData, service, set_up_temp_contact_with_photo_async,
- test_photo_get_async_cancellation, tear_down_temp_contact_with_photo_async);
- g_test_add ("/contacts/photo/delete", TempContactData, service, set_up_temp_contact_with_photo, test_photo_delete,
- tear_down_temp_contact);
- g_test_add ("/contacts/photo/delete/async", GDataAsyncTestData, service, set_up_temp_contact_with_photo_async,
- test_photo_delete_async, tear_down_temp_contact_with_photo_async);
- g_test_add ("/contacts/photo/delete/async/cancellation", GDataAsyncTestData, service, set_up_temp_contact_with_photo_async,
- test_photo_delete_async_cancellation, tear_down_temp_contact_with_photo_async);
-
- g_test_add_data_func ("/contacts/batch", service, test_batch);
- g_test_add ("/contacts/batch/async", BatchAsyncData, service, setup_batch_async, test_batch_async, teardown_batch_async);
- g_test_add ("/contacts/batch/async/cancellation", BatchAsyncData, service, setup_batch_async, test_batch_async_cancellation,
- teardown_batch_async);
-
- g_test_add ("/contacts/group/query", QueryAllGroupsData, service, set_up_query_all_groups, test_query_all_groups,
- tear_down_query_all_groups);
- g_test_add ("/contacts/group/query/async", GDataAsyncTestData, service, set_up_query_all_groups_async,
- test_query_all_groups_async, tear_down_query_all_groups_async);
- g_test_add ("/contacts/group/query/async/progress_closure", QueryAllGroupsData, service, set_up_query_all_groups,
- test_query_all_groups_async_progress_closure, tear_down_query_all_groups);
- g_test_add ("/contacts/group/query/async/cancellation", GDataAsyncTestData, service, set_up_query_all_groups_async,
- test_query_all_groups_async_cancellation, tear_down_query_all_groups_async);
-
- g_test_add ("/contacts/group/insert", InsertGroupData, service, set_up_insert_group, test_group_insert, tear_down_insert_group);
- g_test_add ("/contacts/group/insert/async", GDataAsyncTestData, service, set_up_insert_group_async, test_group_insert_async,
- tear_down_insert_group_async);
- g_test_add ("/contacts/group/insert/async/cancellation", GDataAsyncTestData, service, set_up_insert_group_async,
- test_group_insert_async_cancellation, tear_down_insert_group_async);
- }
+ mock_server = gdata_test_get_mock_server ();
+ trace_directory = g_file_new_for_path ("traces/contacts");
+ gdata_mock_server_set_trace_directory (mock_server, trace_directory);
+ g_object_unref (trace_directory);
+
+ gdata_test_mock_server_start_trace (mock_server, "global-authentication");
+ authorizer = GDATA_AUTHORIZER (gdata_client_login_authorizer_new (CLIENT_ID, GDATA_TYPE_CONTACTS_SERVICE));
+ gdata_client_login_authorizer_authenticate (GDATA_CLIENT_LOGIN_AUTHORIZER (authorizer), USERNAME, PASSWORD, NULL, NULL);
+ gdata_mock_server_end_trace (mock_server);
+
+ service = GDATA_SERVICE (gdata_contacts_service_new (authorizer));
+
+ g_test_add_func ("/contacts/authentication", test_authentication);
+ g_test_add ("/contacts/authentication/async", GDataAsyncTestData, NULL, gdata_set_up_async_test_data, test_authentication_async,
+ gdata_tear_down_async_test_data);
+ g_test_add ("/contacts/authentication/async/cancellation", GDataAsyncTestData, NULL, gdata_set_up_async_test_data,
+ test_authentication_async_cancellation, gdata_tear_down_async_test_data);
+
+ g_test_add ("/contacts/contact/insert", InsertData, service, set_up_insert, test_contact_insert, tear_down_insert);
+ g_test_add ("/contacts/contact/update", TempContactData, service, set_up_temp_contact, test_contact_update, tear_down_temp_contact);
+
+ g_test_add ("/contacts/query/all_contacts", QueryAllContactsData, service, set_up_query_all_contacts, test_query_all_contacts,
+ tear_down_query_all_contacts);
+ g_test_add ("/contacts/query/all_contacts/async", GDataAsyncTestData, service, set_up_query_all_contacts_async,
+ test_query_all_contacts_async, tear_down_query_all_contacts_async);
+ g_test_add ("/contacts/query/all_contacts/async/progress_closure", QueryAllContactsData, service,
+ set_up_query_all_contacts, test_query_all_contacts_async_progress_closure, tear_down_query_all_contacts);
+ g_test_add ("/contacts/query/all_contacts/cancellation", GDataAsyncTestData, service, set_up_query_all_contacts_async,
+ test_query_all_contacts_async_cancellation, tear_down_query_all_contacts_async);
+
+ g_test_add_data_func ("/contacts/photo/has_photo", service, test_photo_has_photo);
+ g_test_add ("/contacts/photo/add", TempContactData, service, set_up_temp_contact, test_photo_add, tear_down_temp_contact);
+ g_test_add ("/contacts/photo/add/async", GDataAsyncTestData, service, set_up_temp_contact_async, test_photo_add_async,
+ tear_down_temp_contact_async);
+ g_test_add ("/contacts/photo/add/async/cancellation", GDataAsyncTestData, service, set_up_temp_contact_async,
+ test_photo_add_async_cancellation, tear_down_temp_contact_async);
+ g_test_add ("/contacts/photo/get", TempContactData, service, set_up_temp_contact_with_photo, test_photo_get, tear_down_temp_contact);
+ g_test_add ("/contacts/photo/get/async", GDataAsyncTestData, service, set_up_temp_contact_with_photo_async, test_photo_get_async,
+ tear_down_temp_contact_with_photo_async);
+ g_test_add ("/contacts/photo/get/async/cancellation", GDataAsyncTestData, service, set_up_temp_contact_with_photo_async,
+ test_photo_get_async_cancellation, tear_down_temp_contact_with_photo_async);
+
+ g_test_add ("/contacts/photo/delete", TempContactData, service, set_up_temp_contact_with_photo, test_photo_delete,
+ tear_down_temp_contact);
+ g_test_add ("/contacts/photo/delete/async", GDataAsyncTestData, service, set_up_temp_contact_with_photo_async,
+ test_photo_delete_async, tear_down_temp_contact_with_photo_async);
+ g_test_add ("/contacts/photo/delete/async/cancellation", GDataAsyncTestData, service, set_up_temp_contact_with_photo_async,
+ test_photo_delete_async_cancellation, tear_down_temp_contact_with_photo_async);
+
+ g_test_add_data_func ("/contacts/batch", service, test_batch);
+ g_test_add ("/contacts/batch/async", BatchAsyncData, service, setup_batch_async, test_batch_async, teardown_batch_async);
+ g_test_add ("/contacts/batch/async/cancellation", BatchAsyncData, service, setup_batch_async, test_batch_async_cancellation,
+ teardown_batch_async);
+
+ g_test_add ("/contacts/group/query", QueryAllGroupsData, service, set_up_query_all_groups, test_query_all_groups,
+ tear_down_query_all_groups);
+ g_test_add ("/contacts/group/query/async", GDataAsyncTestData, service, set_up_query_all_groups_async,
+ test_query_all_groups_async, tear_down_query_all_groups_async);
+ g_test_add ("/contacts/group/query/async/progress_closure", QueryAllGroupsData, service, set_up_query_all_groups,
+ test_query_all_groups_async_progress_closure, tear_down_query_all_groups);
+ g_test_add ("/contacts/group/query/async/cancellation", GDataAsyncTestData, service, set_up_query_all_groups_async,
+ test_query_all_groups_async_cancellation, tear_down_query_all_groups_async);
+
+ g_test_add ("/contacts/group/insert", InsertGroupData, service, set_up_insert_group, test_group_insert, tear_down_insert_group);
+ g_test_add ("/contacts/group/insert/async", GDataAsyncTestData, service, set_up_insert_group_async, test_group_insert_async,
+ tear_down_insert_group_async);
+ g_test_add ("/contacts/group/insert/async/cancellation", GDataAsyncTestData, service, set_up_insert_group_async,
+ test_group_insert_async_cancellation, tear_down_insert_group_async);
g_test_add_func ("/contacts/contact/properties", test_contact_properties);
g_test_add_func ("/contacts/contact/escaping", test_contact_escaping);