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

openSUSE Build Service is sponsored by