test/*: rewrite check.sh in Makefile

This commit is contained in:
illiliti 2021-08-05 09:03:47 +03:00
parent 30a0f61955
commit 9f12880096
3 changed files with 19 additions and 54 deletions

View File

@ -18,4 +18,6 @@ uninstall:
rm -rf ${DESTDIR}${LIBDIR}/tinyramfs rm -rf ${DESTDIR}${LIBDIR}/tinyramfs
check: check:
(cd test && ./check.sh) (cd test && ${MAKE})
.PHONY: install uninstall check

16
test/Makefile Normal file
View File

@ -0,0 +1,16 @@
.POSIX:
.SUFFIXES:
.SUFFIXES: .test
TEST = bare luks lvm zfs
all: ${TEST}
.test:
./$< > $@.out 2>&1
clean:
rm -f *.out
.PHONY: all clean

View File

@ -1,53 +0,0 @@
#!/bin/sh
if [ "$(id -u)" != 0 ]; then
printf '%s: must be run as root' "$0"
exit 1
fi
if [ "$DEVMGR" ]; then
:
elif command -v mdev; then
DEVMGR=mdev
elif command -v mdevd; then
DEVMGR=mdevd
elif command -v udevd; then
DEVMGR=eudev
elif command -v /lib/systemd/systemd-udevd; then
DEVMGR=systemd-udev
elif [ -e /proc/sys/kernel/hotplug ]; then
DEVMGR=proc
else
printf '%s: device manager not found' "$0" >&2
exit 1
fi > /dev/null
export DEVMGR
if command -v modprobe > /dev/null; then
modprobe kvm
modprobe nbd
modprobe zfs
modprobe dm_mod
modprobe dm_crypt
fi
[ "$1" ] || set -- *.test
for file; do
if [ "$DEBUG" ]; then
"./${file}" 2>&1
else
"./${file}" > /dev/null 2>&1
fi
case $? in
222) status=SKIP ;;
0) status=PASS ;;
*) status=FAIL failed=1 ;;
esac
printf '%s: %s\n' "$file" "$status" >&2
done
[ -z "$failed" ]