|
|
594167 |
From 2ac026ce61d73f76e33a31fdb29c73ec40a05dfc Mon Sep 17 00:00:00 2001
|
|
|
594167 |
From: Yu Watanabe <watanabe.yu+github@gmail.com>
|
|
|
594167 |
Date: Fri, 8 Jul 2022 20:22:40 +0900
|
|
|
594167 |
Subject: [PATCH] test: start test user session before idle action setting is
|
|
|
594167 |
changed
|
|
|
594167 |
|
|
|
594167 |
Otherwise, idle action may be triggered before starting the test user
|
|
|
594167 |
session.
|
|
|
594167 |
|
|
|
594167 |
This also introduce create_session() and cleanup_session() helper
|
|
|
594167 |
functions.
|
|
|
594167 |
|
|
|
594167 |
Fixes #23952.
|
|
|
594167 |
|
|
|
594167 |
(cherry picked from commit 9d9fd4ad0a66eea9635081e8ef765e29865d22bf)
|
|
|
594167 |
|
|
|
594167 |
Related: #2100464
|
|
|
594167 |
---
|
|
|
594167 |
test/units/testsuite-35.sh | 44 ++++++++++++++++++++++++--------------
|
|
|
594167 |
1 file changed, 28 insertions(+), 16 deletions(-)
|
|
|
594167 |
|
|
|
594167 |
diff --git a/test/units/testsuite-35.sh b/test/units/testsuite-35.sh
|
|
|
594167 |
index 86787e7a02..9c37fc36d0 100755
|
|
|
594167 |
--- a/test/units/testsuite-35.sh
|
|
|
594167 |
+++ b/test/units/testsuite-35.sh
|
|
|
594167 |
@@ -214,7 +214,7 @@ test_shutdown() {
|
|
|
594167 |
assert_eq "$(systemctl show systemd-logind.service -p ExecMainPID --value)" "$pid"
|
|
|
594167 |
}
|
|
|
594167 |
|
|
|
594167 |
-teardown_session() (
|
|
|
594167 |
+cleanup_session() (
|
|
|
594167 |
set +ex
|
|
|
594167 |
|
|
|
594167 |
systemctl stop getty@tty2.service
|
|
|
594167 |
@@ -224,6 +224,12 @@ teardown_session() (
|
|
|
594167 |
pkill -u "$(id -u logind-test-user)"
|
|
|
594167 |
sleep 1
|
|
|
594167 |
pkill -KILL -u "$(id -u logind-test-user)"
|
|
|
594167 |
+)
|
|
|
594167 |
+
|
|
|
594167 |
+teardown_session() (
|
|
|
594167 |
+ set +ex
|
|
|
594167 |
+
|
|
|
594167 |
+ cleanup_session
|
|
|
594167 |
|
|
|
594167 |
rm -f /run/udev/rules.d/70-logindtest-scsi_debug-user.rules
|
|
|
594167 |
udevadm control --reload
|
|
|
594167 |
@@ -271,21 +277,7 @@ check_session() (
|
|
|
594167 |
fi
|
|
|
594167 |
)
|
|
|
594167 |
|
|
|
594167 |
-test_session() {
|
|
|
594167 |
- local dev
|
|
|
594167 |
-
|
|
|
594167 |
- if systemd-detect-virt --quiet --container; then
|
|
|
594167 |
- echo "Skipping ACL tests in container"
|
|
|
594167 |
- return
|
|
|
594167 |
- fi
|
|
|
594167 |
-
|
|
|
594167 |
- if [[ ! -c /dev/tty2 ]]; then
|
|
|
594167 |
- echo "/dev/tty2 does not exist, skipping test ${FUNCNAME[0]}."
|
|
|
594167 |
- return
|
|
|
594167 |
- fi
|
|
|
594167 |
-
|
|
|
594167 |
- trap teardown_session RETURN
|
|
|
594167 |
-
|
|
|
594167 |
+create_session() {
|
|
|
594167 |
# login with the test user to start a session
|
|
|
594167 |
mkdir -p /run/systemd/system/getty@tty2.service.d
|
|
|
594167 |
cat >/run/systemd/system/getty@tty2.service.d/override.conf <
|
|
|
594167 |
@@ -295,6 +287,7 @@ ExecStart=
|
|
|
594167 |
ExecStart=-/sbin/agetty --autologin logind-test-user --noclear %I $TERM
|
|
|
594167 |
EOF
|
|
|
594167 |
systemctl daemon-reload
|
|
|
594167 |
+
|
|
|
594167 |
systemctl restart getty@tty2.service
|
|
|
594167 |
|
|
|
594167 |
# check session
|
|
|
594167 |
@@ -303,6 +296,25 @@ EOF
|
|
|
594167 |
check_session && break
|
|
|
594167 |
done
|
|
|
594167 |
check_session
|
|
|
594167 |
+ assert_eq "$(loginctl --no-legend | awk '$3=="logind-test-user" { print $5 }')" "tty2"
|
|
|
594167 |
+}
|
|
|
594167 |
+
|
|
|
594167 |
+test_session() {
|
|
|
594167 |
+ local dev
|
|
|
594167 |
+
|
|
|
594167 |
+ if systemd-detect-virt --quiet --container; then
|
|
|
594167 |
+ echo "Skipping ACL tests in container"
|
|
|
594167 |
+ return
|
|
|
594167 |
+ fi
|
|
|
594167 |
+
|
|
|
594167 |
+ if [[ ! -c /dev/tty2 ]]; then
|
|
|
594167 |
+ echo "/dev/tty2 does not exist, skipping test ${FUNCNAME[0]}."
|
|
|
594167 |
+ return
|
|
|
594167 |
+ fi
|
|
|
594167 |
+
|
|
|
594167 |
+ trap teardown_session RETURN
|
|
|
594167 |
+
|
|
|
594167 |
+ create_session
|
|
|
594167 |
|
|
|
594167 |
# scsi_debug should not be loaded yet
|
|
|
594167 |
if [[ -d /sys/bus/pseudo/drivers/scsi_debug ]]; then
|