##// END OF EJS Templates
Show revisions in diffs like CVS, based on a patch from Goffredo Baroncelli....
Show revisions in diffs like CVS, based on a patch from Goffredo Baroncelli. -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Show revisions in diffs like CVS, based on a patch from Goffredo Baroncelli. Changes from the original patch: - - Use 'diff -r ...' instead of 'hg diff -r ...' to support filetype detection by at least file(1) and vim. - - Adjusted tests for this change. - - Some cleanups. manifest hash: 5f37d1ef75ea7f4e48b53f02371053ba54fb70f8 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) iD8DBQFCsyZzW7P1GVgWeRoRAqczAJ479lR9Z289sP+VH5L+N7pQRU14SACfUueq 88ABloIR3VyRIa4qbujnZio= =Vva9 -----END PGP SIGNATURE-----

File last commit:

r382:37249c52 default
r396:8f8bb77d default
Show More
run-tests
61 lines | 886 B | text/plain | TextLexer
mpm@selenic.com
Add a simple testing framework...
r331 #!/bin/bash
set -e
tests=0
failed=0
H=$PWD
mpm@selenic.com
run-tests: run tests given on the command line...
r362 function run_one
{
mpm@selenic.com
test suite: fix timezone problems and port collision problem...
r382 export TZ=GMT
mpm@selenic.com
Add a simple testing framework...
r331 D=`mktemp -d`
if [ "$D" == "" ] ; then
echo mktemp failed!
fi
cd $D
fail=0
mpm@selenic.com
run-tests: run tests given on the command line...
r362
mpm@selenic.com
Add a simple testing framework...
r331 if ! $H/$f > .out 2>&1 ; then
echo $f failed with error code $?
fail=1
fi
mpm@selenic.com
run-tests: run tests given on the command line...
r362
mpm@selenic.com
Add a simple testing framework...
r331 if [ -s .out -a ! -r $H/$f.out ] ; then
echo $f generated unexpected output:
cat .out
cp .out $H/$f.err
fail=1
mpm@selenic.com
run-tests: run tests given on the command line...
r362 elif [ -r $H/$f.out ] && ! diff -u $H/$f.out .out > /dev/null ; then
mpm@selenic.com
Add a simple testing framework...
r331 echo $f output changed:
diff -u $H/$f.out .out && true
cp .out $H/$f.err
mpm@selenic.com
run-tests: actually mark changed output as failure...
r341 fail=1
mpm@selenic.com
Add a simple testing framework...
r331 fi
cd $H
rm -r $D
mpm@selenic.com
run-tests: run tests given on the command line...
r362 return $fail
}
mpm@selenic.com
Add a simple testing framework...
r331
mpm@selenic.com
run-tests: run tests given on the command line...
r362 TESTS=$@
if [ "$TESTS" == "" ] ; then
TESTS=`ls test-* | grep -Ev "\.|~"`
fi
for f in $TESTS ; do
echo -n "."
if ! run_one $f ; then
failed=$[$failed + 1]
fi
mpm@selenic.com
Add a simple testing framework...
r331 tests=$[$tests + 1]
done
echo
echo Ran $tests tests, $failed failed
if [ $failed -gt 0 ] ; then
exit 1
fi