summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorFrantisek Sumsal <frantisek@sumsal.cz>2023-05-10 12:38:57 +0200
committerFrantisek Sumsal <frantisek@sumsal.cz>2023-05-10 12:38:57 +0200
commit09c033a2763fe7f0e625901f199e646b3f132e84 (patch)
tree54c9036771564a9df408a1fa3a36bdfbc085e894 /test
parenteb29296937b268e0140a2ab1cf204c2ebb72fa5a (diff)
downloadsystemd-09c033a2763fe7f0e625901f199e646b3f132e84.tar.gz
test: rename TEST-07-ISSUE-1981 to TEST-07-PID1
Diffstat (limited to 'test')
l---------test/TEST-07-PID1/Makefile (renamed from test/TEST-07-ISSUE-1981/Makefile)0
-rwxr-xr-xtest/TEST-07-PID1/test.sh (renamed from test/TEST-07-ISSUE-1981/test.sh)5
-rwxr-xr-xtest/units/testsuite-07.issue-1981.sh47
-rwxr-xr-xtest/units/testsuite-07.sh33
4 files changed, 52 insertions, 33 deletions
diff --git a/test/TEST-07-ISSUE-1981/Makefile b/test/TEST-07-PID1/Makefile
index e9f93b1104..e9f93b1104 120000
--- a/test/TEST-07-ISSUE-1981/Makefile
+++ b/test/TEST-07-PID1/Makefile
diff --git a/test/TEST-07-ISSUE-1981/test.sh b/test/TEST-07-PID1/test.sh
index 5bc41386b5..2b9dd418b8 100755
--- a/test/TEST-07-ISSUE-1981/test.sh
+++ b/test/TEST-07-PID1/test.sh
@@ -2,12 +2,9 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
set -e
-TEST_DESCRIPTION="https://github.com/systemd/systemd/issues/1981"
-TEST_NO_QEMU=1
+TEST_DESCRIPTION="Tests for core PID1 functionality"
# shellcheck source=test/test-functions
. "${TEST_BASE_DIR:?}/test-functions"
-NSPAWN_TIMEOUT=30
-
do_test "$@"
diff --git a/test/units/testsuite-07.issue-1981.sh b/test/units/testsuite-07.issue-1981.sh
new file mode 100755
index 0000000000..6eb802c93f
--- /dev/null
+++ b/test/units/testsuite-07.issue-1981.sh
@@ -0,0 +1,47 @@
+#!/usr/bin/env bash
+# SPDX-License-Identifier: LGPL-2.1-or-later
+set -eux
+set -o pipefail
+
+# Segmentation fault in timer_enter_waiting while masking a unit
+# Issue: https://github.com/systemd/systemd/issues/1981
+
+at_exit() {
+ set +e
+
+ systemctl stop my.timer my.service
+ rm -f /run/systemd/system/my.{service,timer}
+ systemctl daemon-reload
+}
+
+trap at_exit EXIT
+
+mkdir -p /run/systemd/system
+
+cat >/run/systemd/system/my.service <<\EOF
+[Service]
+Type=oneshot
+ExecStartPre=sh -c 'test "$TRIGGER_UNIT" = my.timer'
+ExecStartPre=sh -c 'test -n "$TRIGGER_TIMER_REALTIME_USEC"'
+ExecStartPre=sh -c 'test -n "$TRIGGER_TIMER_MONOTONIC_USEC"'
+ExecStart=/bin/echo Timer runs me
+EOF
+
+cat >/run/systemd/system/my.timer <<EOF
+[Timer]
+OnBootSec=10s
+OnUnitInactiveSec=1h
+EOF
+
+systemctl unmask my.timer
+systemctl start my.timer
+
+mkdir -p /run/systemd/system/my.timer.d/
+cat >/run/systemd/system/my.timer.d/override.conf <<EOF
+[Timer]
+OnBootSec=10s
+OnUnitInactiveSec=1h
+EOF
+
+systemctl daemon-reload
+systemctl mask my.timer
diff --git a/test/units/testsuite-07.sh b/test/units/testsuite-07.sh
index 95ebe3876f..13c767e490 100755
--- a/test/units/testsuite-07.sh
+++ b/test/units/testsuite-07.sh
@@ -5,35 +5,10 @@ set -o pipefail
: >/failed
-cat >/lib/systemd/system/my.service <<EOF
-[Service]
-Type=oneshot
-ExecStartPre=sh -c 'test "\$TRIGGER_UNIT" = my.timer'
-ExecStartPre=sh -c 'test -n "\$TRIGGER_TIMER_REALTIME_USEC"'
-ExecStartPre=sh -c 'test -n "\$TRIGGER_TIMER_MONOTONIC_USEC"'
-ExecStart=/bin/echo Timer runs me
-EOF
-
-cat >/lib/systemd/system/my.timer <<EOF
-[Timer]
-OnBootSec=10s
-OnUnitInactiveSec=1h
-EOF
-
-systemctl unmask my.timer
-
-systemctl start my.timer
-
-mkdir -p /etc/systemd/system/my.timer.d/
-cat >/etc/systemd/system/my.timer.d/override.conf <<EOF
-[Timer]
-OnBootSec=10s
-OnUnitInactiveSec=1h
-EOF
-
-systemctl daemon-reload
-
-systemctl mask my.timer
+for script in "${0%.sh}".*.sh; do
+ echo "Running $script"
+ "./$script"
+done
touch /testok
rm /failed