mirror of
https://github.com/systemd/systemd.git
synced 2025-01-25 10:04:04 +03:00
fb4f7271d9
The script has a shebang and .sh extension, so make it executable W: systemd-tests: script-not-executable [usr/lib/systemd/tests/testdata/units/assert.sh]
59 lines
858 B
Bash
Executable File
59 lines
858 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# SPDX-License-Identifier: LGPL-2.1-or-later
|
|
|
|
# utility functions for shell tests
|
|
|
|
assert_true() {(
|
|
set +ex
|
|
|
|
local rc
|
|
|
|
"$@"
|
|
rc=$?
|
|
if [[ $rc -ne 0 ]]; then
|
|
echo "FAIL: command '$*' failed with exit code $rc" >&2
|
|
exit 1
|
|
fi
|
|
)}
|
|
|
|
|
|
assert_eq() {(
|
|
set +ex
|
|
|
|
if [[ "${1?}" != "${2?}" ]]; then
|
|
echo "FAIL: expected: '$2' actual: '$1'" >&2
|
|
exit 1
|
|
fi
|
|
)}
|
|
|
|
assert_in() {(
|
|
set +ex
|
|
|
|
if ! [[ "${2?}" =~ ${1?} ]]; then
|
|
echo "FAIL: '$1' not found in:" >&2
|
|
echo "$2" >&2
|
|
exit 1
|
|
fi
|
|
)}
|
|
|
|
assert_not_in() {(
|
|
set +ex
|
|
|
|
if [[ "${2?}" =~ ${1?} ]]; then
|
|
echo "FAIL: '$1' found in:" >&2
|
|
echo "$2" >&2
|
|
exit 1
|
|
fi
|
|
)}
|
|
|
|
assert_rc() {(
|
|
set +ex
|
|
|
|
local rc exp="${1?}"
|
|
|
|
shift
|
|
"$@"
|
|
rc=$?
|
|
assert_eq "$rc" "$exp"
|
|
)}
|