diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/backend-dbus/mock-unity-session.cc | 16 | ||||
-rw-r--r-- | tests/backend-dbus/mock-unity-session.h | 4 |
2 files changed, 18 insertions, 2 deletions
diff --git a/tests/backend-dbus/mock-unity-session.cc b/tests/backend-dbus/mock-unity-session.cc index c996310..d32e339 100644 --- a/tests/backend-dbus/mock-unity-session.cc +++ b/tests/backend-dbus/mock-unity-session.cc @@ -21,7 +21,7 @@ gboolean -MockUnitySession :: handle_lock (UnitySession * us, +MockUnitySession :: handle_lock (UnitySession * us, GDBusMethodInvocation * inv, gpointer gself) { @@ -31,7 +31,7 @@ MockUnitySession :: handle_lock (UnitySession * us, } gboolean -MockUnitySession :: handle_prompt_lock (UnitySession * us, +MockUnitySession :: handle_prompt_lock (UnitySession * us, GDBusMethodInvocation * inv, gpointer gself) { @@ -40,6 +40,16 @@ MockUnitySession :: handle_prompt_lock (UnitySession * us, return true; } +gboolean +MockUnitySession :: handle_request_logout (UnitySession * us, + GDBusMethodInvocation * inv, + gpointer gself) +{ + static_cast<MockUnitySession*>(gself)->my_last_action = RequestLogout; + unity_session_complete_request_logout (us, inv); + return true; +} + /*** **** ***/ @@ -61,6 +71,8 @@ MockUnitySession :: MockUnitySession (GMainLoop * loop, G_CALLBACK(handle_lock), this); g_signal_connect (my_skeleton, "handle-prompt-lock", G_CALLBACK(handle_prompt_lock), this); + g_signal_connect (my_skeleton, "handle-request-logout", + G_CALLBACK(handle_request_logout), this); set_skeleton (G_DBUS_INTERFACE_SKELETON(my_skeleton)); } diff --git a/tests/backend-dbus/mock-unity-session.h b/tests/backend-dbus/mock-unity-session.h index ded246a..9ca5fe9 100644 --- a/tests/backend-dbus/mock-unity-session.h +++ b/tests/backend-dbus/mock-unity-session.h @@ -35,6 +35,7 @@ class MockUnitySession: public MockObject enum Action { None, Lock, PromptLock, RequestLogout, RequestShutdown, RequestReboot }; Action last_action () { return my_last_action; } + void clear_last_action () { my_last_action = None; } private: @@ -47,6 +48,9 @@ class MockUnitySession: public MockObject static gboolean handle_prompt_lock (UnitySession *, GDBusMethodInvocation *, gpointer); + static gboolean handle_request_logout (UnitySession *, + GDBusMethodInvocation *, + gpointer); }; |