"""gnome-shell screensaver mock template
This creates the expected methods and properties of the
org.gnome.ScreenSaver object.
"""
# This program is free software; you can redistribute it and/or modify it under
# the terms of the GNU Lesser General Public License as published by the Free
# Software Foundation; either version 3 of the License, or (at your option) any
# later version. See http://www.gnu.org/copyleft/lgpl.html for the full text
# of the license.
[docs]
__author__ = "Bastien Nocera"
[docs]
__copyright__ = """
(c) 2013 Red Hat Inc.
(c) 2017 - 2022 Martin Pitt <martin@piware.de>
"""
[docs]
BUS_NAME = "org.gnome.ScreenSaver"
[docs]
MAIN_OBJ = "/org/gnome/ScreenSaver"
[docs]
MAIN_IFACE = "org.gnome.ScreenSaver"
[docs]
def load(mock, _parameters):
mock.AddMethods(
MAIN_IFACE,
[
("GetActive", "", "b", "ret = self.is_active"),
("GetActiveTime", "", "u", "ret = 1"),
(
"SetActive",
"b",
"",
'self.is_active = args[0]; self.EmitSignal("", "ActiveChanged", "b", [self.is_active])',
),
("Lock", "", "", "time.sleep(1); self.SetActive(True)"),
("ShowMessage", "sss", "", ""),
("SimulateUserActivity", "", "", ""),
],
)
# default state
mock.is_active = False