TEST-26-SYSTEMCTL: test about systemctl return codes for is-* verbs

We should return 4 when no unit file is found.

See also: #25689 #25680
This commit is contained in:
Mike Yuan
2022-12-13 00:39:31 +08:00
parent 43e48a4738
commit 9aaa333fc3

View File

@@ -9,6 +9,9 @@ at_exit() {
fi
}
# shellcheck source=test/units/assert.sh
. "$(dirname "$0")"/assert.sh
trap at_exit EXIT
# Create a simple unit file for testing
@@ -79,6 +82,16 @@ systemctl list-jobs --before
systemctl list-jobs --after --before
systemctl list-jobs "*"
# is-* verbs
# Should return 4 for a missing unit file
assert_rc 4 systemctl --quiet is-active not-found.service
assert_rc 4 systemctl --quiet is-failed not-found.service
assert_rc 4 systemctl --quiet is-enabled not-found.service
# is-active: return 3 when the unit exists but inactive
assert_rc 3 systemctl --quiet is-active "$UNIT_NAME"
# is-enabled: return 1 when the unit exists but disabled
assert_rc 1 systemctl --quiet is-enabled "$UNIT_NAME"
# Basic service management
systemctl start --show-transaction "$UNIT_NAME"
systemctl status -n 5 "$UNIT_NAME"