File 0001-TEST-14-MACHINE-ID-adapt-for-openQA.patch of Package systemd-v245-testsuite

From 481669598e01c27405de9769cfa7314a397be642 Mon Sep 17 00:00:00 2001
From: Elisei Roca <eroca@suse.de>
Date: Fri, 8 May 2020 19:11:40 +0200
Subject: [PATCH] TEST-14-MACHINE-ID: adapt for openQA

---
 test/TEST-14-MACHINE-ID/test.sh | 40 ++++++++++++++++++++++++---------
 1 file changed, 29 insertions(+), 11 deletions(-)

diff --git a/test/TEST-14-MACHINE-ID/test.sh b/test/TEST-14-MACHINE-ID/test.sh
index 74cabf86aa..dfd93dcbf2 100755
--- a/test/TEST-14-MACHINE-ID/test.sh
+++ b/test/TEST-14-MACHINE-ID/test.sh
@@ -3,32 +3,30 @@ set -e
 TEST_DESCRIPTION="/etc/machine-id testing"
 TEST_NO_NSPAWN=1
 
+export TEST_BASE_DIR=/var/opt/systemd-tests/test
 . $TEST_BASE_DIR/test-functions
 
 test_setup() {
-    create_empty_image_rootdir
 
     # 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
-        printf "556f48e837bc4424a710fa2e2c9d3e3c\ne3d\n" >$initdir/etc/machine-id
-        dracut_install mount cmp
+        mv /etc/machine-id /etc/machine-id.orig
+        printf "556f48e837bc4424a710fa2e2c9d3e3c\ne3d\n" >/etc/machine-id
 
         # setup the testsuite service
-        cat >$initdir/etc/systemd/system/testsuite.service <<EOF
+        cat >/etc/systemd/system/testsuite.service <<EOF
 [Unit]
 Description=Testsuite service
 
 [Service]
-ExecStart=/bin/sh -e -x -c '/test-machine-id-setup.sh; systemctl --state=failed --no-legend --no-pager > /failed ; echo OK > /testok'
+ExecStart=/bin/sh -e -x -c '/test-machine-id-setup.sh; systemctl --state=failed --no-legend --no-pager > /failed ; echo SUSEtest OK > /testok'
 Type=oneshot
 EOF
 
-cat >$initdir/test-machine-id-setup.sh <<'EOF'
+cat >/test-machine-id-setup.sh <<'EOF'
 #!/usr/bin/env bash
 
 set -e
@@ -69,10 +67,30 @@ commited_id=$(systemd-machine-id-setup --print --commit --root "$r")
 [[ "$transient_id" = "$commited_id" ]]
 check "$r/etc/machine-id" "$r/run/machine-id"
 EOF
-chmod +x $initdir/test-machine-id-setup.sh
-
-        setup_testsuite
+chmod +x /test-machine-id-setup.sh
     )
 }
 
+test_run() {
+    systemctl daemon-reload
+    systemctl start testsuite.service || return 1
+    ret=1
+    test -s /failed && ret=$(($ret+1))
+    [[ -e /testok ]] && ret=0
+    return $ret
+}
+
+test_cleanup() {
+    _test_cleanup
+    rm -f /etc/systemd/system/testsuite.service
+    rm -f /test-machine-id-setup.sh
+    mv /etc/machine-id.orig /etc/machine-id
+    umount /overwrite-broken-machine-id && rm -r /overwrite-broken-machine-id
+    umount -R /transient-machine-id && rm -r /transient-machine-id
+    rm -f /expected
+    [[ -e /testok ]] && rm /testok
+    [[ -e /failed ]] && rm /failed
+    return 0
+}
+
 do_test "$@"
-- 
2.26.2

openSUSE Build Service is sponsored by