diff options
author | Mike Yuan <me@yhndnzj.com> | 2023-03-13 20:33:36 +0800 |
---|---|---|
committer | Mike Yuan <me@yhndnzj.com> | 2023-03-15 19:56:19 +0800 |
commit | af0292844db57e796e48e434f5ff73ef02ed85bb (patch) | |
tree | cd7e3f7b0e2a93440396bd6506b35cbb6202c8c4 | |
parent | 1ed35a0d936fede155eb0c060ddfe4375885077f (diff) | |
download | systemd-af0292844db57e796e48e434f5ff73ef02ed85bb.tar.gz |
test: add testsuite-74.machinectl
-rwxr-xr-x | test/TEST-74-AUX-UTILS/test.sh | 4 | ||||
-rwxr-xr-x | test/units/testsuite-74.machinectl.sh | 43 |
2 files changed, 47 insertions, 0 deletions
diff --git a/test/TEST-74-AUX-UTILS/test.sh b/test/TEST-74-AUX-UTILS/test.sh index f422c89141..94bb159464 100755 --- a/test/TEST-74-AUX-UTILS/test.sh +++ b/test/TEST-74-AUX-UTILS/test.sh @@ -7,4 +7,8 @@ TEST_DESCRIPTION="Tests for auxiliary utilities" # shellcheck source=test/test-functions . "${TEST_BASE_DIR:?}/test-functions" +test_append_files() ( + image_install script +) + do_test "$@" diff --git a/test/units/testsuite-74.machinectl.sh b/test/units/testsuite-74.machinectl.sh new file mode 100755 index 0000000000..4adb1cd637 --- /dev/null +++ b/test/units/testsuite-74.machinectl.sh @@ -0,0 +1,43 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: LGPL-2.1-or-later +# shellcheck disable=SC2016 +set -eux +set -o pipefail + +# shellcheck source=test/units/assert.sh +. "$(dirname "$0")"/assert.sh + +: >/failed + +at_exit() { + if [[ -v NSPAWN_NAME && -e "/var/lib/machines/$NSPAWN_NAME" ]]; then + rm -fvr "/var/lib/machines/$NSPAWN_NAME" "/etc/systemd/nspawn/$NSPAWN_NAME" "new" + fi + + return 0 +} + +trap at_exit EXIT + +export NSPAWN_NAME="machinectl-test-$RANDOM.nspawn" +cat >"/var/lib/machines/$NSPAWN_NAME" <<\EOF +[Exec] +Boot=true +EOF + +EDITOR='true' script -ec 'machinectl edit "$NSPAWN_NAME"' /dev/null +[ -f "/etc/systemd/nspawn/$NSPAWN_NAME" ] +cmp "/var/lib/machines/$NSPAWN_NAME" "/etc/systemd/nspawn/$NSPAWN_NAME" + +cat >new <<\EOF +[Exec] +Boot=false +EOF + +script -ec 'machinectl cat "$PWD/new"' /dev/null + +EDITOR='mv new' script -ec 'machinectl edit "$NSPAWN_NAME"' /dev/null +printf '%s\n' '[Exec]' 'Boot=false' | cmp - "/etc/systemd/nspawn/$NSPAWN_NAME" + +touch /testok +rm /failed |