blob: 526c1cbc52c049c454d479a8869077cb786649c6 [file] [log] [blame]
Emeric Vigier2f625822012-08-06 11:09:52 -04001
2#include <config.h>
3#include "../test-utils.h"
4
5static DBusLoop *loop;
6
7static void
8die (const char *message)
9{
10 fprintf (stderr, "*** test-shutdown: %s", message);
11 exit (1);
12}
13
14static void
15open_destroy_shared_session_bus_connection (void)
16{
17 DBusError error;
18 DBusConnection *connection;
19 char *session_addr_no_guid;
20 char *comma;
21
22 dbus_error_init (&error);
23
24 session_addr_no_guid = strdup (getenv ("DBUS_SESSION_BUS_ADDRESS"));
25 comma = strchr (session_addr_no_guid, ',');
26 if (comma == NULL)
27 die ("Couldn't find GUID in session bus address");
28 *comma = '\0';
29
30 connection = dbus_connection_open (session_addr_no_guid, &error);
31 free (session_addr_no_guid);
32 if (connection == NULL)
33 die ("Failed to open connection to temp session bus\n");
34
35 loop = _dbus_loop_new ();
36 if (loop == NULL)
37 die ("No memory\n");
38
39 if (!test_connection_setup (loop, connection))
40 die ("No memory\n");
41
42 test_connection_shutdown (loop, connection);
43
44 _dbus_loop_unref (loop);
45
46 dbus_connection_unref (connection);
47}
48
49int
50main (int argc,
51 char **argv)
52{
53 open_destroy_shared_session_bus_connection ();
54
55 dbus_shutdown ();
56
57 open_destroy_shared_session_bus_connection ();
58
59 dbus_shutdown ();
60
61 open_destroy_shared_session_bus_connection ();
62
63 dbus_shutdown ();
64
65 _dbus_verbose ("*** Test shutdown exiting\n");
66
67 return 0;
68}