summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorYu Watanabe <watanabe.yu+github@gmail.com>2021-03-05 18:36:04 +0900
committerYu Watanabe <watanabe.yu+github@gmail.com>2021-03-05 18:36:04 +0900
commit1ebcf47296647d3586ebd5bccc53270561e879fb (patch)
treeda790207d9769b43ee6291d643e67ef40162fd22 /test
parentdaceb818cfafbeac470aa5efc5e36e64e52d906d (diff)
downloadsystemd-1ebcf47296647d3586ebd5bccc53270561e879fb.tar.gz
test: merge udev tests
Diffstat (limited to 'test')
-rwxr-xr-xtest/TEST-17-UDEV-WANTS/test.sh9
l---------test/TEST-17-UDEV/Makefile (renamed from test/TEST-17-UDEV-WANTS/Makefile)0
-rwxr-xr-xtest/TEST-17-UDEV/test.sh (renamed from test/TEST-29-UDEV-ID_RENAMING/test.sh)8
l---------test/TEST-29-PORTABLE/Makefile (renamed from test/TEST-29-UDEV-ID_RENAMING/Makefile)0
-rwxr-xr-xtest/TEST-29-PORTABLE/test.sh (renamed from test/TEST-58-PORTABLE/test.sh)2
l---------test/TEST-49-RUNTIME-BIND-PATHS/Makefile (renamed from test/TEST-49-UDEV-EVENT-TIMEOUT/Makefile)0
-rwxr-xr-xtest/TEST-49-RUNTIME-BIND-PATHS/test.sh (renamed from test/TEST-57-RUNTIME-BIND-PATHS/test.sh)2
-rwxr-xr-xtest/TEST-49-UDEV-EVENT-TIMEOUT/test.sh8
l---------test/TEST-55-OOMD/Makefile (renamed from test/TEST-55-UDEV-TAGS/Makefile)0
-rwxr-xr-xtest/TEST-55-OOMD/test.sh (renamed from test/TEST-56-OOMD/test.sh)2
-rwxr-xr-xtest/TEST-55-UDEV-TAGS/test.sh8
l---------test/TEST-56-OOMD/Makefile1
l---------test/TEST-57-RUNTIME-BIND-PATHS/Makefile1
l---------test/TEST-58-PORTABLE/Makefile1
-rwxr-xr-xtest/units/testsuite-17.01.sh72
-rwxr-xr-xtest/units/testsuite-17.02.sh57
-rwxr-xr-xtest/units/testsuite-17.03.sh45
-rwxr-xr-xtest/units/testsuite-17.04.sh64
-rw-r--r--test/units/testsuite-17.service2
-rwxr-xr-xtest/units/testsuite-17.sh75
-rw-r--r--test/units/testsuite-29.service2
-rwxr-xr-xtest/units/testsuite-29.sh87
-rw-r--r--test/units/testsuite-49-namespaced.service (renamed from test/units/testsuite-57-namespaced.service)2
-rw-r--r--test/units/testsuite-49-non-namespaced.service (renamed from test/units/testsuite-57-non-namespaced.service)0
-rw-r--r--test/units/testsuite-49.service3
-rwxr-xr-xtest/units/testsuite-49.sh56
-rwxr-xr-xtest/units/testsuite-55-slowgrowth.sh (renamed from test/units/testsuite-56-slowgrowth.sh)0
-rw-r--r--test/units/testsuite-55-testbloat.service (renamed from test/units/testsuite-56-testbloat.service)4
-rw-r--r--test/units/testsuite-55-testchill.service (renamed from test/units/testsuite-56-testchill.service)2
-rw-r--r--test/units/testsuite-55-testmunch.service7
-rw-r--r--test/units/testsuite-55-workload.slice (renamed from test/units/testsuite-56-workload.slice)0
-rw-r--r--test/units/testsuite-55.service4
-rwxr-xr-xtest/units/testsuite-55.sh112
-rw-r--r--test/units/testsuite-56-testmunch.service7
-rw-r--r--test/units/testsuite-56.service7
-rwxr-xr-xtest/units/testsuite-56.sh76
-rw-r--r--test/units/testsuite-57.service7
-rwxr-xr-xtest/units/testsuite-57.sh43
-rw-r--r--test/units/testsuite-58.service7
-rwxr-xr-xtest/units/testsuite-58.sh68
40 files changed, 404 insertions, 447 deletions
diff --git a/test/TEST-17-UDEV-WANTS/test.sh b/test/TEST-17-UDEV-WANTS/test.sh
deleted file mode 100755
index 5b8f22cbaa..0000000000
--- a/test/TEST-17-UDEV-WANTS/test.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/usr/bin/env bash
-set -e
-TEST_DESCRIPTION="UDEV SYSTEMD_WANTS property"
-TEST_NO_NSPAWN=1
-
-. $TEST_BASE_DIR/test-functions
-QEMU_TIMEOUT=300
-
-do_test "$@" 17
diff --git a/test/TEST-17-UDEV-WANTS/Makefile b/test/TEST-17-UDEV/Makefile
index e9f93b1104..e9f93b1104 120000
--- a/test/TEST-17-UDEV-WANTS/Makefile
+++ b/test/TEST-17-UDEV/Makefile
diff --git a/test/TEST-29-UDEV-ID_RENAMING/test.sh b/test/TEST-17-UDEV/test.sh
index c918e5af6a..b13ae0aa78 100755
--- a/test/TEST-29-UDEV-ID_RENAMING/test.sh
+++ b/test/TEST-17-UDEV/test.sh
@@ -1,11 +1,11 @@
#!/usr/bin/env bash
set -e
-TEST_DESCRIPTION="UDEV ID_RENAMING property"
-IMAGE_NAME="udev-id-renaming"
+TEST_DESCRIPTION="UDEV"
+IMAGE_NAME="udev"
TEST_NO_NSPAWN=1
. $TEST_BASE_DIR/test-functions
-QEMU_TIMEOUT=300
+QEMU_TIMEOUT=500
test_append_files() {
(
@@ -14,4 +14,4 @@ test_append_files() {
)
}
-do_test "$@" 29
+do_test "$@" 17
diff --git a/test/TEST-29-UDEV-ID_RENAMING/Makefile b/test/TEST-29-PORTABLE/Makefile
index e9f93b1104..e9f93b1104 120000
--- a/test/TEST-29-UDEV-ID_RENAMING/Makefile
+++ b/test/TEST-29-PORTABLE/Makefile
diff --git a/test/TEST-58-PORTABLE/test.sh b/test/TEST-29-PORTABLE/test.sh
index 98e697962e..801e74c13d 100755
--- a/test/TEST-58-PORTABLE/test.sh
+++ b/test/TEST-29-PORTABLE/test.sh
@@ -24,4 +24,4 @@ test_append_files() {
)
}
-do_test "$@" 58
+do_test "$@" 29
diff --git a/test/TEST-49-UDEV-EVENT-TIMEOUT/Makefile b/test/TEST-49-RUNTIME-BIND-PATHS/Makefile
index e9f93b1104..e9f93b1104 120000
--- a/test/TEST-49-UDEV-EVENT-TIMEOUT/Makefile
+++ b/test/TEST-49-RUNTIME-BIND-PATHS/Makefile
diff --git a/test/TEST-57-RUNTIME-BIND-PATHS/test.sh b/test/TEST-49-RUNTIME-BIND-PATHS/test.sh
index 76d1b496ad..ff24a4f254 100755
--- a/test/TEST-57-RUNTIME-BIND-PATHS/test.sh
+++ b/test/TEST-49-RUNTIME-BIND-PATHS/test.sh
@@ -4,4 +4,4 @@ set -e
TEST_DESCRIPTION="test adding new BindPaths while unit is already running"
. $TEST_BASE_DIR/test-functions
-do_test "$@" 57
+do_test "$@" 49
diff --git a/test/TEST-49-UDEV-EVENT-TIMEOUT/test.sh b/test/TEST-49-UDEV-EVENT-TIMEOUT/test.sh
deleted file mode 100755
index 249d8a22ae..0000000000
--- a/test/TEST-49-UDEV-EVENT-TIMEOUT/test.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/usr/bin/env bash
-set -e
-
-TEST_DESCRIPTION="test udev's event-timeout and timeout-signal options"
-TEST_NO_NSPAWN=1
-. $TEST_BASE_DIR/test-functions
-
-do_test "$@" 49
diff --git a/test/TEST-55-UDEV-TAGS/Makefile b/test/TEST-55-OOMD/Makefile
index e9f93b1104..e9f93b1104 120000
--- a/test/TEST-55-UDEV-TAGS/Makefile
+++ b/test/TEST-55-OOMD/Makefile
diff --git a/test/TEST-56-OOMD/test.sh b/test/TEST-55-OOMD/test.sh
index 55b0d1dafd..121aa8d56e 100755
--- a/test/TEST-56-OOMD/test.sh
+++ b/test/TEST-55-OOMD/test.sh
@@ -45,4 +45,4 @@ check_result_qemu() {
return $ret
}
-do_test "$@" 56
+do_test "$@" 55
diff --git a/test/TEST-55-UDEV-TAGS/test.sh b/test/TEST-55-UDEV-TAGS/test.sh
deleted file mode 100755
index 325d70f011..0000000000
--- a/test/TEST-55-UDEV-TAGS/test.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/usr/bin/env bash
-set -e
-TEST_DESCRIPTION="UDEV tags management"
-TEST_NO_NSPAWN=1
-
-. $TEST_BASE_DIR/test-functions
-
-do_test "$@" 55
diff --git a/test/TEST-56-OOMD/Makefile b/test/TEST-56-OOMD/Makefile
deleted file mode 120000
index e9f93b1104..0000000000
--- a/test/TEST-56-OOMD/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../TEST-01-BASIC/Makefile \ No newline at end of file
diff --git a/test/TEST-57-RUNTIME-BIND-PATHS/Makefile b/test/TEST-57-RUNTIME-BIND-PATHS/Makefile
deleted file mode 120000
index e9f93b1104..0000000000
--- a/test/TEST-57-RUNTIME-BIND-PATHS/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../TEST-01-BASIC/Makefile \ No newline at end of file
diff --git a/test/TEST-58-PORTABLE/Makefile b/test/TEST-58-PORTABLE/Makefile
deleted file mode 120000
index e9f93b1104..0000000000
--- a/test/TEST-58-PORTABLE/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../TEST-01-BASIC/Makefile \ No newline at end of file
diff --git a/test/units/testsuite-17.01.sh b/test/units/testsuite-17.01.sh
new file mode 100755
index 0000000000..573ad41079
--- /dev/null
+++ b/test/units/testsuite-17.01.sh
@@ -0,0 +1,72 @@
+#!/usr/bin/env bash
+set -ex
+set -o pipefail
+
+mkdir -p /run/udev/rules.d/
+
+rm -f /run/udev/rules.d/50-testsuite.rules
+udevadm control --reload
+udevadm trigger /dev/sda
+
+while : ; do
+ (
+ udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS=foobar.service
+ udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS=waldo.service
+ systemctl show -p WantedBy foobar.service | grep -q -v sda
+ systemctl show -p WantedBy waldo.service | grep -q -v sda
+ ) && break
+
+ sleep .5
+done
+
+cat > /run/udev/rules.d/50-testsuite.rules <<EOF
+ACTION!="remove", SUBSYSTEM=="block", KERNEL=="sda", ENV{SYSTEMD_WANTS}="foobar.service"
+EOF
+udevadm control --reload
+udevadm trigger /dev/sda
+
+while : ; do
+ (
+ udevadm info /dev/sda | grep -q SYSTEMD_WANTS=foobar.service
+ udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS=waldo.service
+ systemctl show -p WantedBy foobar.service | grep -q sda
+ systemctl show -p WantedBy waldo.service | grep -q -v sda
+ ) && break
+
+ sleep .5
+done
+
+cat > /run/udev/rules.d/50-testsuite.rules <<EOF
+ACTION!="remove", SUBSYSTEM=="block", KERNEL=="sda", ENV{SYSTEMD_WANTS}="waldo.service"
+EOF
+udevadm control --reload
+udevadm trigger /dev/sda
+
+while : ; do
+ (
+ udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS=foobar.service
+ udevadm info /dev/sda | grep -q SYSTEMD_WANTS=waldo.service
+ systemctl show -p WantedBy foobar.service | grep -q -v sda
+ systemctl show -p WantedBy waldo.service | grep -q sda
+ ) && break
+
+ sleep .5
+done
+
+rm /run/udev/rules.d/50-testsuite.rules
+
+udevadm control --reload
+udevadm trigger /dev/sda
+
+while : ; do
+ (
+ udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS=foobar.service
+ udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS=waldo.service
+ systemctl show -p WantedBy foobar.service | grep -q -v sda
+ systemctl show -p WantedBy waldo.service | grep -q -v sda
+ ) && break
+
+ sleep .5
+done
+
+exit 0
diff --git a/test/units/testsuite-17.02.sh b/test/units/testsuite-17.02.sh
new file mode 100755
index 0000000000..c21fcc781b
--- /dev/null
+++ b/test/units/testsuite-17.02.sh
@@ -0,0 +1,57 @@
+#!/usr/bin/env bash
+set -ex
+set -o pipefail
+
+mkdir -p /run/udev/rules.d/
+
+cat > /run/udev/rules.d/50-testsuite.rules <<EOF
+ACTION=="remove", GOTO="lo_end"
+
+SUBSYSTEM=="net", KERNEL=="lo", TAG+="systemd", ENV{SYSTEMD_ALIAS}+="/sys/subsystem/net/devices/lo"
+
+ACTION!="change", GOTO="lo_end"
+
+SUBSYSTEM=="net", KERNEL=="lo", ENV{ID_RENAMING}="1"
+
+LABEL="lo_end"
+EOF
+
+udevadm control --log-priority=debug --reload --timeout=600
+udevadm trigger --action=add --settle /sys/devices/virtual/net/lo
+udevadm info /sys/devices/virtual/net/lo
+sleep 1
+STATE=$(systemctl show --property=ActiveState --value sys-devices-virtual-net-lo.device)
+[[ $STATE == "active" ]] || exit 1
+
+udevadm trigger --action=change --settle /sys/devices/virtual/net/lo
+udevadm info /sys/devices/virtual/net/lo
+sleep 1
+STATE=$(systemctl show --property=ActiveState --value sys-devices-virtual-net-lo.device)
+[[ $STATE == "inactive" ]] || exit 1
+
+udevadm trigger --action=move --settle /sys/devices/virtual/net/lo
+udevadm info /sys/devices/virtual/net/lo
+sleep 1
+STATE=$(systemctl show --property=ActiveState --value sys-devices-virtual-net-lo.device)
+[[ $STATE == "active" ]] || exit 1
+
+rm -f /run/udev/rules.d/50-testsuite.rules
+udevadm control --reload --timeout=600
+
+# test for issue #16967
+
+ip link add hoge type dummy
+udevadm info --wait-for-initialization=10s /sys/devices/virtual/net/hoge
+sleep 1
+if ! systemctl status sys-devices-virtual-net-hoge.device; then exit 1; fi
+if ! systemctl status sys-subsystem-net-devices-hoge.device; then exit 1; fi
+
+ip link set hoge name foobar
+udevadm info --wait-for-initialization=10s /sys/devices/virtual/net/foobar
+sleep 1
+if systemctl status sys-devices-virtual-net-hoge.device; then exit 1; fi
+if systemctl status sys-subsystem-net-devices-hoge.device; then exit 1; fi
+if ! systemctl status sys-devices-virtual-net-foobar.device; then exit 1; fi
+if ! systemctl status sys-subsystem-net-devices-foobar.device; then exit 1; fi
+
+exit 0
diff --git a/test/units/testsuite-17.03.sh b/test/units/testsuite-17.03.sh
new file mode 100755
index 0000000000..02ac2176b5
--- /dev/null
+++ b/test/units/testsuite-17.03.sh
@@ -0,0 +1,45 @@
+#!/usr/bin/env bash
+
+set -ex
+
+test_rule="/run/udev/rules.d/49-test.rules"
+
+setup() {
+ mkdir -p "${test_rule%/*}"
+ cp -f /etc/udev/udev.conf /etc/udev/udev.conf.bckp
+ echo 'KERNEL=="lo", SUBSYSTEM=="net", PROGRAM=="/bin/sleep 60"' > "${test_rule}"
+ echo "event_timeout=30" >> /etc/udev/udev.conf
+ echo "timeout_signal=SIGABRT" >> /etc/udev/udev.conf
+
+ systemctl restart systemd-udevd.service
+}
+
+teardown() {
+ set +e
+
+ mv -f /etc/udev/udev.conf.bckp /etc/udev/udev.conf
+ rm -f "$test_rule"
+ systemctl restart systemd-udevd.service
+}
+
+run_test() {
+ since="$(date +%T)"
+
+ echo add > /sys/class/net/lo/uevent
+
+ for n in {1..20}; do
+ sleep 5
+ if coredumpctl --since "$since" --no-legend --no-pager | grep /bin/udevadm ; then
+ return 0
+ fi
+ done
+
+ return 1
+}
+
+trap teardown EXIT
+
+setup
+run_test
+
+exit 0
diff --git a/test/units/testsuite-17.04.sh b/test/units/testsuite-17.04.sh
new file mode 100755
index 0000000000..c799936c0a
--- /dev/null
+++ b/test/units/testsuite-17.04.sh
@@ -0,0 +1,64 @@
+#!/bin/bash
+set -ex
+set -o pipefail
+
+mkdir -p /run/udev/rules.d/
+
+! test -f /run/udev/tags/added/c1:3 &&
+ ! test -f /run/udev/tags/changed/c1:3 &&
+ udevadm info /dev/null | grep -q -v 'E: TAGS=.*:added:.*' &&
+ udevadm info /dev/null | grep -q -v 'E: CURRENT_TAGS=.*:added:.*' &&
+ udevadm info /dev/null | grep -q -v 'E: TAGS=.*:changed:.*' &&
+ udevadm info /dev/null | grep -q -v 'E: CURRENT_TAGS=.*:changed:.*'
+
+cat > /run/udev/rules.d/50-testsuite.rules <<EOF
+ACTION=="add", SUBSYSTEM=="mem", KERNEL=="null", TAG+="added"
+ACTION=="change", SUBSYSTEM=="mem", KERNEL=="null", TAG+="changed"
+EOF
+
+udevadm control --reload
+udevadm trigger -c add /dev/null
+
+while : ; do
+ test -f /run/udev/tags/added/c1:3 &&
+ ! test -f /run/udev/tags/changed/c1:3 &&
+ udevadm info /dev/null | grep -q 'E: TAGS=.*:added:.*' &&
+ udevadm info /dev/null | grep -q 'E: CURRENT_TAGS=.*:added:.*' &&
+ udevadm info /dev/null | grep -q -v 'E: TAGS=.*:changed:.*' &&
+ udevadm info /dev/null | grep -q -v 'E: CURRENT_TAGS=.*:changed:.*' &&
+ break
+
+ sleep .5
+done
+
+udevadm control --reload
+udevadm trigger -c change /dev/null
+
+while : ; do
+ test -f /run/udev/tags/added/c1:3 &&
+ test -f /run/udev/tags/changed/c1:3 &&
+ udevadm info /dev/null | grep -q 'E: TAGS=.*:added:.*' &&
+ udevadm info /dev/null | grep -q -v 'E: CURRENT_TAGS=.*:added:.*' &&
+ udevadm info /dev/null | grep -q 'E: TAGS=.*:changed:.*' &&
+ udevadm info /dev/null | grep -q 'E: CURRENT_TAGS=.*:changed:.*' &&
+ break
+
+ sleep .5
+done
+
+udevadm control --reload
+udevadm trigger -c add /dev/null
+
+while : ; do
+ test -f /run/udev/tags/added/c1:3 &&
+ test -f /run/udev/tags/changed/c1:3 &&
+ udevadm info /dev/null | grep -q 'E: TAGS=.*:added:.*' &&
+ udevadm info /dev/null | grep -q 'E: CURRENT_TAGS=.*:added:.*' &&
+ udevadm info /dev/null | grep -q 'E: TAGS=.*:changed:.*' &&
+ udevadm info /dev/null | grep -q -v 'E: CURRENT_TAGS=.*:changed:.*' &&
+ break
+
+ sleep .5
+done
+
+exit 0
diff --git a/test/units/testsuite-17.service b/test/units/testsuite-17.service
index ed2017a848..bd6221551c 100644
--- a/test/units/testsuite-17.service
+++ b/test/units/testsuite-17.service
@@ -1,5 +1,5 @@
[Unit]
-Description=TEST-17-UDEV-WANTS
+Description=TEST-17-UDEV
[Service]
ExecStartPre=rm -f /failed /testok
diff --git a/test/units/testsuite-17.sh b/test/units/testsuite-17.sh
index 7f8740ba35..afce85aceb 100755
--- a/test/units/testsuite-17.sh
+++ b/test/units/testsuite-17.sh
@@ -1,74 +1,13 @@
#!/usr/bin/env bash
-set -ex
-set -o pipefail
-mkdir -p /run/udev/rules.d/
+set -x
+set -e
-rm -f /run/udev/rules.d/50-testsuite.rules
-udevadm control --reload
-udevadm trigger /dev/sda
+>/failed
-while : ; do
- (
- udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS=foobar.service
- udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS=waldo.service
- systemctl show -p WantedBy foobar.service | grep -q -v sda
- systemctl show -p WantedBy waldo.service | grep -q -v sda
- ) && break
-
- sleep .5
-done
-
-cat > /run/udev/rules.d/50-testsuite.rules <<EOF
-ACTION!="remove", SUBSYSTEM=="block", KERNEL=="sda", ENV{SYSTEMD_WANTS}="foobar.service"
-EOF
-udevadm control --reload
-udevadm trigger /dev/sda
-
-while : ; do
- (
- udevadm info /dev/sda | grep -q SYSTEMD_WANTS=foobar.service
- udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS=waldo.service
- systemctl show -p WantedBy foobar.service | grep -q sda
- systemctl show -p WantedBy waldo.service | grep -q -v sda
- ) && break
-
- sleep .5
+for t in ${0%.sh}.*.sh; do
+ echo "Running $t"; ./$t
done
-cat > /run/udev/rules.d/50-testsuite.rules <<EOF
-ACTION!="remove", SUBSYSTEM=="block", KERNEL=="sda", ENV{SYSTEMD_WANTS}="waldo.service"
-EOF
-udevadm control --reload
-udevadm trigger /dev/sda
-
-while : ; do
- (
- udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS=foobar.service
- udevadm info /dev/sda | grep -q SYSTEMD_WANTS=waldo.service
- systemctl show -p WantedBy foobar.service | grep -q -v sda
- systemctl show -p WantedBy waldo.service | grep -q sda
- ) && break
-
- sleep .5
-done
-
-rm /run/udev/rules.d/50-testsuite.rules
-
-udevadm control --reload
-udevadm trigger /dev/sda
-
-while : ; do
- (
- udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS=foobar.service
- udevadm info /dev/sda | grep -q -v SYSTEMD_WANTS=waldo.service
- systemctl show -p WantedBy foobar.service | grep -q -v sda
- systemctl show -p WantedBy waldo.service | grep -q -v sda
- ) && break
-
- sleep .5
-done
-
-echo OK >/testok
-
-exit 0
+touch /testok
+rm /failed
diff --git a/test/units/testsuite-29.service b/test/units/testsuite-29.service
index 90c2187bd7..900b99f77b 100644
--- a/test/units/testsuite-29.service
+++ b/test/units/testsuite-29.service
@@ -1,5 +1,5 @@
[Unit]
-Description=TEST-29-UDEV-ID_RENAMING
+Description=TEST-29-PORTABLE
[Service]
ExecStartPre=rm -f /failed /testok
diff --git a/test/units/testsuite-29.sh b/test/units/testsuite-29.sh
index 5c62556895..b5b05b42d9 100755
--- a/test/units/testsuite-29.sh
+++ b/test/units/testsuite-29.sh
@@ -1,58 +1,67 @@
#!/usr/bin/env bash
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
+# ex: ts=8 sw=4 sts=4 et filetype=sh
set -ex
set -o pipefail
-mkdir -p /run/udev/rules.d/
+export SYSTEMD_LOG_LEVEL=debug
-cat > /run/udev/rules.d/50-testsuite.rules <<EOF
-ACTION=="remove", GOTO="lo_end"
+portablectl attach --now --runtime /usr/share/minimal_0.raw app0
-SUBSYSTEM=="net", KERNEL=="lo", TAG+="systemd", ENV{SYSTEMD_ALIAS}+="/sys/subsystem/net/devices/lo"
+systemctl is-active app0.service
+systemctl is-active app0-foo.service
+set +o pipefail
+set +e
+systemctl is-active app0-bar.service && exit 1
+set -e
+set -o pipefail
+
+portablectl reattach --now --runtime /usr/share/minimal_1.raw app0
+
+systemctl is-active app0.service
+systemctl is-active app0-bar.service
+set +o pipefail
+set +e
+systemctl is-active app0-foo.service && exit 1
+set -e
+set -o pipefail
-ACTION!="change", GOTO="lo_end"
+portablectl list | grep -q -F "minimal_1"
-SUBSYSTEM=="net", KERNEL=="lo", ENV{ID_RENAMING}="1"
+portablectl detach --now --runtime /usr/share/minimal_1.raw app0
-LABEL="lo_end"
-EOF
+portablectl list | grep -q -F "No images."
-udevadm control --log-priority=debug --reload --timeout=600
-udevadm trigger --action=add --settle /sys/devices/virtual/net/lo
-udevadm info /sys/devices/virtual/net/lo
-sleep 1
-STATE=$(systemctl show --property=ActiveState --value sys-devices-virtual-net-lo.device)
-[[ $STATE == "active" ]] || exit 1
+# portablectl also works with directory paths rather than images
-udevadm trigger --action=change --settle /sys/devices/virtual/net/lo
-udevadm info /sys/devices/virtual/net/lo
-sleep 1
-STATE=$(systemctl show --property=ActiveState --value sys-devices-virtual-net-lo.device)
-[[ $STATE == "inactive" ]] || exit 1
+unsquashfs -dest /tmp/minimal_0 /usr/share/minimal_0.raw
+unsquashfs -dest /tmp/minimal_1 /usr/share/minimal_1.raw
-udevadm trigger --action=move --settle /sys/devices/virtual/net/lo
-udevadm info /sys/devices/virtual/net/lo
-sleep 1
-STATE=$(systemctl show --property=ActiveState --value sys-devices-virtual-net-lo.device)
-[[ $STATE == "active" ]] || exit 1
+portablectl attach --copy=symlink --now --runtime /tmp/minimal_0 app0
-rm -f /run/udev/rules.d/50-testsuite.rules
-udevadm control --reload --timeout=600
+systemctl is-active app0.service
+systemctl is-active app0-foo.service
+set +o pipefail
+set +e
+systemctl is-active app0-bar.service && exit 1
+set -e
+set -o pipefail
+
+portablectl reattach --now --enable --runtime /tmp/minimal_1 app0
+
+systemctl is-active app0.service
+systemctl is-active app0-bar.service
+set +o pipefail
+set +e
+systemctl is-active app0-foo.service && exit 1
+set -e
+set -o pipefail
-# test for issue #16967
+portablectl list | grep -q -F "minimal_1"
-ip link add hoge type dummy
-udevadm info --wait-for-initialization=10s /sys/devices/virtual/net/hoge
-sleep 1
-if ! systemctl status sys-devices-virtual-net-hoge.device; then exit 1; fi
-if ! systemctl status sys-subsystem-net-devices-hoge.device; then exit 1; fi
+portablectl detach --now --enable --runtime /tmp/minimal_1 app0
-ip link set hoge name foobar
-udevadm info --wait-for-initialization=10s /sys/devices/virtual/net/foobar
-sleep 1
-if systemctl status sys-devices-virtual-net-hoge.device; then exit 1; fi
-if systemctl status sys-subsystem-net-devices-hoge.device; then exit 1; fi
-if ! systemctl status sys-devices-virtual-net-foobar.device; then exit 1; fi
-if ! systemctl status sys-subsystem-net-devices-foobar.device; then exit 1; fi
+portablectl list | grep -q -F "No images."
echo OK > /testok
diff --git a/test/units/testsuite-57-namespaced.service b/test/units/testsuite-49-namespaced.service
index 0abcc4faf4..722dbe246d 100644
--- a/test/units/testsuite-57-namespaced.service
+++ b/test/units/testsuite-49-namespaced.service
@@ -6,7 +6,7 @@ Type=notify
RemainAfterExit=yes
MountAPIVFS=yes
PrivateTmp=yes
-BindPaths=/run/testservice-57-fixed:/tmp/testfile_fixed
+BindPaths=/run/testservice-49-fixed:/tmp/testfile_fixed
InaccessiblePaths=/run/inaccessible
ExecStartPre=grep -q -F MARKER_FIXED /tmp/testfile_fixed
ExecStart=/bin/sh -c 'systemd-notify --ready; while ! grep -q -F MARKER_RUNTIME /tmp/testfile_runtime; do sleep 0.1; done; test ! -f /run/inaccessible/testfile_fixed'
diff --git a/test/units/testsuite-57-non-namespaced.service b/test/units/testsuite-49-non-namespaced.service
index e86c64d125..e86c64d125 100644
--- a/test/units/testsuite-57-non-namespaced.service
+++ b/test/units/testsuite-49-non-namespaced.service
diff --git a/test/units/testsuite-49.service b/test/units/testsuite-49.service
index f47177106f..9475109ca2 100644
--- a/test/units/testsuite-49.service
+++ b/test/units/testsuite-49.service
@@ -1,6 +1,7 @@
[Unit]
-Description=TEST-49-UDEV-EVENT-TIMEOUT
+Description=TEST-49-RUNTIME-BIND-PATHS
[Service]
+ExecStartPre=rm -f /failed /testok
ExecStart=/usr/lib/systemd/tests/testdata/units/%N.sh
Type=oneshot
diff --git a/test/units/testsuite-49.sh b/test/units/testsuite-49.sh
index ffa9801644..07bb20d99c 100755
--- a/test/units/testsuite-49.sh
+++ b/test/units/testsuite-49.sh
@@ -1,46 +1,42 @@
#!/usr/bin/env bash
-
set -ex
-test_rule="/run/udev/rules.d/49-test.rules"
+echo "MARKER_FIXED" > /run/testservice-49-fixed
+mkdir -p /run/inaccessible
-setup() {
- mkdir -p "${test_rule%/*}"
- cp -f /etc/udev/udev.conf /etc/udev/udev.conf.bckp
- echo 'KERNEL=="lo", SUBSYSTEM=="net", PROGRAM=="/bin/sleep 60"' > "${test_rule}"
- echo "event_timeout=30" >> /etc/udev/udev.conf
- echo "timeout_signal=SIGABRT" >> /etc/udev/udev.conf
+systemctl start testsuite-49-namespaced.service
- systemctl restart systemd-udevd.service
-}
+# Ensure that inaccessible paths aren't bypassed by the runtime setup
+set +e
+systemctl bind --mkdir testsuite-49-namespaced.service /run/testservice-49-fixed /run/inaccessible/testfile_fixed && exit 1
+set -e
-teardown() {
- set +e
+echo "MARKER_RUNTIME" > /run/testservice-49-runtime
- mv -f /etc/udev/udev.conf.bckp /etc/udev/udev.conf
- rm -f "$test_rule"
- systemctl restart systemd-udevd.service
-}
+systemctl bind --mkdir testsuite-49-namespaced.service /run/testservice-49-runtime /tmp/testfile_runtime
-run_test() {
- since="$(date +%T)"
+while systemctl show -P SubState testsuite-49-namespaced.service | grep -q running
+do
+ sleep 0.1
+done
- echo add > /sys/class/net/lo/uevent
+systemctl is-active testsuite-49-namespaced.service
- for n in {1..20}; do
- sleep 5
- if coredumpctl --since "$since" --no-legend --no-pager | grep /bin/udevadm ; then
- return 0
- fi
- done
+# Now test that systemctl bind fails when attempted on a non-namespaced unit
+systemctl start testsuite-49-non-namespaced.service
- return 1
-}
+set +e
+systemctl bind --mkdir testsuite-49-non-namespaced.service /run/testservice-49-runtime /tmp/testfile_runtime && exit 1
+set -e
-trap teardown EXIT
+while systemctl show -P SubState testsuite-49-non-namespaced.service | grep -q running
+do
+ sleep 0.1
+done
-setup
-run_test
+set +e
+systemctl is-active testsuite-49-non-namespaced.service && exit 1
+set -e
echo OK > /testok
diff --git a/test/units/testsuite-56-slowgrowth.sh b/test/units/testsuite-55-slowgrowth.sh
index ff5a747348..ff5a747348 100755
--- a/test/units/testsuite-56-slowgrowth.sh
+++ b/test/units/testsuite-55-slowgrowth.sh
diff --git a/test/units/testsuite-56-testbloat.service b/test/units/testsuite-55-testbloat.service
index 6163aae1db..7aa794b9f9 100644
--- a/test/units/testsuite-56-testbloat.service
+++ b/test/units/testsuite-55-testbloat.service
@@ -5,5 +5,5 @@ Description=Create a lot of memory pressure
# A VERY small memory.high will cause the script (trying to use a lot of memory)
# to throttle and be put under heavy pressure.
MemoryHigh=1M
-Slice=testsuite-56-workload.slice
-ExecStart=/usr/lib/systemd/tests/testdata/units/testsuite-56-slowgrowth.sh
+Slice=testsuite-55-workload.slice
+ExecStart=/usr/lib/systemd/tests/testdata/units/testsuite-55-slowgrowth.sh
diff --git a/test/units/testsuite-56-testchill.service b/test/units/testsuite-55-testchill.service
index 6cae3d852a..aca6bc4ab9 100644
--- a/test/units/testsuite-56-testchill.service
+++ b/test/units/testsuite-55-testchill.service
@@ -2,5 +2,5 @@
Description=No memory pressure
[Service]
-Slice=testsuite-56-workload.slice
+Slice=testsuite-55-workload.slice
ExecStart=sleep infinity
diff --git a/test/units/testsuite-55-testmunch.service b/test/units/testsuite-55-testmunch.service
new file mode 100644
index 0000000000..457e4a587a
--- /dev/null
+++ b/test/units/testsuite-55-testmunch.service
@@ -0,0 +1,7 @@
+[Unit]
+Description=Create some memory pressure
+
+[Service]
+MemoryHigh=2M
+Slice=testsuite-55-workload.slice
+ExecStart=/usr/lib/systemd/tests/testdata/units/testsuite-55-slowgrowth.sh
diff --git a/test/units/testsuite-56-workload.slice b/test/units/testsuite-55-workload.slice
index 8c32b28094..8c32b28094 100644
--- a/test/units/testsuite-56-workload.slice
+++ b/test/units/testsuite-55-workload.slice
diff --git a/test/units/testsuite-55.service b/test/units/testsuite-55.service
index 2127a4db7f..592e9d5bec 100644
--- a/test/units/testsuite-55.service
+++ b/test/units/testsuite-55.service
@@ -1,7 +1,7 @@
[Unit]
-Description=TESTSUITE-55-UDEV-TAGS
+Description=TESTSUITE-55-OOMD
[Service]
-ExecStartPre=rm -f /failed /testok
+ExecStartPre=rm -f /failed /skipped /testok
ExecStart=/usr/lib/systemd/tests/testdata/units/%N.sh
Type=oneshot
diff --git a/test/units/testsuite-55.sh b/test/units/testsuite-55.sh
index ffceefb6a5..f7896ada42 100755
--- a/test/units/testsuite-55.sh
+++ b/test/units/testsuite-55.sh
@@ -1,66 +1,76 @@
-#!/bin/bash
+#!/usr/bin/env bash
set -ex
set -o pipefail
-mkdir -p /run/udev/rules.d/
-
-! test -f /run/udev/tags/added/c1:3 &&
- ! test -f /run/udev/tags/changed/c1:3 &&
- udevadm info /dev/null | grep -q -v 'E: TAGS=.*:added:.*' &&
- udevadm info /dev/null | grep -q -v 'E: CURRENT_TAGS=.*:added:.*' &&
- udevadm info /dev/null | grep -q -v 'E: TAGS=.*:changed:.*' &&
- udevadm info /dev/null | grep -q -v 'E: CURRENT_TAGS=.*:changed:.*'
-
-cat > /run/udev/rules.d/50-testsuite.rules <<EOF
-ACTION=="add", SUBSYSTEM=="mem", KERNEL=="null", TAG+="added"
-ACTION=="change", SUBSYSTEM=="mem", KERNEL=="null", TAG+="changed"
-EOF
-
-udevadm control --reload
-udevadm trigger -c add /dev/null
-
-while : ; do
- test -f /run/udev/tags/added/c1:3 &&
- ! test -f /run/udev/tags/changed/c1:3 &&
- udevadm info /dev/null | grep -q 'E: TAGS=.*:added:.*' &&
- udevadm info /dev/null | grep -q 'E: CURRENT_TAGS=.*:added:.*' &&
- udevadm info /dev/null | grep -q -v 'E: TAGS=.*:changed:.*' &&
- udevadm info /dev/null | grep -q -v 'E: CURRENT_TAGS=.*:changed:.*' &&
- break
+systemd-analyze log-level debug
+systemd-analyze log-target console
- sleep .5
-done
+# Loose checks to ensure the environment has the necessary features for systemd-oomd
+[[ -e /proc/pressure ]] || echo "no PSI" >> /skipped
+cgroup_type=$(stat -fc %T /sys/fs/cgroup/)
+if [[ "$cgroup_type" != *"cgroup2"* ]] && [[ "$cgroup_type" != *"0x63677270"* ]]; then
+ echo "no cgroup2" >> /skipped
+fi
+if [ ! -f /usr/lib/systemd/systemd-oomd ] && [ ! -f /lib/systemd/systemd-oomd ]; then
+ echo "no oomd" >> /skipped
+fi
+[[ -e /skipped ]] && exit 0 || true
-udevadm control --reload
-udevadm trigger -c change /dev/null
+rm -rf /etc/systemd/system/testsuite-55-testbloat.service.d
-while : ; do
- test -f /run/udev/tags/added/c1:3 &&
- test -f /run/udev/tags/changed/c1:3 &&
- udevadm info /dev/null | grep -q 'E: TAGS=.*:added:.*' &&
- udevadm info /dev/null | grep -q -v 'E: CURRENT_TAGS=.*:added:.*' &&
- udevadm info /dev/null | grep -q 'E: TAGS=.*:changed:.*' &&
- udevadm info /dev/null | grep -q 'E: CURRENT_TAGS=.*:changed:.*' &&
- break
+echo "DefaultMemoryPressureDurationSec=5s" >> /etc/systemd/oomd.conf
- sleep .5
-done
+systemctl start testsuite-55-testchill.service
+systemctl start testsuite-55-testbloat.service
-udevadm control --reload
-udevadm trigger -c add /dev/null
+# Verify systemd-oomd is monitoring the expected units
+oomctl | grep "/testsuite-55-workload.slice"
+oomctl | grep "1.00%"
+oomctl | grep "Default Memory Pressure Duration: 5s"
-while : ; do
- test -f /run/udev/tags/added/c1:3 &&
- test -f /run/udev/tags/changed/c1:3 &&
- udevadm info /dev/null | grep -q 'E: TAGS=.*:added:.*' &&
- udevadm info /dev/null | grep -q 'E: CURRENT_TAGS=.*:added:.*' &&
- udevadm info /dev/null | grep -q 'E: TAGS=.*:changed:.*' &&
- udevadm info /dev/null | grep -q -v 'E: CURRENT_TAGS=.*:changed:.*' &&
+# systemd-oomd watches for elevated pressure for 5 seconds before acting.
+# It can take time to build up pressure so either wait 2 minutes or for the service to fail.
+timeout=$(date -ud "2 minutes" +%s)
+while [[ $(date -u +%s) -le $timeout ]]; do
+ if ! systemctl status testsuite-55-testbloat.service; then
break
-
- sleep .5
+ fi
+ sleep 5
done
+# testbloat should be killed and testchill should be fine
+if systemctl status testsuite-55-testbloat.service; then exit 42; fi
+if ! systemctl status testsuite-55-testchill.service; then exit 24; fi
+
+# only run this portion of the test if we can set xattrs
+if setfattr -n user.xattr_test -v 1 /sys/fs/cgroup/; then
+ sleep 120 # wait for systemd-oomd kill cool down and elevated memory pressure to come down
+
+ mkdir -p /etc/systemd/system/testsuite-55-testbloat.service.d/
+ echo "[Service]" > /etc/systemd/system/testsuite-55-testbloat.service.d/override.conf
+ echo "ManagedOOMPreference=avoid" >> /etc/systemd/system/testsuite-55-testbloat.service.d/override.conf
+
+ systemctl daemon-reload
+ systemctl start testsuite-55-testchill.service
+ systemctl start testsuite-55-testmunch.service
+ systemctl start testsuite-55-testbloat.service
+
+ timeout=$(date -ud "2 minutes" +%s)
+ while [[ $(date -u +%s) -le $timeout ]]; do
+ if ! systemctl status testsuite-55-testmunch.service; then
+ break
+ fi
+ sleep 5
+ done
+
+ # testmunch should be killed since testbloat had the avoid xattr on it
+ if ! systemctl status testsuite-55-testbloat.service; then exit 25; fi
+ if systemctl status testsuite-55-testmunch.service; then exit 43; fi
+ if ! systemctl status testsuite-55-testchill.service; then exit 24; fi
+fi
+
+systemd-analyze log-level info
+
echo OK > /testok
exit 0
diff --git a/test/units/testsuite-56-testmunch.service b/test/units/testsuite-56-testmunch.service
deleted file mode 100644
index b4b925a7af..0000000000
--- a/test/units/testsuite-56-testmunch.service
+++ /dev/null
@@ -1,7 +0,0 @@
-[Unit]
-Description=Create some memory pressure
-
-[Service]
-MemoryHigh=2M
-Slice=testsuite-56-workload.slice
-ExecStart=/usr/lib/systemd/tests/testdata/units/testsuite-56-slowgrowth.sh
diff --git a/test/units/testsuite-56.service b/test/units/testsuite-56.service
deleted file mode 100644
index b53b0905db..0000000000
--- a/test/units/testsuite-56.service
+++ /dev/null
@@ -1,7 +0,0 @@
-[Unit]
-Description=TESTSUITE-56-OOMD
-
-[Service]
-ExecStartPre=rm -f /failed /skipped /testok
-ExecStart=/usr/lib/systemd/tests/testdata/units/%N.sh
-Type=oneshot
diff --git a/test/units/testsuite-56.sh b/test/units/testsuite-56.sh
deleted file mode 100755
index 6835802eb8..0000000000
--- a/test/units/testsuite-56.sh
+++ /dev/null
@@ -1,76 +0,0 @@
-#!/usr/bin/env bash
-set -ex
-set -o pipefail
-
-systemd-analyze log-level debug
-systemd-analyze log-target console
-
-# Loose checks to ensure the environment has the necessary features for systemd-oomd
-[[ -e /proc/pressure ]] || echo "no PSI" >> /skipped
-cgroup_type=$(stat -fc %T /sys/fs/cgroup/)
-if [[ "$cgroup_type" != *"cgroup2"* ]] && [[ "$cgroup_type" != *"0x63677270"* ]]; then
- echo "no cgroup2" >> /skipped
-fi
-if [ ! -f /usr/lib/systemd/systemd-oomd ] && [ ! -f /lib/systemd/systemd-oomd ]; then
- echo "no oomd" >> /skipped
-fi
-[[ -e /skipped ]] && exit 0 || true
-
-rm -rf /etc/systemd/system/testsuite-56-testbloat.service.d
-
-echo "DefaultMemoryPressureDurationSec=5s" >> /etc/systemd/oomd.conf
-
-systemctl start testsuite-56-testchill.service
-systemctl start testsuite-56-testbloat.service
-
-# Verify systemd-oomd is monitoring the expected units
-oomctl | grep "/testsuite-56-workload.slice"
-oomctl | grep "1.00%"
-oomctl | grep "Default Memory Pressure Duration: 5s"
-
-# systemd-oomd watches for elevated pressure for 5 seconds before acting.
-# It can take time to build up pressure so either wait 2 minutes or for the service to fail.
-timeout=$(date -ud "2 minutes" +%s)
-while [[ $(date -u +%s) -le $timeout ]]; do
- if ! systemctl status testsuite-56-testbloat.service; then
- break
- fi
- sleep 5
-done
-
-# testbloat should be killed and testchill should be fine
-if systemctl status testsuite-56-testbloat.service; then exit 42; fi
-if ! systemctl status testsuite-56-testchill.service; then exit 24; fi
-
-# only run this portion of the test if we can set xattrs
-if setfattr -n user.xattr_test -v 1 /sys/fs/cgroup/; then
- sleep 120 # wait for systemd-oomd kill cool down and elevated memory pressure to come down
-
- mkdir -p /etc/systemd/system/testsuite-56-testbloat.service.d/
- echo "[Service]" > /etc/systemd/system/testsuite-56-testbloat.service.d/override.conf
- echo "ManagedOOMPreference=avoid" >> /etc/systemd/system/testsuite-56-testbloat.service.d/override.conf
-
- systemctl daemon-reload
- systemctl start testsuite-56-testchill.service
- systemctl start testsuite-56-testmunch.service
- systemctl start testsuite-56-testbloat.service
-
- timeout=$(date -ud "2 minutes" +%s)
- while [[ $(date -u +%s) -le $timeout ]]; do
- if ! systemctl status testsuite-56-testmunch.service; then
- break
- fi
- sleep 5
- done
-
- # testmunch should be killed since testbloat had the avoid xattr on it
- if ! systemctl status testsuite-56-testbloat.service; then exit 25; fi
- if systemctl status testsuite-56-testmunch.service; then exit 43; fi
- if ! systemctl status testsuite-56-testchill.service; then exit 24; fi
-fi
-
-systemd-analyze log-level info
-
-echo OK > /testok
-
-exit 0
diff --git a/test/units/testsuite-57.service b/test/units/testsuite-57.service
deleted file mode 100644
index b6edd862da..0000000000
--- a/test/units/testsuite-57.service
+++ /dev/null
@@ -1,7 +0,0 @@
-[Unit]
-Description=TEST-57-RUNTIME-BIND-PATHS
-
-[Service]
-ExecStartPre=rm -f /failed /testok
-ExecStart=/usr/lib/systemd/tests/testdata/units/%N.sh
-Type=oneshot
diff --git a/test/units/testsuite-57.sh b/test/units/testsuite-57.sh
deleted file mode 100755
index c24cf325c2..0000000000
--- a/test/units/testsuite-57.sh
+++ /dev/null
@@ -1,43 +0,0 @@
-#!/usr/bin/env bash
-set -ex
-
-echo "MARKER_FIXED" > /run/testservice-57-fixed
-mkdir -p /run/inaccessible
-
-systemctl start testsuite-57-namespaced.service
-
-# Ensure that inaccessible paths aren't bypassed by the runtime setup
-set +e
-systemctl bind --mkdir testsuite-57-namespaced.service /run/testservice-57-fixed /run/inaccessible/testfile_fixed && exit 1
-set -e
-
-echo "MARKER_RUNTIME" > /run/testservice-57-runtime
-
-systemctl bind --mkdir testsuite-57-namespaced.service /run/testservice-57-runtime /tmp/testfile_runtime
-
-while systemctl show -P SubState testsuite-57-namespaced.service | grep -q running
-do
- sleep 0.1
-done
-
-systemctl is-active testsuite-57-namespaced.service
-
-# Now test that systemctl bind fails when attempted on a non-namespaced unit
-systemctl start testsuite-57-non-namespaced.service
-
-set +e
-systemctl bind --mkdir testsuite-57-non-namespaced.service /run/testservice-57-runtime /tmp/testfile_runtime && exit 1
-set -e
-
-while systemctl show -P SubState testsuite-57-non-namespaced.service | grep -q running
-do
- sleep 0.1
-done
-
-set +e
-systemctl is-active testsuite-57-non-namespaced.service && exit 1
-set -e
-
-echo OK > /testok
-
-exit 0
diff --git a/test/units/testsuite-58.service b/test/units/testsuite-58.service
deleted file mode 100644
index 47deba7d53..0000000000
--- a/test/units/testsuite-58.service
+++ /dev/null
@@ -1,7 +0,0 @@
-[Unit]
-Description=TEST-58-PORTABLE
-
-[Service]
-ExecStartPre=rm -f /failed /testok
-ExecStart=/usr/lib/systemd/tests/testdata/units/%N.sh
-Type=oneshot
diff --git a/test/units/testsuite-58.sh b/test/units/testsuite-58.sh
deleted file mode 100755
index b5b05b42d9..0000000000
--- a/test/units/testsuite-58.sh
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/usr/bin/env bash
-# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
-# ex: ts=8 sw=4 sts=4 et filetype=sh
-set -ex
-set -o pipefail
-
-export SYSTEMD_LOG_LEVEL=debug
-
-portablectl attach --now --runtime /usr/share/minimal_0.raw app0
-
-systemctl is-active app0.service
-systemctl is-active app0-foo.service
-set +o pipefail
-set +e
-systemctl is-active app0-bar.service && exit 1
-set -e
-set -o pipefail
-
-portablectl reattach --now --runtime /usr/share/minimal_1.raw app0
-
-systemctl is-active app0.service
-systemctl is-active app0-bar.service
-set +o pipefail
-set +e
-systemctl is-active app0-foo.service && exit 1
-set -e
-set -o pipefail
-
-portablectl list | grep -q -F "minimal_1"
-
-portablectl detach --now --runtime /usr/share/minimal_1.raw app0
-
-portablectl list | grep -q -F "No images."
-
-# portablectl also works with directory paths rather than images
-
-unsquashfs -dest /tmp/minimal_0 /usr/share/minimal_0.raw
-unsquashfs -dest /tmp/minimal_1 /usr/share/minimal_1.raw
-
-portablectl attach --copy=symlink --now --runtime /tmp/minimal_0 app0
-
-systemctl is-active app0.service
-systemctl is-active app0-foo.service
-set +o pipefail
-set +e
-systemctl is-active app0-bar.service && exit 1
-set -e
-set -o pipefail
-
-portablectl reattach --now --enable --runtime /tmp/minimal_1 app0
-
-systemctl is-active app0.service
-systemctl is-active app0-bar.service
-set +o pipefail
-set +e
-systemctl is-active app0-foo.service && exit 1
-set -e
-set -o pipefail
-
-portablectl list | grep -q -F "minimal_1"
-
-portablectl detach --now --enable --runtime /tmp/minimal_1 app0
-
-portablectl list | grep -q -F "No images."
-
-echo OK > /testok
-
-exit 0