1 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
4 #include <libecal/libecal.h>
6 #include "client-test-utils.h"
10 #if 0 /* ACCOUNT_MGMT */
12 objects_added (ECalClientView *cal_view,
13 const GSList *objects)
17 for (l = objects; l; l = l->next) {
18 print_icomp (l->data);
23 objects_removed (ECalClientView *view,
28 for (l = ids; l; l = l->next) {
29 printf (" Removed contact: %s\n", (gchar *) l->data);
34 complete (ECalClientView *view,
37 printf ("view_complete (status == %d, error_msg == %s%s%s)\n", error ? error->code : 0, error ? "'" : "", error ? error->message : "NULL", error ? "'" : "");
41 stress_cal_views (ECalClient *cal_client,
44 ECalClientView *view = NULL;
45 ECalClientView *new_view;
48 g_return_val_if_fail (cal_client != NULL, -1);
49 g_return_val_if_fail (E_IS_CAL_CLIENT (cal_client), -1);
51 for (i = 0; i < NUM_VIEWS; i++) {
54 if (!e_cal_client_get_view_sync (cal_client, "#t", &new_view, NULL, &error)) {
55 report_error ("get cal view sync", &error);
56 g_object_unref (view);
60 g_signal_connect (new_view, "objects_added", G_CALLBACK (objects_added), NULL);
61 g_signal_connect (new_view, "objects_removed", G_CALLBACK (objects_removed), NULL);
62 g_signal_connect (new_view, "complete", G_CALLBACK (complete), NULL);
64 e_cal_client_view_start (new_view, NULL);
67 /* wait 100 ms when in a thread */
71 e_cal_client_view_stop (view, NULL);
72 g_object_unref (view);
78 e_cal_client_view_stop (view, NULL);
79 g_object_unref (view);
85 stress_cal_views_thread (gpointer user_data)
87 stop_main_loop (stress_cal_views (user_data, TRUE));
91 #endif /* ACCOUNT_MGMT */
97 #if 0 /* ACCOUNT_MGMT */
98 ECalClient *cal_client;
103 cal_client = e_cal_client_new_system (E_CAL_CLIENT_SOURCE_TYPE_EVENTS, &error);
105 report_error ("create local calendar", &error);
109 if (!e_client_open_sync (E_CLIENT (cal_client), FALSE, NULL, &error)) {
110 g_object_unref (cal_client);
111 report_error ("open client sync", &error);
115 /* test from main thread */
116 stress_cal_views (cal_client, FALSE);
118 /* test from dedicated thread */
119 start_in_thread_with_main_loop (stress_cal_views_thread, cal_client);
121 g_object_unref (cal_client);
123 return get_main_loop_stop_result ();
124 #endif /* ACCOUNT_MGMT */