diff options
author | jilles <jilles@FreeBSD.org> | 2010-11-08 23:15:10 +0000 |
---|---|---|
committer | jilles <jilles@FreeBSD.org> | 2010-11-08 23:15:10 +0000 |
commit | 1d77e31425860c5adf9e625c70a2ba03bbc272b6 (patch) | |
tree | b50d336f6e8d71dabc9efb26c2192f9b32acbc84 | |
parent | a6b5035c36fd8f751c6bb57fd96bd103f1daa9f4 (diff) | |
download | FreeBSD-src-1d77e31425860c5adf9e625c70a2ba03bbc272b6.zip FreeBSD-src-1d77e31425860c5adf9e625c70a2ba03bbc272b6.tar.gz |
test: Move tests to tools/regression/bin/test.
Convert the tests to the perl prove format.
Remove obsolete TEST.README (results of an old TEST.sh for some old Unices)
and TEST.csh (old tests without correct values, far less complete than
TEST.sh).
MFC after: 1 week
-rw-r--r-- | bin/test/TEST.README | 24 | ||||
-rw-r--r-- | bin/test/TEST.csh | 152 | ||||
-rw-r--r-- | tools/regression/bin/Makefile | 2 | ||||
-rw-r--r-- | tools/regression/bin/test/Makefile | 4 | ||||
-rw-r--r-- | tools/regression/bin/test/regress.sh (renamed from bin/test/TEST.sh) | 38 | ||||
-rw-r--r-- | tools/regression/bin/test/regress.t | 6 |
6 files changed, 21 insertions, 205 deletions
diff --git a/bin/test/TEST.README b/bin/test/TEST.README deleted file mode 100644 index 4fe3524..0000000 --- a/bin/test/TEST.README +++ /dev/null @@ -1,24 +0,0 @@ -# $FreeBSD$ - -OS/shell syntax error failed --------------------------------------------------------------------- -bash 1.14.5 3 0 -pdksh 5.2.5 7 0 -zsh 2.6-beta17 6 4 -FreeBSD 2.1 /bin/test 8 0 -IRIX 5.3 ksh 3 0 -IRIX 5.3 sh 3 0 -IRIX 5.3 /usr/bin/test 11 3 -SunOS 5.4 ksh 3 0 -SunOS 5.4 sh 3 0 -SunOS 5.4 /usr/ucb/test 3 0 -SunOS 5.5 ksh 0 0 -SunOS 5.5 sh 3 0 -SunOS 5.5 /usr/ucb/test 3 0 -SunOS 4.1.3_U1 sh 3 0 -SunOS 4.1.3_U1 /usr/bin/test 3 0 -ULTRIX 4.2 /bin/test 9 0 -ULTRIX 4.2 ksh 1 0 -ULTRIX 4.2 sh5 4 0 - -96/06/16 diff --git a/bin/test/TEST.csh b/bin/test/TEST.csh deleted file mode 100644 index afa1c91..0000000 --- a/bin/test/TEST.csh +++ /dev/null @@ -1,152 +0,0 @@ -# @(#)TEST.csh 5.2 (Berkeley) 4/30/93 -# $FreeBSD$ - -#alias t '/usr/src/bin/test/obj/test \!*; echo $status' -alias t '/bin/test \!*; echo $status' - -echo 't -b /dev/ttyp2' -t -b /dev/ttyp2 -echo 't -b /dev/jb1a' -t -b /dev/jb1a - -echo 't -c test.c' -t -c test.c -echo 't -c /dev/tty' -t -c /dev/tty - -echo 't -d test.c' -t -d test.c -echo 't -d /etc' -t -d /etc - -echo 't -e noexist' -t -e noexist -echo 't -e test.c' -t -e test.c - -echo 't -f noexist' -t -f noexist -echo 't -f /dev/tty' -t -f /dev/tty -echo 't -f test.c' -t -f test.c - -echo 't -g test.c' -t -g test.c -echo 't -g /bin/ps' -t -g /bin/ps - -echo 't -n ""' -t -n "" -echo 't -n "hello"' -t -n "hello" - -echo 't -p test.c' -t -p test.c - -echo 't -r noexist' -t -r noexist -echo 't -r /etc/master.passwd' -t -r /etc/master.passwd -echo 't -r test.c' -t -r test.c - -echo 't -s noexist' -t -s noexist -echo 't -s /dev/null' -t -s /dev/null -echo 't -s test.c' -t -s test.c - -echo 't -t 20' -t -t 20 -echo 't -t 0' -t -t 0 - -echo 't -u test.c' -t -u test.c -echo 't -u /bin/rcp' -t -u /bin/rcp - -echo 't -w noexist' -t -w noexist -echo 't -w /etc/master.passwd' -t -w /etc/master.passwd -echo 't -w /dev/null' -t -w /dev/null - -echo 't -x noexist' -t -x noexist -echo 't -x /bin/ps' -t -x /bin/ps -echo 't -x /etc/motd' -t -x /etc/motd - -echo 't -z ""' -t -z "" -echo 't -z "foo"' -t -z "foo" - -echo 't "foo"' -t "foo" -echo 't ""' -t "" - -echo 't "hello" = "hello"' -t "hello" = "hello" -echo 't "hello" = "goodbye"' -t "hello" = "goodbye" - -echo 't "hello" != "hello"' -t "hello" != "hello" -echo 't "hello" != "goodbye"' -t "hello" != "goodbye" - -echo 't 200 -eq 200' -t 200 -eq 200 -echo 't 34 -eq 222' -t 34 -eq 222 - -echo 't 200 -ne 200' -t 200 -ne 200 -echo 't 34 -ne 222' -t 34 -ne 222 - -echo 't 200 -gt 200' -t 200 -gt 200 -echo 't 340 -gt 222' -t 340 -gt 222 - -echo 't 200 -ge 200' -t 200 -ge 200 -echo 't 34 -ge 222' -t 34 -ge 222 - -echo 't 200 -lt 200' -t 200 -lt 200 -echo 't 34 -lt 222' -t 34 -lt 222 - -echo 't 200 -le 200' -t 200 -le 200 -echo 't 340 -le 222' -t 340 -le 222 - -echo 't 700 -le 1000 -a -n "1" -a "20" = "20"' -t 700 -le 1000 -a -n "1" -a "20" = "20" -echo 't ! \( 700 -le 1000 -a -n "1" -a "20" = "20" \)' -t ! \( 700 -le 1000 -a -n "1" -a "20" = "20" \) - -echo 't -5 -eq 5' -t -5 -eq 5 - - -echo 't foo -a ""' -t foo -a "" -echo 't "" -a foo' -t "" -a foo -echo 't "" -a ""' -t "" -a "" -echo 't "" -o ""' -t "" -o "" - diff --git a/tools/regression/bin/Makefile b/tools/regression/bin/Makefile index e0e3ea3..1dcdbb3 100644 --- a/tools/regression/bin/Makefile +++ b/tools/regression/bin/Makefile @@ -1,5 +1,5 @@ # $FreeBSD$ -SUBDIR= date mv pax sh +SUBDIR= date mv pax sh test .include <bsd.subdir.mk> diff --git a/tools/regression/bin/test/Makefile b/tools/regression/bin/test/Makefile new file mode 100644 index 0000000..2c9ca59 --- /dev/null +++ b/tools/regression/bin/test/Makefile @@ -0,0 +1,4 @@ +# $FreeBSD$ + +all: + sh regress.sh diff --git a/bin/test/TEST.sh b/tools/regression/bin/test/regress.sh index 6dd16bc..716c260 100644 --- a/bin/test/TEST.sh +++ b/tools/regression/bin/test/regress.sh @@ -30,44 +30,29 @@ # # $FreeBSD$ -# force a specified test program, e.g. `env test=/bin/test sh TEST.sh' +# force a specified test program, e.g. `env test=/bin/test sh regress.sh' : ${test=test} -ERROR=0 FAILED=0 - t () { # $1 -> exit code # $2 -> $test expression - echo -n "$1: $test $2 " - + count=$((count+1)) # check for syntax errors syntax="`eval $test $2 2>&1`" - if test -z "$syntax"; then - - case $1 in - 0) if eval $test $2; then echo " OK"; else failed;fi;; - 1) if eval $test $2; then failed; else echo " OK";fi;; - esac - + ret=$? + if test -n "$syntax"; then + printf "not ok %s - (syntax error)\n" "$count $2" + elif [ "$ret" != "$1" ]; then + printf "not ok %s - (got $ret, expected $1)\n" "$count $2" else - error + printf "ok %s\n" "$count $2" fi } -error () -{ - echo ""; echo " $syntax" - ERROR=`expr $ERROR + 1` -} - -failed () -{ - echo ""; echo " failed" - FAILED=`expr $FAILED + 1` -} - +count=0 +echo "1..94" t 0 'b = b' t 1 'b != b' @@ -172,6 +157,3 @@ t 1 '-z y -o y = "#" -o y = x' t 0 '0 -ne 0 -o ! -f /' t 0 '1 -ne 0 -o ! -f /etc/passwd' t 1 '0 -ne 0 -o ! -f /etc/passwd' - -echo "" -echo "Syntax errors: $ERROR Failed: $FAILED" diff --git a/tools/regression/bin/test/regress.t b/tools/regression/bin/test/regress.t new file mode 100644 index 0000000..c36d834 --- /dev/null +++ b/tools/regression/bin/test/regress.t @@ -0,0 +1,6 @@ +#!/bin/sh +# $FreeBSD$ + +cd `dirname $0` + +sh regress.sh |