]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
test: add coverage for #27953
authorFrantisek Sumsal <frantisek@sumsal.cz>
Mon, 14 Aug 2023 17:35:37 +0000 (19:35 +0200)
committerFrantisek Sumsal <frantisek@sumsal.cz>
Mon, 14 Aug 2023 17:35:37 +0000 (19:35 +0200)
test/testsuite-07.units/issue27953.service [new file with mode: 0644]
test/units/testsuite-07.issue-27953.sh [new file with mode: 0755]

diff --git a/test/testsuite-07.units/issue27953.service b/test/testsuite-07.units/issue27953.service
new file mode 100644 (file)
index 0000000..f441067
--- /dev/null
@@ -0,0 +1,7 @@
+# SPDX-License-Identifier: LGPL-2.1-or-later
+[Unit]
+Description=This unit should not remain active once the shell process exits
+
+[Service]
+Type=oneshot
+ExecStart=sh -c 'sleep infinity & exit 0'
diff --git a/test/units/testsuite-07.issue-27953.sh b/test/units/testsuite-07.issue-27953.sh
new file mode 100755 (executable)
index 0000000..8659970
--- /dev/null
@@ -0,0 +1,11 @@
+#!/usr/bin/env bash
+# SPDX-License-Identifier: LGPL-2.1-or-later
+set -eux
+set -o pipefail
+
+# Check if the unit doesn't remain in active state after the main PID exits
+# Issue: https://github.com/systemd/systemd/issues/27953
+
+systemctl start issue27953.service
+timeout 10 sh -c 'while systemctl is-active issue27953.service; do sleep .5; done'
+[[ "$(systemctl show -P ExitType issue27953.service)" == main ]]