summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/Makefile.am19
-rw-r--r--tests/scripts/keyboard-layout.conf34
-rw-r--r--tests/scripts/language.conf13
-rw-r--r--tests/scripts/no-keyboard-layout.conf30
-rw-r--r--tests/scripts/no-language.conf30
-rw-r--r--tests/scripts/user-background.conf39
-rw-r--r--tests/scripts/user-has-messages.conf39
-rw-r--r--tests/scripts/user-image.conf39
-rw-r--r--tests/scripts/user-layout.conf45
-rw-r--r--tests/scripts/user-name.conf48
-rw-r--r--tests/scripts/user-properties.conf95
-rw-r--r--tests/scripts/user-session.conf92
-rwxr-xr-xtests/test-keyboard-layout2
-rwxr-xr-xtests/test-no-keyboard-layout2
-rwxr-xr-xtests/test-no-language2
-rwxr-xr-xtests/test-user-background2
-rwxr-xr-xtests/test-user-has-messages2
-rwxr-xr-xtests/test-user-image2
-rwxr-xr-xtests/test-user-layout2
-rwxr-xr-xtests/test-user-name2
-rwxr-xr-xtests/test-user-session2
21 files changed, 338 insertions, 203 deletions
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 698e80ce..692fa00c 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -60,12 +60,14 @@ TESTS = \
test-system-xauthority \
test-user-renamed \
test-user-renamed-invalid \
+ test-user-name \
+ test-user-image \
+ test-user-background \
+ test-user-layout \
+ test-user-has-messages \
+ test-user-session \
test-users-gobject \
- test-user-properties \
- test-keyboard-layout \
- test-no-keyboard-layout \
test-language \
- test-no-language \
test-language-no-accounts-service \
test-login-crash-authenticate \
test-login-gobject \
@@ -339,7 +341,6 @@ EXTRA_DIST = \
scripts/headless.conf \
scripts/home-dir-on-authenticate.conf \
scripts/home-dir-on-session.conf \
- scripts/keyboard-layout.conf \
scripts/language.conf \
scripts/language-env.conf \
scripts/language-no-accounts-service.conf \
@@ -386,8 +387,6 @@ EXTRA_DIST = \
scripts/no-config.conf \
scripts/no-console-kit.conf \
scripts/no-console-kit-or-login1.conf \
- scripts/no-keyboard-layout.conf \
- scripts/no-language.conf \
scripts/no-login1.conf \
scripts/open-file-descriptors.conf \
scripts/pam.conf \
@@ -438,7 +437,11 @@ EXTRA_DIST = \
scripts/upstart-autologin.conf \
scripts/upstart-login.conf \
scripts/users.conf \
- scripts/user-properties.conf \
+ scripts/user-background.conf \
+ scripts/user-has-messages.conf \
+ scripts/user-image.conf \
+ scripts/user-layout.conf \
+ scripts/user-session.conf \
scripts/util-path.conf \
scripts/user-renamed.conf \
scripts/user-renamed-invalid.conf \
diff --git a/tests/scripts/keyboard-layout.conf b/tests/scripts/keyboard-layout.conf
deleted file mode 100644
index bd1b4505..00000000
--- a/tests/scripts/keyboard-layout.conf
+++ /dev/null
@@ -1,34 +0,0 @@
-#
-# Check returns correct layout for a user
-#
-
-#?RUNNER DAEMON-START
-
-# X server starts
-#?XSERVER-0 START VT=7
-
-# Daemon connects when X server is ready
-#?*XSERVER-0 INDICATE-READY
-#?XSERVER-0 INDICATE-READY
-#?XSERVER-0 ACCEPT-CONNECT
-
-# Greeter starts
-#?GREETER-X-0 START XDG_SEAT=seat0 XDG_VTNR=7 XDG_SESSION_CLASS=greeter
-#?XSERVER-0 ACCEPT-CONNECT
-#?GREETER-X-0 CONNECT-XSERVER
-#?GREETER-X-0 CONNECT-TO-DAEMON
-#?GREETER-X-0 CONNECTED-TO-DAEMON
-
-# Correct layout is found
-#?*GREETER-X-0 LOG-USER USERNAME=have-layout FIELDS=LAYOUT
-#?GREETER-X-0 LOG-USER USERNAME=have-layout LAYOUT=us
-#?*GREETER-X-0 LOG-USER USERNAME=have-layouts FIELDS=LAYOUT
-#?GREETER-X-0 LOG-USER USERNAME=have-layouts LAYOUT=fr oss
-#?*GREETER-X-0 LOG-USER USERNAME=have-layouts FIELDS=LAYOUTS
-#?GREETER-X-0 LOG-USER USERNAME=have-layouts LAYOUTS=fr oss;ru
-
-# Cleanup
-#?*STOP-DAEMON
-#?GREETER-X-0 TERMINATE SIGNAL=15
-#?XSERVER-0 TERMINATE SIGNAL=15
-#?RUNNER DAEMON-EXIT STATUS=0
diff --git a/tests/scripts/language.conf b/tests/scripts/language.conf
index fe968fc1..8c8aa8ca 100644
--- a/tests/scripts/language.conf
+++ b/tests/scripts/language.conf
@@ -23,6 +23,19 @@
#?*GREETER-X-0 LOG-USER USERNAME=have-language FIELDS=LANGUAGE
#?GREETER-X-0 LOG-USER USERNAME=have-language LANGUAGE=en_AU
+# Watch a user for properties changes
+#?*GREETER-X-0 WATCH-USER USERNAME=prop-user
+#?GREETER-X-0 WATCH-USER USERNAME=prop-user
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=LANGUAGE
+#?GREETER-X-0 LOG-USER USERNAME=prop-user LANGUAGE=
+
+# Change language
+#?*UPDATE-USER USERNAME=prop-user LANGUAGE=klingon
+#?RUNNER UPDATE-USER USERNAME=prop-user LANGUAGE=klingon
+#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=LANGUAGE
+#?GREETER-X-0 LOG-USER USERNAME=prop-user LANGUAGE=klingon
+
# Cleanup
#?*STOP-DAEMON
#?GREETER-X-0 TERMINATE SIGNAL=15
diff --git a/tests/scripts/no-keyboard-layout.conf b/tests/scripts/no-keyboard-layout.conf
deleted file mode 100644
index 82a077fe..00000000
--- a/tests/scripts/no-keyboard-layout.conf
+++ /dev/null
@@ -1,30 +0,0 @@
-#
-# Check handles user that has no keyboard layout
-#
-
-#?RUNNER DAEMON-START
-
-# X server starts
-#?XSERVER-0 START VT=7
-
-# Daemon connects when X server is ready
-#?*XSERVER-0 INDICATE-READY
-#?XSERVER-0 INDICATE-READY
-#?XSERVER-0 ACCEPT-CONNECT
-
-# Greeter starts
-#?GREETER-X-0 START XDG_SEAT=seat0 XDG_VTNR=7 XDG_SESSION_CLASS=greeter
-#?XSERVER-0 ACCEPT-CONNECT
-#?GREETER-X-0 CONNECT-XSERVER
-#?GREETER-X-0 CONNECT-TO-DAEMON
-#?GREETER-X-0 CONNECTED-TO-DAEMON
-
-# Correct layout is found
-#?*GREETER-X-0 LOG-USER USERNAME=have-password1 FIELDS=LAYOUT
-#?GREETER-X-0 LOG-USER USERNAME=have-password1 LAYOUT=
-
-# Cleanup
-#?*STOP-DAEMON
-#?GREETER-X-0 TERMINATE SIGNAL=15
-#?XSERVER-0 TERMINATE SIGNAL=15
-#?RUNNER DAEMON-EXIT STATUS=0
diff --git a/tests/scripts/no-language.conf b/tests/scripts/no-language.conf
deleted file mode 100644
index 61413cb0..00000000
--- a/tests/scripts/no-language.conf
+++ /dev/null
@@ -1,30 +0,0 @@
-#
-# Check handles user that has no language set
-#
-
-#?RUNNER DAEMON-START
-
-# X server starts
-#?XSERVER-0 START VT=7
-
-# Daemon connects when X server is ready
-#?*XSERVER-0 INDICATE-READY
-#?XSERVER-0 INDICATE-READY
-#?XSERVER-0 ACCEPT-CONNECT
-
-# Greeter starts
-#?GREETER-X-0 START XDG_SEAT=seat0 XDG_VTNR=7 XDG_SESSION_CLASS=greeter
-#?XSERVER-0 ACCEPT-CONNECT
-#?GREETER-X-0 CONNECT-XSERVER
-#?GREETER-X-0 CONNECT-TO-DAEMON
-#?GREETER-X-0 CONNECTED-TO-DAEMON
-
-# Correct layout is found
-#?*GREETER-X-0 LOG-USER USERNAME=have-password1 FIELDS=LANGUAGE
-#?GREETER-X-0 LOG-USER USERNAME=have-password1 LANGUAGE=
-
-# Cleanup
-#?*STOP-DAEMON
-#?GREETER-X-0 TERMINATE SIGNAL=15
-#?XSERVER-0 TERMINATE SIGNAL=15
-#?RUNNER DAEMON-EXIT STATUS=0
diff --git a/tests/scripts/user-background.conf b/tests/scripts/user-background.conf
new file mode 100644
index 00000000..6d323eb6
--- /dev/null
+++ b/tests/scripts/user-background.conf
@@ -0,0 +1,39 @@
+#
+# Check returns correct background for a user
+#
+
+#?RUNNER DAEMON-START
+
+# X server starts
+#?XSERVER-0 START VT=7
+
+# Daemon connects when X server is ready
+#?*XSERVER-0 INDICATE-READY
+#?XSERVER-0 INDICATE-READY
+#?XSERVER-0 ACCEPT-CONNECT
+
+# Greeter starts
+#?GREETER-X-0 START XDG_SEAT=seat0 XDG_VTNR=7 XDG_SESSION_CLASS=greeter
+#?XSERVER-0 ACCEPT-CONNECT
+#?GREETER-X-0 CONNECT-XSERVER
+#?GREETER-X-0 CONNECT-TO-DAEMON
+#?GREETER-X-0 CONNECTED-TO-DAEMON
+
+# Watch a user for properties changes
+#?*GREETER-X-0 WATCH-USER USERNAME=prop-user
+#?GREETER-X-0 WATCH-USER USERNAME=prop-user
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=BACKGROUND
+#?GREETER-X-0 LOG-USER USERNAME=prop-user BACKGROUND=
+
+# Change background
+#?*UPDATE-USER USERNAME=prop-user BACKGROUND=field
+#?RUNNER UPDATE-USER USERNAME=prop-user BACKGROUND=field
+#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=BACKGROUND
+#?GREETER-X-0 LOG-USER USERNAME=prop-user BACKGROUND=field
+
+# Cleanup
+#?*STOP-DAEMON
+#?GREETER-X-0 TERMINATE SIGNAL=15
+#?XSERVER-0 TERMINATE SIGNAL=15
+#?RUNNER DAEMON-EXIT STATUS=0
diff --git a/tests/scripts/user-has-messages.conf b/tests/scripts/user-has-messages.conf
new file mode 100644
index 00000000..bded33c9
--- /dev/null
+++ b/tests/scripts/user-has-messages.conf
@@ -0,0 +1,39 @@
+#
+# Check user indicates if they have messages
+#
+
+#?RUNNER DAEMON-START
+
+# X server starts
+#?XSERVER-0 START VT=7
+
+# Daemon connects when X server is ready
+#?*XSERVER-0 INDICATE-READY
+#?XSERVER-0 INDICATE-READY
+#?XSERVER-0 ACCEPT-CONNECT
+
+# Greeter starts
+#?GREETER-X-0 START XDG_SEAT=seat0 XDG_VTNR=7 XDG_SESSION_CLASS=greeter
+#?XSERVER-0 ACCEPT-CONNECT
+#?GREETER-X-0 CONNECT-XSERVER
+#?GREETER-X-0 CONNECT-TO-DAEMON
+#?GREETER-X-0 CONNECTED-TO-DAEMON
+
+# Watch a user for properties changes
+#?*GREETER-X-0 WATCH-USER USERNAME=prop-user
+#?GREETER-X-0 WATCH-USER USERNAME=prop-user
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=HAS-MESSAGES
+#?GREETER-X-0 LOG-USER USERNAME=prop-user HAS-MESSAGES=FALSE
+
+# Flag a user as having messages
+#?*UPDATE-USER USERNAME=prop-user HAS-MESSAGES=TRUE
+#?RUNNER UPDATE-USER USERNAME=prop-user HAS-MESSAGES=TRUE
+#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=HAS-MESSAGES
+#?GREETER-X-0 LOG-USER USERNAME=prop-user HAS-MESSAGES=TRUE
+
+# Cleanup
+#?*STOP-DAEMON
+#?GREETER-X-0 TERMINATE SIGNAL=15
+#?XSERVER-0 TERMINATE SIGNAL=15
+#?RUNNER DAEMON-EXIT STATUS=0
diff --git a/tests/scripts/user-image.conf b/tests/scripts/user-image.conf
new file mode 100644
index 00000000..630b9ecd
--- /dev/null
+++ b/tests/scripts/user-image.conf
@@ -0,0 +1,39 @@
+#
+# Check returns correct image for a user
+#
+
+#?RUNNER DAEMON-START
+
+# X server starts
+#?XSERVER-0 START VT=7
+
+# Daemon connects when X server is ready
+#?*XSERVER-0 INDICATE-READY
+#?XSERVER-0 INDICATE-READY
+#?XSERVER-0 ACCEPT-CONNECT
+
+# Greeter starts
+#?GREETER-X-0 START XDG_SEAT=seat0 XDG_VTNR=7 XDG_SESSION_CLASS=greeter
+#?XSERVER-0 ACCEPT-CONNECT
+#?GREETER-X-0 CONNECT-XSERVER
+#?GREETER-X-0 CONNECT-TO-DAEMON
+#?GREETER-X-0 CONNECTED-TO-DAEMON
+
+# Watch a user for properties changes
+#?*GREETER-X-0 WATCH-USER USERNAME=prop-user
+#?GREETER-X-0 WATCH-USER USERNAME=prop-user
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=IMAGE
+#?GREETER-X-0 LOG-USER USERNAME=prop-user IMAGE=
+
+# Change image
+#?*UPDATE-USER USERNAME=prop-user IMAGE=flower
+#?RUNNER UPDATE-USER USERNAME=prop-user IMAGE=flower
+#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=IMAGE
+#?GREETER-X-0 LOG-USER USERNAME=prop-user IMAGE=flower
+
+# Cleanup
+#?*STOP-DAEMON
+#?GREETER-X-0 TERMINATE SIGNAL=15
+#?XSERVER-0 TERMINATE SIGNAL=15
+#?RUNNER DAEMON-EXIT STATUS=0
diff --git a/tests/scripts/user-layout.conf b/tests/scripts/user-layout.conf
new file mode 100644
index 00000000..f8867a46
--- /dev/null
+++ b/tests/scripts/user-layout.conf
@@ -0,0 +1,45 @@
+#
+# Check returns correct layout for a user
+#
+
+#?RUNNER DAEMON-START
+
+# X server starts
+#?XSERVER-0 START VT=7
+
+# Daemon connects when X server is ready
+#?*XSERVER-0 INDICATE-READY
+#?XSERVER-0 INDICATE-READY
+#?XSERVER-0 ACCEPT-CONNECT
+
+# Greeter starts
+#?GREETER-X-0 START XDG_SEAT=seat0 XDG_VTNR=7 XDG_SESSION_CLASS=greeter
+#?XSERVER-0 ACCEPT-CONNECT
+#?GREETER-X-0 CONNECT-XSERVER
+#?GREETER-X-0 CONNECT-TO-DAEMON
+#?GREETER-X-0 CONNECTED-TO-DAEMON
+
+# Correct layout is found
+#?*GREETER-X-0 LOG-USER USERNAME=have-layout FIELDS=LAYOUT
+#?GREETER-X-0 LOG-USER USERNAME=have-layout LAYOUT=us
+#?*GREETER-X-0 LOG-USER USERNAME=have-layouts FIELDS=LAYOUT,LAYOUTS
+#?GREETER-X-0 LOG-USER USERNAME=have-layouts LAYOUT=fr oss LAYOUTS=fr oss;ru
+
+# Watch a user for properties changes
+#?*GREETER-X-0 WATCH-USER USERNAME=prop-user
+#?GREETER-X-0 WATCH-USER USERNAME=prop-user
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=LAYOUT,LAYOUTS
+#?GREETER-X-0 LOG-USER USERNAME=prop-user LAYOUT= LAYOUTS=
+
+# Update layout
+#?*UPDATE-USER USERNAME=prop-user LAYOUTS=en_NZ.utf8;en_AU.utf8
+#?RUNNER UPDATE-USER USERNAME=prop-user LAYOUTS=en_NZ.utf8;en_AU.utf8
+#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=LAYOUT,LAYOUTS
+#?GREETER-X-0 LOG-USER USERNAME=prop-user LAYOUT=en_NZ.utf8 LAYOUTS=en_NZ.utf8;en_AU.utf8
+
+# Cleanup
+#?*STOP-DAEMON
+#?GREETER-X-0 TERMINATE SIGNAL=15
+#?XSERVER-0 TERMINATE SIGNAL=15
+#?RUNNER DAEMON-EXIT STATUS=0
diff --git a/tests/scripts/user-name.conf b/tests/scripts/user-name.conf
new file mode 100644
index 00000000..f91c1ee5
--- /dev/null
+++ b/tests/scripts/user-name.conf
@@ -0,0 +1,48 @@
+#
+# Check returns correct real/display name for a user
+#
+
+#?RUNNER DAEMON-START
+
+# X server starts
+#?XSERVER-0 START VT=7
+
+# Daemon connects when X server is ready
+#?*XSERVER-0 INDICATE-READY
+#?XSERVER-0 INDICATE-READY
+#?XSERVER-0 ACCEPT-CONNECT
+
+# Greeter starts
+#?GREETER-X-0 START XDG_SEAT=seat0 XDG_VTNR=7 XDG_SESSION_CLASS=greeter
+#?XSERVER-0 ACCEPT-CONNECT
+#?GREETER-X-0 CONNECT-XSERVER
+#?GREETER-X-0 CONNECT-TO-DAEMON
+#?GREETER-X-0 CONNECTED-TO-DAEMON
+
+# Watch a user for properties changes
+#?*GREETER-X-0 WATCH-USER USERNAME=prop-user
+#?GREETER-X-0 WATCH-USER USERNAME=prop-user
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=REAL-NAME,DISPLAY-NAME
+#?GREETER-X-0 LOG-USER USERNAME=prop-user REAL-NAME=TEST DISPLAY-NAME=TEST
+
+# Change real name
+#?*UPDATE-USER USERNAME=prop-user REAL-NAME=RENAMED
+#?RUNNER UPDATE-USER USERNAME=prop-user REAL-NAME=RENAMED
+#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=REAL-NAME
+#?GREETER-X-0 LOG-USER USERNAME=prop-user REAL-NAME=RENAMED
+
+# Check display name reverts to username if real name is blank
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=DISPLAY-NAME
+#?GREETER-X-0 LOG-USER USERNAME=prop-user DISPLAY-NAME=RENAMED
+#?*UPDATE-USER USERNAME=prop-user REAL-NAME=
+#?RUNNER UPDATE-USER USERNAME=prop-user REAL-NAME=
+#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=DISPLAY-NAME
+#?GREETER-X-0 LOG-USER USERNAME=prop-user DISPLAY-NAME=prop-user
+
+# Cleanup
+#?*STOP-DAEMON
+#?GREETER-X-0 TERMINATE SIGNAL=15
+#?XSERVER-0 TERMINATE SIGNAL=15
+#?RUNNER DAEMON-EXIT STATUS=0
diff --git a/tests/scripts/user-properties.conf b/tests/scripts/user-properties.conf
deleted file mode 100644
index 70dcd401..00000000
--- a/tests/scripts/user-properties.conf
+++ /dev/null
@@ -1,95 +0,0 @@
-#
-# Check can use get properties of users
-#
-
-[test-greeter-config]
-log-user-changes=true
-
-#?RUNNER DAEMON-START
-
-# X server starts
-#?XSERVER-0 START VT=7
-
-# Daemon connects when X server is ready
-#?*XSERVER-0 INDICATE-READY
-#?XSERVER-0 INDICATE-READY
-#?XSERVER-0 ACCEPT-CONNECT
-
-# Greeter starts
-#?GREETER-X-0 START XDG_SEAT=seat0 XDG_VTNR=7 XDG_SESSION_CLASS=greeter
-#?XSERVER-0 ACCEPT-CONNECT
-#?GREETER-X-0 CONNECT-XSERVER
-#?GREETER-X-0 CONNECT-TO-DAEMON
-#?GREETER-X-0 CONNECTED-TO-DAEMON
-
-# Watch a user for properties changes
-#?*GREETER-X-0 WATCH-USER USERNAME=prop-user
-#?GREETER-X-0 WATCH-USER USERNAME=prop-user
-#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=REAL-NAME,IMAGE,BACKGROUND,LANGUAGE,SESSION,HAS-MESSAGES
-#?GREETER-X-0 LOG-USER USERNAME=prop-user REAL-NAME=TEST IMAGE= BACKGROUND= LANGUAGE= SESSION= HAS-MESSAGES=FALSE
-
-# Change real name
-#?*UPDATE-USER USERNAME=prop-user REAL-NAME=RENAMED
-#?RUNNER UPDATE-USER USERNAME=prop-user REAL-NAME=RENAMED
-#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
-#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=REAL-NAME
-#?GREETER-X-0 LOG-USER USERNAME=prop-user REAL-NAME=RENAMED
-
-# Check display name reverts to username if real name is blank
-#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=DISPLAY-NAME
-#?GREETER-X-0 LOG-USER USERNAME=prop-user DISPLAY-NAME=RENAMED
-#?*UPDATE-USER USERNAME=prop-user REAL-NAME=
-#?RUNNER UPDATE-USER USERNAME=prop-user REAL-NAME=
-#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
-#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=DISPLAY-NAME
-#?GREETER-X-0 LOG-USER USERNAME=prop-user DISPLAY-NAME=prop-user
-
-# Change image
-#?*UPDATE-USER USERNAME=prop-user IMAGE=flower
-#?RUNNER UPDATE-USER USERNAME=prop-user IMAGE=flower
-#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
-#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=IMAGE
-#?GREETER-X-0 LOG-USER USERNAME=prop-user IMAGE=flower
-
-# Change background
-#?*UPDATE-USER USERNAME=prop-user BACKGROUND=field
-#?RUNNER UPDATE-USER USERNAME=prop-user BACKGROUND=field
-#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
-#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=BACKGROUND
-#?GREETER-X-0 LOG-USER USERNAME=prop-user BACKGROUND=field
-
-# Change language
-#?*UPDATE-USER USERNAME=prop-user LANGUAGE=klingon
-#?RUNNER UPDATE-USER USERNAME=prop-user LANGUAGE=klingon
-#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
-#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=LANGUAGE
-#?GREETER-X-0 LOG-USER USERNAME=prop-user LANGUAGE=klingon
-
-# Change layouts
-#?*UPDATE-USER USERNAME=prop-user LAYOUTS=en_NZ.utf8;en_AU.utf8
-#?RUNNER UPDATE-USER USERNAME=prop-user LAYOUTS=en_NZ.utf8;en_AU.utf8
-#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
-#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=LAYOUT,LAYOUTS
-#?GREETER-X-0 LOG-USER USERNAME=prop-user LAYOUT=en_NZ.utf8 LAYOUTS=en_NZ.utf8;en_AU.utf8
-
-# Change default session
-#?*UPDATE-USER USERNAME=prop-user SESSION=alternative
-#?RUNNER UPDATE-USER USERNAME=prop-user SESSION=alternative
-#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
-#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=SESSION
-#?GREETER-X-0 LOG-USER USERNAME=prop-user SESSION=alternative
-
-# Flag a user as having messages
-#?*UPDATE-USER USERNAME=prop-user HAS-MESSAGES=TRUE
-#?RUNNER UPDATE-USER USERNAME=prop-user HAS-MESSAGES=TRUE
-#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
-#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=HAS-MESSAGES
-#?GREETER-X-0 LOG-USER USERNAME=prop-user HAS-MESSAGES=TRUE
-
-# Logged in?
-
-# Cleanup
-#?*STOP-DAEMON
-#?GREETER-X-0 TERMINATE SIGNAL=15
-#?XSERVER-0 TERMINATE SIGNAL=15
-#?RUNNER DAEMON-EXIT STATUS=0
diff --git a/tests/scripts/user-session.conf b/tests/scripts/user-session.conf
new file mode 100644
index 00000000..963f5cb8
--- /dev/null
+++ b/tests/scripts/user-session.conf
@@ -0,0 +1,92 @@
+#
+# Check get correct user session
+#
+
+[SeatDefaults]
+user-session=default
+
+[test-greeter-config]
+log-user-changes=true
+
+#?RUNNER DAEMON-START
+
+# X server starts
+#?XSERVER-0 START VT=7
+
+# Daemon connects when X server is ready
+#?*XSERVER-0 INDICATE-READY
+#?XSERVER-0 INDICATE-READY
+#?XSERVER-0 ACCEPT-CONNECT
+
+# Greeter starts
+#?GREETER-X-0 START XDG_SEAT=seat0 XDG_VTNR=7 XDG_SESSION_CLASS=greeter
+#?XSERVER-0 ACCEPT-CONNECT
+#?GREETER-X-0 CONNECT-XSERVER
+#?GREETER-X-0 CONNECT-TO-DAEMON
+#?GREETER-X-0 CONNECTED-TO-DAEMON
+
+# Check no session set
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=SESSION
+#?GREETER-X-0 LOG-USER USERNAME=prop-user SESSION=
+
+# Log into account
+#?*GREETER-X-0 AUTHENTICATE USERNAME=prop-user
+#?GREETER-X-0 AUTHENTICATION-COMPLETE USERNAME=prop-user AUTHENTICATED=TRUE
+#?*GREETER-X-0 START-SESSION
+#?GREETER-X-0 TERMINATE SIGNAL=15
+
+# Session starts, check it uses the default session
+#?SESSION-X-0 START XDG_SEAT=seat0 XDG_VTNR=7 DESKTOP_SESSION=default USER=prop-user
+#?XSERVER-0 ACCEPT-CONNECT
+#?SESSION-X-0 CONNECT-XSERVER
+
+# Logout session
+#?*SESSION-X-0 LOGOUT
+#?XSERVER-0 TERMINATE SIGNAL=15
+
+# X server starts
+#?XSERVER-0 START VT=7
+
+# Daemon connects when X server is ready
+#?*XSERVER-0 INDICATE-READY
+#?XSERVER-0 INDICATE-READY
+#?XSERVER-0 ACCEPT-CONNECT
+
+# Greeter starts
+#?GREETER-X-0 START XDG_SEAT=seat0 XDG_VTNR=7 XDG_SESSION_CLASS=greeter
+#?XSERVER-0 ACCEPT-CONNECT
+#?GREETER-X-0 CONNECT-XSERVER
+#?GREETER-X-0 CONNECT-TO-DAEMON
+#?GREETER-X-0 CONNECTED-TO-DAEMON
+
+# Check session stored
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=SESSION
+#?GREETER-X-0 LOG-USER USERNAME=prop-user SESSION=default
+
+# Watch user for properties changes
+#?*GREETER-X-0 WATCH-USER USERNAME=prop-user
+#?GREETER-X-0 WATCH-USER USERNAME=prop-user
+
+# Change default session
+#?*UPDATE-USER USERNAME=prop-user SESSION=alternative
+#?RUNNER UPDATE-USER USERNAME=prop-user SESSION=alternative
+#?GREETER-X-0 USER-CHANGED USERNAME=prop-user
+#?*GREETER-X-0 LOG-USER USERNAME=prop-user FIELDS=SESSION
+#?GREETER-X-0 LOG-USER USERNAME=prop-user SESSION=alternative
+
+# Log into account
+#?*GREETER-X-0 AUTHENTICATE USERNAME=prop-user
+#?GREETER-X-0 AUTHENTICATION-COMPLETE USERNAME=prop-user AUTHENTICATED=TRUE
+#?*GREETER-X-0 START-SESSION
+#?GREETER-X-0 TERMINATE SIGNAL=15
+
+# Session starts, check it uses the updated session
+#?SESSION-X-0 START XDG_SEAT=seat0 XDG_VTNR=7 DESKTOP_SESSION=alternative NAME=alternative USER=prop-user
+#?XSERVER-0 ACCEPT-CONNECT
+#?SESSION-X-0 CONNECT-XSERVER
+
+# Cleanup
+#?*STOP-DAEMON
+#?SESSION-X-0 TERMINATE SIGNAL=15
+#?XSERVER-0 TERMINATE SIGNAL=15
+#?RUNNER DAEMON-EXIT STATUS=0
diff --git a/tests/test-keyboard-layout b/tests/test-keyboard-layout
deleted file mode 100755
index d3186d11..00000000
--- a/tests/test-keyboard-layout
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-./src/dbus-env ./src/test-runner keyboard-layout test-gobject-greeter
diff --git a/tests/test-no-keyboard-layout b/tests/test-no-keyboard-layout
deleted file mode 100755
index cb478e1d..00000000
--- a/tests/test-no-keyboard-layout
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-./src/dbus-env ./src/test-runner no-keyboard-layout test-gobject-greeter
diff --git a/tests/test-no-language b/tests/test-no-language
deleted file mode 100755
index fd975299..00000000
--- a/tests/test-no-language
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-./src/dbus-env ./src/test-runner no-language test-gobject-greeter
diff --git a/tests/test-user-background b/tests/test-user-background
new file mode 100755
index 00000000..5049b0bc
--- /dev/null
+++ b/tests/test-user-background
@@ -0,0 +1,2 @@
+#!/bin/sh
+./src/dbus-env ./src/test-runner user-background test-gobject-greeter
diff --git a/tests/test-user-has-messages b/tests/test-user-has-messages
new file mode 100755
index 00000000..a38d6480
--- /dev/null
+++ b/tests/test-user-has-messages
@@ -0,0 +1,2 @@
+#!/bin/sh
+./src/dbus-env ./src/test-runner user-has-messages test-gobject-greeter
diff --git a/tests/test-user-image b/tests/test-user-image
new file mode 100755
index 00000000..4f8d64bb
--- /dev/null
+++ b/tests/test-user-image
@@ -0,0 +1,2 @@
+#!/bin/sh
+./src/dbus-env ./src/test-runner user-image test-gobject-greeter
diff --git a/tests/test-user-layout b/tests/test-user-layout
new file mode 100755
index 00000000..f3893b98
--- /dev/null
+++ b/tests/test-user-layout
@@ -0,0 +1,2 @@
+#!/bin/sh
+./src/dbus-env ./src/test-runner user-layout test-gobject-greeter
diff --git a/tests/test-user-name b/tests/test-user-name
new file mode 100755
index 00000000..b4cdb46b
--- /dev/null
+++ b/tests/test-user-name
@@ -0,0 +1,2 @@
+#!/bin/sh
+./src/dbus-env ./src/test-runner user-name test-gobject-greeter
diff --git a/tests/test-user-session b/tests/test-user-session
new file mode 100755
index 00000000..4768cf3d
--- /dev/null
+++ b/tests/test-user-session
@@ -0,0 +1,2 @@
+#!/bin/sh
+./src/dbus-env ./src/test-runner user-session test-gobject-greeter