File 0011-TEST-10-ISSUE-2467-adapt-for-SUSE-openQA.patch of Package systemd-v244-testsuite
From 5415a4d3182d98ff5a0f80787448ab8c0534a59c Mon Sep 17 00:00:00 2001
From: Thomas Blume <Thomas.Blume@suse.com>
Date: Thu, 19 Dec 2019 08:52:18 +0100
Subject: [PATCH 11/24] TEST-10-ISSUE-2467: adapt for SUSE openQA
---
test/TEST-10-ISSUE-2467/test.sh | 45 ++++++++++++++++++++++++++++++++++++++---
1 file changed, 42 insertions(+), 3 deletions(-)
diff --git a/test/TEST-10-ISSUE-2467/test.sh b/test/TEST-10-ISSUE-2467/test.sh
index 7bb2569630..05ce9c65d4 100755
--- a/test/TEST-10-ISSUE-2467/test.sh
+++ b/test/TEST-10-ISSUE-2467/test.sh
@@ -2,18 +2,36 @@
set -e
TEST_DESCRIPTION="https://github.com/systemd/systemd/issues/2467"
+export TEST_BASE_DIR=/var/opt/systemd-tests/test
. $TEST_BASE_DIR/test-functions
+test_run() {
+ ret=1
+ systemctl daemon-reload
+ systemctl start testsuite.service || return 1
+ systemctl status --full testsuite.service
+ if [ -z "$TEST_NO_NSPAWN" ]; then
+ if run_nspawn; then
+ check_result_nspawn || return 1
+ else
+ dwarn "can't run systemd-nspawn, skipping"
+ fi
+ fi
+ test -s /failed && ret=$(($ret+1))
+ [[ -e /testok ]] && ret=0
+ return $ret
+}
+
test_setup() {
- create_empty_image_rootdir
+ mkdir -p $TESTDIR/root
+ initdir=$TESTDIR/root
+ STRIP_BINARIES=no
# Create what will eventually be our root filesystem onto an overlay
(
LOG_LEVEL=5
- eval $(udevadm info --export --query=env --name=${LOOPDEV}p2)
setup_basic_environment
- mask_supporting_services
dracut_install true rm socat
# setup the testsuite service
@@ -23,7 +41,11 @@ Description=Testsuite service
[Service]
Type=oneshot
+StandardOutput=kmsg
+StandardError=kmsg
ExecStart=/bin/sh -e -x -c 'rm -f /tmp/nonexistent; systemctl start test.socket; printf x > test.file; socat -t20 OPEN:test.file UNIX-CONNECT:/run/test.ctl; >/testok'
+ExecStartPost=/bin/sh -x -c 'systemctl status test.socket > /failed; echo SUSEtest OK > /testok'
+TimeoutStartSec=10s
EOF
cat >$initdir/etc/systemd/system/test.socket <<'EOF'
@@ -43,6 +65,23 @@ EOF
setup_testsuite
)
setup_nspawn_root
+
+ # copy the units used by this test
+ for unit in test.service test.socket testsuite.service test.socket; do
+ cp $initdir/etc/systemd/system/$unit /etc/systemd/system/
+ done
+
+ mask_supporting_services_nspawn
+ mask_supporting_services
+}
+
+test_cleanup() {
+ for unit in test.service test.socket testsuite.service; do
+ rm /etc/systemd/system/$unit
+ done
+ [[ -e /testok ]] && rm /testok
+ [[ -e /failed ]] && rm /failed
+ return 0
}
do_test "$@"
--
2.16.4