aboutsummaryrefslogtreecommitdiff
path: root/tests/utils/mock-greeter.py
blob: dc48a6d814c11f3bfc1d5487a033e00e2b1faed1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
'''desktop greeter mock template

Very basic template that just mocks the greeter is-active flag
'''

# 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.

__author__ = 'Charles Kerr'
__email__ = 'charles.kerr@canonical.com'
__copyright__ = '(c) 2016 Canonical Ltd.'
__license__ = 'LGPL 3+'

import dbus
import os

from dbusmock import MOCK_IFACE, mockobject

BUS_NAME = 'org.ayatana.Greeter'
MAIN_OBJ = '/'
MAIN_IFACE = 'org.ayatana.Greeter'
SYSTEM_BUS = False


def load(mock, parameters):
    mock.AddMethods(
        MAIN_IFACE, [
            ('HideGreeter', '', '', 'self.Set("org.ayatana.Greeter", "IsActive", False)'),
            ('ShowGreeter', '', '', 'self.Set("org.ayatana.Greeter", "IsActive", True)')
        ]
    )
    mock.AddProperties(
        MAIN_IFACE,
        dbus.Dictionary({
            'IsActive': parameters.get('IsActive', False),
        }, signature='sv')
    )