summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrantisek Sumsal <frantisek@sumsal.cz>2023-05-16 22:41:03 +0200
committerFrantisek Sumsal <frantisek@sumsal.cz>2023-05-16 23:07:45 +0200
commit7c6fa5bf168ec7776910ba9ca6e638f5449bd1d1 (patch)
tree43bfd0ab7d6ca9ce2a2d2c837d976943b2602ca1
parente71bac7222b344c88fb62a9dda9dae3864b6da90 (diff)
downloadsystemd-7c6fa5bf168ec7776910ba9ca6e638f5449bd1d1.tar.gz
test: move runas() to the shared utility library
-rwxr-xr-xtest/units/testsuite-07.main-PID-change.sh9
-rwxr-xr-xtest/units/testsuite-43.sh9
-rwxr-xr-xtest/units/testsuite-58.sh7
-rwxr-xr-xtest/units/util.sh6
4 files changed, 14 insertions, 17 deletions
diff --git a/test/units/testsuite-07.main-PID-change.sh b/test/units/testsuite-07.main-PID-change.sh
index da23032d1e..6d302452af 100755
--- a/test/units/testsuite-07.main-PID-change.sh
+++ b/test/units/testsuite-07.main-PID-change.sh
@@ -5,6 +5,9 @@ set -o pipefail
# Test changing the main PID
+# shellcheck source=test/units/util.sh
+. "$(dirname "$0")"/util.sh
+
systemd-analyze log-level debug
# The main service PID should be the parent bash process
@@ -166,12 +169,6 @@ test "$(systemctl show -P Result test-true.scope)" = success
# Test that user scope units work as well
-runas() {
- declare userid=$1
- shift
- XDG_RUNTIME_DIR=/run/user/"$(id -u "$userid")" setpriv --reuid="$userid" --init-groups "$@"
-}
-
systemctl start user@4711.service
runas testuser systemd-run --scope --user --unit test-true.scope /bin/true
test "$(systemctl show -P Result test-true.scope)" = success
diff --git a/test/units/testsuite-43.sh b/test/units/testsuite-43.sh
index ae979d734b..f9819f2c05 100755
--- a/test/units/testsuite-43.sh
+++ b/test/units/testsuite-43.sh
@@ -3,13 +3,10 @@
set -eux
set -o pipefail
-systemd-analyze log-level debug
+# shellcheck source=test/units/util.sh
+. "$(dirname "$0")"/util.sh
-runas() {
- declare userid=$1
- shift
- XDG_RUNTIME_DIR=/run/user/"$(id -u "$userid")" setpriv --reuid="$userid" --init-groups "$@"
-}
+systemd-analyze log-level debug
runas testuser systemd-run --wait --user --unit=test-private-users \
-p PrivateUsers=yes -P echo hello
diff --git a/test/units/testsuite-58.sh b/test/units/testsuite-58.sh
index 86c56a24f8..ecb376476a 100755
--- a/test/units/testsuite-58.sh
+++ b/test/units/testsuite-58.sh
@@ -3,11 +3,8 @@
set -eux
set -o pipefail
-runas() {
- declare userid=$1
- shift
- XDG_RUNTIME_DIR=/run/user/"$(id -u "$userid")" setpriv --reuid="$userid" --init-groups "$@"
-}
+# shellcheck source=test/units/util.sh
+. "$(dirname "$0")"/util.sh
if ! command -v systemd-repart &>/dev/null; then
echo "no systemd-repart" >/skipped
diff --git a/test/units/util.sh b/test/units/util.sh
index 4e214251cc..d151c39965 100755
--- a/test/units/util.sh
+++ b/test/units/util.sh
@@ -74,3 +74,9 @@ get_cgroup_hierarchy() {
exit 1
esac
}
+
+runas() {
+ local userid="${1:?}"
+ shift
+ XDG_RUNTIME_DIR=/run/user/"$(id -u "$userid")" setpriv --reuid="$userid" --init-groups "$@"
+}