From: Yu Watanabe Date: Wed, 3 Jun 2026 23:37:54 +0000 (+0900) Subject: test: skip test cases using userdbctl X-Git-Url: http://git.ipfire.org/gitweb/index.cgi?a=commitdiff_plain;h=8cfe1c2f7e09c537c4769e797ff37dad221e2e74;p=thirdparty%2Fsystemd.git test: skip test cases using userdbctl userdb support is optional, hence userdbctl may not be installed. --- diff --git a/test/units/TEST-07-PID1.nft.sh b/test/units/TEST-07-PID1.nft.sh index dbfefc281f9..3713cd6c86a 100755 --- a/test/units/TEST-07-PID1.nft.sh +++ b/test/units/TEST-07-PID1.nft.sh @@ -24,12 +24,14 @@ systemd-run --unit test-nft.service --service-type=exec -p DynamicUser=yes \ -p 'NFTSet=cgroup:inet:sd_test:c user:inet:sd_test:u group:inet:sd_test:g' sleep 10000 run nft list set inet sd_test c grep -qF "test-nft.service" "$RUN_OUT" -uid=$(userdbctl user --json=short test-nft | jq .uid) -run nft list set inet sd_test u -grep -qF "$uid" "$RUN_OUT" -gid=$(userdbctl user --json=short test-nft | jq .gid) -run nft list set inet sd_test g -grep -qF "$gid" "$RUN_OUT" +if command -v userdbctl >/dev/null; then + uid=$(userdbctl user --json=short test-nft | jq .uid) + run nft list set inet sd_test u + grep -qF "$uid" "$RUN_OUT" + gid=$(userdbctl user --json=short test-nft | jq .gid) + run nft list set inet sd_test g + grep -qF "$gid" "$RUN_OUT" +fi systemctl stop test-nft.service # scope diff --git a/test/units/TEST-74-AUX-UTILS.sysusers.sh b/test/units/TEST-74-AUX-UTILS.sysusers.sh index 2a06e85bfd4..6e3fcac8c56 100755 --- a/test/units/TEST-74-AUX-UTILS.sysusers.sh +++ b/test/units/TEST-74-AUX-UTILS.sysusers.sh @@ -11,11 +11,13 @@ u unlockedtestuser - "An unlocked system user" / /bin/bash u! lockedtestuser - "A locked system user" / /bin/bash EOF -userdbctl -j user unlockedtestuser -userdbctl -j user lockedtestuser +if command -v userdbctl >/dev/null; then + userdbctl -j user unlockedtestuser + userdbctl -j user lockedtestuser -assert_eq "$(userdbctl -j user unlockedtestuser | jq .locked)" "null" -assert_eq "$(userdbctl -j user lockedtestuser | jq .locked)" "true" + assert_eq "$(userdbctl -j user unlockedtestuser | jq .locked)" "null" + assert_eq "$(userdbctl -j user lockedtestuser | jq .locked)" "true" +fi at_exit() { set +e diff --git a/test/units/TEST-74-AUX-UTILS.userdbctl.sh b/test/units/TEST-74-AUX-UTILS.userdbctl.sh index fdfff1a65ca..dd57c6fee56 100755 --- a/test/units/TEST-74-AUX-UTILS.userdbctl.sh +++ b/test/units/TEST-74-AUX-UTILS.userdbctl.sh @@ -3,6 +3,11 @@ set -eux set -o pipefail +if ! command -v userdbctl >/dev/null; then + echo "userdbctl is not installed, skipping the test." + exit 0 +fi + # shellcheck source=test/units/util.sh . "$(dirname "$0")"/util.sh