summaryrefslogtreecommitdiff
path: root/tests/scripts/switch-to-user.script
blob: b0153d07be7d03a05ab927b7c279415c5d047883 (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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#
# Check that a logged in session can be switched to via the D-Bus interface.
#

RUNNER DAEMON-START
*WAIT

# Show a greeter with alice selected
*SWITCH-TO-USER USERNAME=alice
RUNNER SWITCH-TO-USER USERNAME=alice
XSERVER :.* START
XSERVER :.* INDICATE-READY
XSERVER :.* ACCEPT-CONNECT
GREETER START
XSERVER :.* ACCEPT-CONNECT
GREETER CONNECT-XSERVER :.*
GREETER CONNECT-TO-DAEMON
GREETER CONNECTED-TO-DAEMON

# Alice is logged in
GREETER LOGIN USERNAME=alice
GREETER SHOW-PROMPT TEXT="Password:"
GREETER RESPOND TEXT="password"
GREETER AUTHENTICATION-COMPLETE AUTHENTICATED=TRUE
GREETER QUIT
SESSION START USER=alice
XSERVER :.* ACCEPT-CONNECT
SESSION CONNECT-XSERVER

# Switch again, should not do anything as user session already running
*SWITCH-TO-USER USERNAME=alice
RUNNER SWITCH-TO-USER USERNAME=alice
*WAIT

# Show a new greeter
*SHOW-GREETER
RUNNER SHOW-GREETER
XSERVER :.* START
XSERVER :.* INDICATE-READY
XSERVER :.* ACCEPT-CONNECT
GREETER START
XSERVER :.* ACCEPT-CONNECT
GREETER CONNECT-XSERVER :.*
GREETER CONNECT-TO-DAEMON
GREETER CONNECTED-TO-DAEMON

# Log in as alice
GREETER LOGIN USERNAME=alice
GREETER SHOW-PROMPT TEXT="Password:"
GREETER RESPOND TEXT="password"
GREETER AUTHENTICATION-COMPLETE AUTHENTICATED=TRUE

# New display should quit, and first login should be actived
(GREETER TERMINATE SIGNAL=15|XSERVER :.* TERMINATE SIGNAL=15)
(GREETER TERMINATE SIGNAL=15|XSERVER :.* TERMINATE SIGNAL=15)
*WAIT

# Cleanup
*STOP-DAEMON
# Don't know what order they will terminate
(SESSION TERMINATE SIGNAL=15|XSERVER :.* TERMINATE SIGNAL=15)
(SESSION TERMINATE SIGNAL=15|XSERVER :.* TERMINATE SIGNAL=15)
RUNNER DAEMON-EXIT STATUS=0