busybox/testsuite
Denys Vlasenko 5370bfb123 documentation and typo fixes. By Dan Fandrich (dan AT coneharvesters.com)
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-09-06 02:58:59 +02:00
..
basename Kill off the old 'tests' stuff. Write a ton of new tests for the 2004-04-06 11:10:30 +00:00
bunzip2 * archival/bunzip2.c (bunzip2_main): Do not remove files if writing to standard 2002-04-15 15:01:37 +00:00
cat Merge test suite. 2001-10-30 23:11:20 +00:00
cmp Kill off the old 'tests' stuff. Write a ton of new tests for the 2004-04-06 11:10:30 +00:00
cp touch: implement -d --date (our own testsuite needs that) 2009-07-18 03:41:29 +02:00
cut Merge test suite. 2001-10-30 23:11:20 +00:00
date correct date testsuite to use compatible format 2009-07-18 04:54:21 +02:00
dd dd: add testsuite entry for write errors 2007-12-02 01:43:18 +00:00
dirname Kill off the old 'tests' stuff. Write a ton of new tests for the 2004-04-06 11:10:30 +00:00
du testsuite: fix du testsuite to not use changing directories 2008-04-23 07:02:02 +00:00
echo echo: fix echo -e -n "msg\n\0" 2008-04-30 00:39:22 +00:00
expand expand, unexpand: new applets from Tito <farmatito@tiscali.it> 2007-08-13 14:10:24 +00:00
expr expr: fix comparisons 'a < b' where we were overflowing a-b 2008-04-02 20:24:09 +00:00
false * cmp/cmp-detects-difference: Simplify return code negation. 2002-01-02 20:45:42 +00:00
find Update status of tests which should pass 2003-11-20 09:57:44 +00:00
gunzip * testsuite/bunzip2/bunzip2-reads-from-standard-input: Remove -c flags. 2002-03-27 22:48:39 +00:00
gzip * archival/gzip.c (ifname, ofname): Delete. 2002-02-05 22:31:48 +00:00
head egor duda writes: 2004-10-08 07:46:08 +00:00
hostid Kill off the old 'tests' stuff. Write a ton of new tests for the 2004-04-06 11:10:30 +00:00
hostname add SKIP_KNOWN_BUGS and SKIP_INTERNET_TESTS to testsuite 2009-07-18 15:19:41 +02:00
id Kill off the old 'tests' stuff. Write a ton of new tests for the 2004-04-06 11:10:30 +00:00
ln Kill off the old 'tests' stuff. Write a ton of new tests for the 2004-04-06 11:10:30 +00:00
ls add SKIP_KNOWN_BUGS and SKIP_INTERNET_TESTS to testsuite 2009-07-18 15:19:41 +02:00
md5sum New. 2001-11-19 15:13:12 +00:00
mkdir Merge test suite. 2001-10-30 23:11:20 +00:00
msh Merge test suite. 2001-10-30 23:11:20 +00:00
mv touch: implement -d --date (our own testsuite needs that) 2009-07-18 03:41:29 +02:00
pwd Kill off the old 'tests' stuff. Write a ton of new tests for the 2004-04-06 11:10:30 +00:00
rm New. 2001-10-31 16:36:23 +00:00
rmdir Merge test suite. 2001-10-30 23:11:20 +00:00
strings Kill off the old 'tests' stuff. Write a ton of new tests for the 2004-04-06 11:10:30 +00:00
tail testsuite: uniformly use $ECHO with -n -e 2008-07-11 21:41:14 +00:00
tar rename CONFIG_FEATURE_TAR_GZIP 2009-06-03 20:35:26 +02:00
tee Merge test suite. 2001-10-30 23:11:20 +00:00
touch New. 2001-12-07 21:27:57 +00:00
tr - fix bug where we did not reject invalid classes like '[[:alpha' 2007-03-30 14:43:27 +00:00
true Merge test suite. 2001-10-30 23:11:20 +00:00
unexpand expand, unexpand: new applets from Tito <farmatito@tiscali.it> 2007-08-13 14:10:24 +00:00
uptime Kill off the old 'tests' stuff. Write a ton of new tests for the 2004-04-06 11:10:30 +00:00
wc wc can emit unpredictable amount of whitespace 2007-01-28 16:59:30 +00:00
wget add SKIP_KNOWN_BUGS and SKIP_INTERNET_TESTS to testsuite 2009-07-18 15:19:41 +02:00
which Kill off the old 'tests' stuff. Write a ton of new tests for the 2004-04-06 11:10:30 +00:00
xargs egor duda writes: 2004-10-08 07:46:08 +00:00
all_sourcecode.tests *: mass renaming of USE_XXXX to IF_XXXX 2009-04-21 11:09:40 +00:00
awk_t1.tar.bz2 awk: fix a case with multiple -f options. simplify -f file reading. 2008-07-01 01:57:36 +00:00
awk.tests awk: fix long field separators case. By Ian Wienand (ianw AT vmware.com) 2009-04-12 13:54:13 +00:00
bunzip2.tests touch: implement -d --date (our own testsuite needs that) 2009-07-18 03:41:29 +02:00
busybox.tests move source code tests out into a sep file rather than just disabling/breaking them 2006-04-01 01:36:13 +00:00
bzcat.tests touch: implement -d --date (our own testsuite needs that) 2009-07-18 03:41:29 +02:00
comm.tests comm: almost total rewrite; add testsuite 2008-07-15 06:45:14 +00:00
cpio.tests fix mountpoint test to not prevemt mkfs_xxx from making image in any file 2009-07-18 16:22:26 +02:00
cut.tests fix vda's testsuite bogons, part 2 2007-11-26 07:23:27 +00:00
diff.tests diff: add testsuite entry for it 2008-03-24 20:33:47 +00:00
expand.tests expand: fix incorrect expansion exactly on tab boundary; shrink the code 2008-12-14 15:45:25 +00:00
grep.tests grep: fix -E + {range}; fix -o not printing all matches (bug 489) 2009-07-29 01:20:09 +02:00
gunzip.tests bunzip2/gunzip/uncompress/unlzma: merge into common code - 2007-03-07 22:02:23 +00:00
makedevs.device_table.txt test, tcpsvd, tcpsvd: shrink 2009-06-13 22:49:08 +02:00
makedevs.tests makedevs: shrink (by Vladimir); testsuite 2008-08-01 02:15:05 +00:00
mdev.tests mdev: set $MDEV correctly for renamed nodes 2009-07-02 13:07:11 +02:00
mkfs.minix.tests mkfs.minix: add testsuite; disable code which makes images variable 2007-12-02 08:55:34 +00:00
mount.testroot whitespace cleanup 2006-09-17 16:28:10 +00:00
mount.tests fix mount test false positive 2009-07-18 17:22:03 +02:00
od.tests fix mountpoint test to not prevemt mkfs_xxx from making image in any file 2009-07-18 16:22:26 +02:00
parse.tests fix several problems with config parser: 2008-07-26 23:08:31 +00:00
patch.tests patch: add support for -R. ~ +110 byte. By Pascal Bellard <pascal.bellard AT ads-lu.com> 2008-03-26 13:32:30 +00:00
pidof.tests - update my name. No obj-code changes ;) 2008-09-25 12:13:34 +00:00
printf.tests printf: fix exit code on conversion error 2009-06-18 22:22:04 +02:00
readlink.tests whitespace cleanup 2006-09-17 16:28:10 +00:00
README documentation and typo fixes. By Dan Fandrich (dan AT coneharvesters.com) 2009-09-06 02:58:59 +02:00
runtest minor tweaks in testsuite 2009-07-18 16:34:01 +02:00
rx.tests correct mode of testsuite/rx.tests 2009-08-03 10:36:58 +02:00
sed.tests sed: fix " echo /usr/lib | sed 's,\(^/\|\)[^/][^/]*,..,g' " bug 2009-08-17 01:35:04 +02:00
seq.tests seq: fix testsuite failures 2009-06-15 09:16:27 +02:00
sort.tests fix mountpoint test to not prevemt mkfs_xxx from making image in any file 2009-07-18 16:22:26 +02:00
start-stop-daemon.tests ssd: do not stat -x EXECUTABLE, it is not needed anymore 2008-07-01 10:00:46 +00:00
sum.tests - update my name. No obj-code changes ;) 2008-09-25 12:13:34 +00:00
tail.tests tail: fix "tail +N file_shorter_than_N" 2009-08-09 22:06:56 +02:00
taskset.tests add SKIP_KNOWN_BUGS and SKIP_INTERNET_TESTS to testsuite 2009-07-18 15:19:41 +02:00
test.tests test: fix "test !" and "test abc -a !". closes bug 465 2009-07-17 00:59:26 +02:00
testing.sh fix mountpoint test to not prevemt mkfs_xxx from making image in any file 2009-07-18 16:22:26 +02:00
TODO It was a bit out of date. 2005-11-07 09:06:34 +00:00
tr.tests fix permissions in testsuite 2009-06-13 16:35:20 +02:00
umlwrapper.sh My mount testsuite. Not automatically run at the moment, need to figure out 2006-03-18 03:00:22 +00:00
unexpand.tests unexpand: fix incorrect expansion, add test for it 2008-12-26 14:56:03 +00:00
uniq.tests silly whitespace fix 2009-07-18 17:26:25 +02:00
unzip.tests update Glenn McGrath's email address 2007-09-21 13:16:32 +00:00
uuencode.tests uuencode: common implementation for wget and uuencode (closing bug 694) 2006-09-03 15:49:40 +00:00
xargs.tests xargs: fix -e default to match newer GNU xargs, add SUS mandated -E. 2008-08-04 21:30:55 +00:00

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:

./runtest <applet1> <applet2>...

Set SKIP_KNOWN_BUGS environment variable to any non-empty value
to exclude tests which are known to fail.

Set SKIP_INTERNET_TESTS to exclude tests which require working
internet connection.


Common causes of false positives:

For busybox built against uclibc, /etc/TZ does not exist or does not match
host system timezone setting. For glibc based host systems, timezone settings
are in /etc/localtime.

LANG and LC_xxx environment variables set to non-C locale.


Developer's notes:

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.