From c31ba60983c440a19d802692d1f971e675e7aa24 Mon Sep 17 00:00:00 2001 From: Ronan Pigott Date: Mon, 30 Dec 2024 21:17:38 -0700 Subject: [PATCH] test: add session class "none" login test --- test/units/TEST-35-LOGIN.sh | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/test/units/TEST-35-LOGIN.sh b/test/units/TEST-35-LOGIN.sh index 80320e32e17..1fc49e75b43 100755 --- a/test/units/TEST-35-LOGIN.sh +++ b/test/units/TEST-35-LOGIN.sh @@ -701,13 +701,14 @@ background_at_return() { testcase_background() { - local uid TRANSIENTUNIT1 TRANSIENTUNIT2 + local uid TRANSIENTUNIT0 TRANSIENTUNIT1 TRANSIENTUNIT2 uid=$(id -u logind-test-user) systemctl stop user@"$uid".service PAMSERVICE="pamserv$RANDOM" + TRANSIENTUNIT0="none$RANDOM.service" TRANSIENTUNIT1="bg$RANDOM.service" TRANSIENTUNIT2="bgg$RANDOM.service" @@ -722,6 +723,13 @@ session optional pam_systemd.so debug session required pam_unix.so EOF + systemd-run -u "$TRANSIENTUNIT0" -p PAMName="$PAMSERVICE" -p "Environment=XDG_SESSION_CLASS=none" -p Type=exec -p User=logind-test-user sleep infinity + + # This was a 'none' service, so logind should take no action + (! systemctl is-active user@"$uid".service ) + + systemctl stop "$TRANSIENTUNIT0" + systemd-run -u "$TRANSIENTUNIT1" -p PAMName="$PAMSERVICE" -p "Environment=XDG_SESSION_CLASS=background-light" -p Type=exec -p User=logind-test-user sleep infinity # This was a 'light' background service, hence the service manager should not be running -- 2.47.3