xref: /freebsd/tools/regression/geom/RunTest.t (revision d0b2dbfa0ecf2bbc9709efc5e20baf8e4b44bbbf)
100e13b1dSNik Clayton#!/bin/sh
200e13b1dSNik Clayton
300e13b1dSNik ClaytonMD=34
400e13b1dSNik ClaytonTMP=/tmp/$$
500e13b1dSNik Clayton
600e13b1dSNik Claytonset -e
700e13b1dSNik Clayton
800e13b1dSNik Clayton# Start from the right directory so we can find all our data files.
900e13b1dSNik Claytoncd `dirname $0`
1000e13b1dSNik Clayton
1100e13b1dSNik Clayton(cd MdLoad && make) > /dev/null 2>&1
1200e13b1dSNik Clayton
1300e13b1dSNik Clayton# Print the test header
1400e13b1dSNik Claytonecho -n '1..'
1500e13b1dSNik Claytonecho `ls -1 Data/disk.*.xml | wc -l`
1600e13b1dSNik Clayton
1700e13b1dSNik Claytonfor f in Data/disk.*.xml
1800e13b1dSNik Claytondo
1900e13b1dSNik Clayton	b=`basename $f`
2000e13b1dSNik Clayton	mdconfig -d -u $MD > /dev/null 2>&1 || true
2100e13b1dSNik Clayton	if [ -c /dev/md$MD ] ; then
2200e13b1dSNik Clayton		sleep 1
2300e13b1dSNik Clayton	fi
2400e13b1dSNik Clayton	if [ -c /dev/md$MD ] ; then
2500e13b1dSNik Clayton		sleep 1
2600e13b1dSNik Clayton	fi
2700e13b1dSNik Clayton	if [ -c /dev/md$MD ] ; then
2800e13b1dSNik Clayton		echo "Bail out!"
2900e13b1dSNik Clayton		echo "/dev/md$MD is busy"
3000e13b1dSNik Clayton		exit 1
3100e13b1dSNik Clayton	fi
3200e13b1dSNik Clayton	MdLoad/MdLoad md${MD} $f
3300e13b1dSNik Clayton	if [ -f Ref/$b ] ; then
3400e13b1dSNik Clayton		if diskinfo /dev/md${MD}* |
35*75ce6ac6SWarner Losh		   diff -I '\$FreeBSD' -u Ref/$b - > $TMP; then
3600e13b1dSNik Clayton			echo "ok - $b"
3700e13b1dSNik Clayton		else
3800e13b1dSNik Clayton			echo "not ok - $b"
3900e13b1dSNik Clayton			sed 's/^/# /' $TMP
4000e13b1dSNik Clayton		fi
4100e13b1dSNik Clayton	else
4200e13b1dSNik Clayton		diskinfo /dev/md${MD}* > Ref/`basename $f`
4300e13b1dSNik Clayton	fi
4400e13b1dSNik Claytondone
4500e13b1dSNik Clayton
4600e13b1dSNik Claytonmdconfig -d -u $MD > /dev/null 2>&1 || true
4700e13b1dSNik Claytonrm -f $TMP
4800e13b1dSNik Clayton
4900e13b1dSNik Claytonexit 0
50