summaryrefslogtreecommitdiff
path: root/tests/src/test-runner.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/src/test-runner.c')
-rw-r--r--tests/src/test-runner.c22
1 files changed, 20 insertions, 2 deletions
diff --git a/tests/src/test-runner.c b/tests/src/test-runner.c
index 5694e5f4..1cc6962b 100644
--- a/tests/src/test-runner.c
+++ b/tests/src/test-runner.c
@@ -1395,7 +1395,11 @@ handle_ck_session_call (GDBusConnection *connection,
{
CKSession *session = user_data;
- if (strcmp (method_name, "Lock") == 0)
+ if (strcmp (method_name, "GetXDGRuntimeDir") == 0 && !g_key_file_get_boolean (config, "test-runner-config", "ck-no-xdg-runtime", NULL))
+ {
+ g_dbus_method_invocation_return_value (invocation, g_variant_new ("(s)", "/run/console-kit"));
+ }
+ else if (strcmp (method_name, "Lock") == 0)
{
if (!session->locked)
check_status ("CONSOLE-KIT LOCK-SESSION");
@@ -1464,9 +1468,20 @@ ck_name_acquired_cb (GDBusConnection *connection,
{
handle_ck_call,
};
+ const gchar *ck_session_interface_old =
+ "<node>"
+ " <interface name='org.freedesktop.ConsoleKit.Session'>"
+ " <method name='Lock'/>"
+ " <method name='Unlock'/>"
+ " <method name='Activate'/>"
+ " </interface>"
+ "</node>";
const gchar *ck_session_interface =
"<node>"
" <interface name='org.freedesktop.ConsoleKit.Session'>"
+ " <method name='GetXDGRuntimeDir'>"
+ " <arg name='dir' direction='out' type='s'/>"
+ " </method>"
" <method name='Lock'/>"
" <method name='Unlock'/>"
" <method name='Activate'/>"
@@ -1481,7 +1496,10 @@ ck_name_acquired_cb (GDBusConnection *connection,
g_clear_error (&error);
if (!ck_info)
return;
- ck_session_info = g_dbus_node_info_new_for_xml (ck_session_interface, &error);
+ if (g_key_file_get_boolean (config, "test-runner-config", "ck-no-xdg-runtime", NULL))
+ ck_session_info = g_dbus_node_info_new_for_xml (ck_session_interface_old, &error);
+ else
+ ck_session_info = g_dbus_node_info_new_for_xml (ck_session_interface, &error);
if (error)
g_warning ("Failed to parse D-Bus interface: %s", error->message);
g_clear_error (&error);