89a22ea5d9
- 'function fn_name\n{' breaks on older FreeBSD default shells, so use the more widely supported 'fn_name () {'. This needs more fixing.. - test for integers ought to use the proper operators - test for strings ought to use quoting of the strings to be fair to strange implementations of test(1) - make sure not to ignore return-codes != 0 from commands; Some shells exit immediately on this (much like explicitely requesting set -e in e.g. bash) TODO: *) Some older shells do not allow a space after the test-condition in an "if" statement. This doesn't work: if [ $status -ne 0 ] ; then as opposed to this: if [ $status -ne 0 ]; then or this if [ $status -ne 0 ] then *) strict spacing between commands. In some shells you have to say: foo ; bar ; baz The affected shells barf on stuff like ommitting the space, so this doesn't work: foo; bar ;baz *) $() vs. `` The former isn't really portable as opposed to the latter. *) fix frong assumption that the testsuite is run from the source-dir. This is a complete misconception and renders the testsuite completely useless. That said, i note that IMO a test-harness ought to do it's best to work in a wide variety of environments, everything else defeats it's purpose. |
||
---|---|---|
.. | ||
basename | ||
bunzip2 | ||
cat | ||
cmp | ||
cp | ||
cut | ||
date | ||
dd | ||
dirname | ||
du | ||
echo | ||
expr | ||
false | ||
find | ||
gunzip | ||
gzip | ||
head | ||
hostid | ||
hostname | ||
id | ||
ln | ||
ls | ||
md5sum | ||
mkdir | ||
msh | ||
mv | ||
pwd | ||
rm | ||
rmdir | ||
strings | ||
tail | ||
tar | ||
tee | ||
touch | ||
tr | ||
true | ||
uptime | ||
uuencode | ||
wc | ||
wget | ||
which | ||
xargs | ||
all_sourcecode.tests | ||
busybox.tests | ||
grep.tests | ||
mount.testroot | ||
pidof.tests | ||
readlink.tests | ||
README | ||
runtest | ||
sed.tests | ||
seq.tests | ||
sort.tests | ||
testing.sh | ||
TODO | ||
umlwrapper.sh | ||
uniq.tests |
To run the test suite, change to this directory and run "./runtest". It will run all of the test cases, and list those with unexpected outcomes. Adding the -v option will cause it to show expected outcomes as well. To only run the test cases for particular applets, specify them as parameters to runtest. The test cases for an applet reside in the subdirectory of the applet name. The name of the test case should be the assertion that is tested. The test case should be a shell fragment that returns successfully if the test case passes, and unsuccessfully otherwise. If the test case relies on a certain feature, it should include the string "FEATURE: " followed by the name of the feature in a comment. If it is always expected to fail, it should include the string "XFAIL" in a comment. For the entire testsuite, the copyright is as follows: Copyright (C) 2001, 2002 Matt Kraai This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.