busybox/testsuite
Denys Vlasenko 98654b995b test: fix mishandling of "test '(' = '('" and similar
function                                             old     new   delta
test_main                                            246     350    +104

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-07-01 14:16:28 +02:00
..
basename
bunzip2
cat
cmp
cp
cut
date testsuite: disable tests for no longer supported bbox-specific date formats 2013-12-31 18:57:39 +01:00
dd
dirname
du testsuite: fix false positives for du 2013-12-20 02:55:16 +01:00
echo echo: fix ENOSPC detection and some iffy code in \NNN handling 2011-02-14 15:42:18 +01:00
expand
expr
false
find
gunzip
gzip
head
hostid fix bashisms in testsuite/ 2013-11-10 22:06:06 +01:00
hostname
id
ln
ls
md5sum
mkdir
msh
mv
pwd
rm
rmdir
strings
tail
tar testsuite: fixes after randomconfig run 2011-08-11 10:40:12 +02:00
tee
touch
tr
true
unexpand
uptime
wc
wget
which testsuite: fix last "which" change 2014-01-23 14:41:53 +01:00
xargs
all_sourcecode.tests
ar.tests
ash.tests
awk_t1.tar.bz2
awk.tests awk: fix handling of "if ... break ; else ..." - closes 7226 2014-06-26 16:40:28 +02:00
bunzip2.tests
busybox.tests
bzcat.tests testsuite: merge bzcat2.tests into bzcat.tests 2011-10-31 01:10:47 +01:00
cal.tests
comm.tests
cp.tests
cpio.tests
cut.tests
diff.tests
expand.tests
find.tests find: exit code fixes for find -exec 2014-06-19 11:32:11 +02:00
fold.tests
grep.tests grep: fix -w match if first match isn't a word, but second is. Closes 4520 2014-02-27 14:56:12 +01:00
gunzip.tests
ls.mk_uni_tests testsuite: fix the mishap in the previous commit 2011-10-31 01:08:35 +01:00
ls.tests randomconfig fixes 2011-08-10 00:51:29 +02:00
makedevs.device_table.txt
makedevs.tests
md5sum.tests fix bashisms in testsuite/ 2013-11-10 22:06:06 +01:00
mdev.tests mdev: fix mode of dir1 in =dir1/dir2/file rule 2013-01-21 01:22:12 +01:00
mkfs.minix.tests fix testsuite false positive 2013-01-21 08:28:37 +01:00
mount.testroot
mount.tests mount: fix the wrongly stored fs creation time 2012-06-21 16:50:46 +02:00
od.tests randomconfig fixes 2011-08-10 00:51:29 +02:00
parse.tests fix false positive in parse test 2011-06-18 09:29:21 +02:00
patch.tests patch: make -p count path components, not slashes (think /blah//thing) 2011-10-10 19:59:38 +02:00
pidof.tests
printf.tests
readlink.tests
README
runtest testsuite: fixes after randomconfig run 2011-08-11 10:40:12 +02:00
rx.tests
sed.tests sed: fix "sed clusternewline" testcase 2013-10-30 14:25:22 +01:00
seq.tests
sha1sum.tests
sha3sum.tests sha3sum: new applet 2013-01-14 05:20:50 +01:00
sha256sum.tests
sha512sum.tests
sort.tests sort: check global flags on fallback sort 2014-01-19 09:10:14 +01:00
start-stop-daemon.tests
sum.tests
tail.tests tail: fix -c +N. Closes 4111 2011-09-17 00:12:24 +02:00
tar.tests testsuite: remove forgotten debug hack 2013-12-31 23:25:46 +01:00
taskset.tests
test.tests test: fix mishandling of "test '(' = '('" and similar 2014-07-01 14:16:28 +02:00
testing.sh fix bashisms in testsuite/ 2013-11-10 22:06:06 +01:00
TODO
tr.tests
umlwrapper.sh
uncompress.tests uncompress: fix buffer underrun by corrupted input 2011-08-18 14:29:41 +02:00
unexpand.tests
uniq.tests
unzip.tests
uuencode.tests libbb: split decode_base64 off read_base64 2011-10-28 13:59:55 +02:00
xargs.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:

./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.