1 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
4 #include <libecal/e-cal.h>
6 #include "ecal-test-utils.h"
8 #define OPEN_ASYNC_TIMEOUT 30
10 static void open_timeout_cb (gpointer user_data) __attribute__ ((noreturn));
12 static guint open_timeout_id = 0;
15 open_complete_cb (ECalTestClosure *closure)
17 g_source_remove (open_timeout_id);
19 g_main_loop_quit ((GMainLoop*) closure->user_data);
23 open_timeout_cb (gpointer user_data)
25 g_warning ("failed to get a response for the async 'open' within a "
26 "reasonable time frame");
31 main (gint argc, gchar **argv)
40 cal = ecal_test_utils_cal_new_temp (&uri, E_CAL_SOURCE_TYPE_EVENT);
41 ecal_test_utils_cal_open (cal, FALSE);
42 ecal_test_utils_cal_remove (cal);
45 cal = ecal_test_utils_cal_new_temp (&uri, E_CAL_SOURCE_TYPE_EVENT);
46 open_timeout_id = g_timeout_add_seconds (OPEN_ASYNC_TIMEOUT,
47 (GSourceFunc) open_timeout_cb, cal);
49 loop = g_main_loop_new (NULL, TRUE);
50 ecal_test_utils_cal_async_open (cal, FALSE,
51 (GSourceFunc) open_complete_cb, loop);
52 g_main_loop_run (loop);
54 ecal_test_utils_cal_remove (cal);