1#!/bin/sh 2# $OpenBSD: run,v 1.6 2022/04/28 22:11:59 jca Exp $ 3# Heavily inspired on FreeBSD's misc.sh. 4 5totntest=0 6totnfail=0 7 8name253="_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789_12" 9name255="${name253}34" 10name256="${name255}5" 11path1021="${name255}/${name255}/${name255}/${name253}" 12path1023="${path1021}/x" 13path1024="${path1023}x" 14 15# Run a single test, calling fstest to do the job. 16expect() 17{ 18 e="${1}" 19 shift 20 echo -n "Running test #${ntest}... " 21 r=`${FSTEST} $* | tail -1` 22 echo "${r}" | egrep -q '^'${e}'$' 23 if [ $? -eq 0 ]; then 24 echo "okay." 25 else 26 nfail=$((nfail + 1)) 27 echo "failed:" 28 echo " test\t$*" 29 echo " expect\t$e" 30 echo " result\t$r" 31 fi 32 ntest=$((ntest + 1)) 33} 34 35test_check() 36{ 37 echo -n "Running test #${ntest}... " 38 if [ $* ]; then 39 echo "okay." 40 else 41 nfail=$((nfail + 1)) 42 echo "failed:" 43 echo " test\t$*" 44 fi 45 ntest=$((ntest + 1)) 46} 47 48# Generate a random file/directory name. 49namegen() 50{ 51 echo "fstest_`dd if=/dev/urandom bs=1k count=1 status=none | md5`" 52} 53 54for arg in $*; do 55 ntest=0 56 nfail=0 57 echo $arg: 58 sed -n 's/^desc=//p' $arg 59 . $arg 60 totntest=$((totntest + ntest)) 61 totnfail=$((totnfail + nfail)) 62done 63 64echo "${totntest} tests completed, ${totnfail} failed." 65