Denys Vlasenko fb0c000567 testsuite/sha1sum.tests: fix false positive failure 1 anno fa
..
basename ba2dcccd79 *: trailing empty lines removed 14 anni fa
bunzip2 52ae098011 randomconfig fixes 8 anni fa
bzcat 52ae098011 randomconfig fixes 8 anni fa
cat 3889078dbe Merge test suite. 23 anni fa
cmp 650fe63467 Kill off the old 'tests' stuff. Write a ton of new tests for the 20 anni fa
cp 208d35d21f testsuite fixes 14 anni fa
cut e82cf339e4 randomtest fixes 14 anni fa
date 9fe1548bbf date,touch: allow timezone offsets in dates 3 anni fa
dd b259415b51 dd: fix testsuite 3 anni fa
dirname ba2dcccd79 *: trailing empty lines removed 14 anni fa
du 94046d0495 randomconfig fixes 3 8 anni fa
echo 572dfb8e78 testsuite: check CONFIG_DESKTOP before using 'od -t' 6 anni fa
expr ba2dcccd79 *: trailing empty lines removed 14 anni fa
false f3fbe20c35 * cmp/cmp-detects-difference: Simplify return code negation. 23 anni fa
find bfa1b2e8e8 randomtest fixes 14 anni fa
gunzip 50aec98e1c * testsuite/bunzip2/bunzip2-reads-from-standard-input: Remove -c flags. 23 anni fa
gzip 560cf8c7eb gzip: add test that checks that -9 compresses better than -1 8 anni fa
hostid afa63b2dcd fix bashisms in testsuite/ 11 anni fa
hostname 775965de85 Improved portability of tests 14 anni fa
id 650fe63467 Kill off the old 'tests' stuff. Write a ton of new tests for the 20 anni fa
ln ba2dcccd79 *: trailing empty lines removed 14 anni fa
ls bfa1b2e8e8 randomtest fixes 14 anni fa
md5sum bfa1b2e8e8 randomtest fixes 14 anni fa
mkdir 3889078dbe Merge test suite. 23 anni fa
mv a84bbc5425 cp,mv: fix -t DIR option 3 anni fa
paste d2383f57cd paste: new applet 7 anni fa
pwd 1f27fa9838 testsuite: allow tests to work in paths containing spaces 6 anni fa
rm b89637a037 New. 23 anni fa
rmdir 3889078dbe Merge test suite. 23 anni fa
strings 650fe63467 Kill off the old 'tests' stuff. Write a ton of new tests for the 20 anni fa
tail bfa1b2e8e8 randomtest fixes 14 anni fa
tar 2969e24e2a testsuite: fixes after randomconfig run 13 anni fa
tee 3889078dbe Merge test suite. 23 anni fa
touch 07a37aebf5 New. 23 anni fa
tr e82cf339e4 randomtest fixes 14 anni fa
true 3889078dbe Merge test suite. 23 anni fa
uptime ba2dcccd79 *: trailing empty lines removed 14 anni fa
wc dccb1a5343 wc can emit unpredictable amount of whitespace 18 anni fa
wget b71ce023e9 add SKIP_KNOWN_BUGS and SKIP_INTERNET_TESTS to testsuite 15 anni fa
which bf2f2229bb testsuite: fix last "which" change 11 anni fa
xargs 1f27fa9838 testsuite: allow tests to work in paths containing spaces 6 anni fa
README 5370bfb123 documentation and typo fixes. By Dan Fandrich (dan AT coneharvesters.com) 15 anni fa
TODO c98a359a16 It was a bit out of date. 19 anni fa
all_sourcecode.tests 0ef64bdb40 *: make GNU licensing statement forms more regular 14 anni fa
ar.tests bb0bf287d8 randomconfig fixes 2 8 anni fa
ash.tests 0ef64bdb40 *: make GNU licensing statement forms more regular 14 anni fa
awk.tests e63d7cdfda awk: fix use after free (CVE-2022-30065) 2 anni fa
awk_t1.tar.bz2 3bb2bbd684 awk: fix a case with multiple -f options. simplify -f file reading. 16 anni fa
bc.tests ace81cd46c bc/dc: fix length(0) and length(0.000nnn) result 3 anni fa
bc_add.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_add_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_arctangent.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_arctangent_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_array.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_array_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_arrays.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_arrays_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_bessel.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_bessel_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_boolean.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_boolean_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_cosine.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_cosine_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_decimal.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_decimal_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_divide.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_divide_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_exponent.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_exponent_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_log.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_log_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_misc.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_misc1.bc 96b5ec10fb bc: fix "...; return}" to work, disallow "return ()" 5 anni fa
bc_misc1_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_misc2.bc d1d29b4245 bc: partially rewrite parser, tests pass, ^C might be broken now 6 anni fa
bc_misc2_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_misc_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_modulus.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_modulus_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_multiply.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_multiply_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_numbers1.bc e16a5223d2 bc: fix handling of "digits" above 9 6 anni fa
bc_numbers1_results.txt e16a5223d2 bc: fix handling of "digits" above 9 6 anni fa
bc_numbers2.bc d5b0fa6abf bc: more fixes for unusual input bases 6 anni fa
bc_numbers2_results.txt d5b0fa6abf bc: more fixes for unusual input bases 6 anni fa
bc_pi.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_pi_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_power.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_power_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_references.bc 53799506ac bc: implement pass-by-reference code from upstream 5 anni fa
bc_references_results.txt 53799506ac bc: implement pass-by-reference code from upstream 5 anni fa
bc_sine.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_sine_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_sqrt.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_sqrt_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_strings.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_strings_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_subtract.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_subtract_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_vars.bc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bc_vars_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
bunzip2.tests b2c123d484 testsuite: fix bunzip2.tests expectations 5 anni fa
busybox.tests ecaec1dbec testsuite: update busybox and bzcat tests 6 anni fa
bz2_issue_11.bz2 38ccd6af8a bzip2: fix two crashes on corrupted archives 6 anni fa
bz2_issue_12.bz2 38ccd6af8a bzip2: fix two crashes on corrupted archives 6 anni fa
bzcat.tests 94593799f7 testsuite/bzcat.tests: fix false positive take 2 6 anni fa
cal.tests 0ef64bdb40 *: make GNU licensing statement forms more regular 14 anni fa
cat.tests c849e72c0b nl: ensure '-b n' option displays file content 3 anni fa
comm.tests 0ef64bdb40 *: make GNU licensing statement forms more regular 14 anni fa
cp.tests 0ef64bdb40 *: make GNU licensing statement forms more regular 14 anni fa
cpio.tests 5fa5c4bde8 randomconfig fixes 4 anni fa
cryptpw.tests 00b5051cd2 libbb: code shrink in des encryption, in setup_salt() 3 anni fa
cut.tests eaa8ee40aa cut: fix testsuite 3 anni fa
dc.tests ace81cd46c bc/dc: fix length(0) and length(0.000nnn) result 3 anni fa
dc_add.dc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_add_results.txt 29a9043b36 bc,dc: make BC_LINE_LENGTH/DC_LINE_LENGTH more compatible with GNU 3 anni fa
dc_boolean.dc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_boolean_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_decimal.dc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_decimal_results.txt 29a9043b36 bc,dc: make BC_LINE_LENGTH/DC_LINE_LENGTH more compatible with GNU 3 anni fa
dc_divide.dc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_divide_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_divmod.dc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_divmod_results.txt 29a9043b36 bc,dc: make BC_LINE_LENGTH/DC_LINE_LENGTH more compatible with GNU 3 anni fa
dc_misc.dc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_misc_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_modexp.dc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_modexp_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_modulus.dc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_modulus_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_multiply.dc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_multiply_results.txt 29a9043b36 bc,dc: make BC_LINE_LENGTH/DC_LINE_LENGTH more compatible with GNU 3 anni fa
dc_power.dc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_power_results.txt 29a9043b36 bc,dc: make BC_LINE_LENGTH/DC_LINE_LENGTH more compatible with GNU 3 anni fa
dc_sqrt.dc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_sqrt_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_strings.dc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_strings_results.txt 7d32e25bf3 bc: prepare for char-by-char input handling 6 anni fa
dc_subtract.dc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dc_subtract_results.txt 29a9043b36 bc,dc: make BC_LINE_LENGTH/DC_LINE_LENGTH more compatible with GNU 3 anni fa
dcx_vars.dc 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
dcx_vars_results.txt 9a23b07c4c testsuite: add bc and dc tests 6 anni fa
diff.tests ad27a6d326 diff.tests: add testcases for -B and single line changes 9 anni fa
expand.tests 0ef64bdb40 *: make GNU licensing statement forms more regular 14 anni fa
factor.tests 6452c30036 factor: detect squares 3 anni fa
find.tests ccc9985c45 find: fix handling of trailing slashes in -name PATTERN comparisons 8 anni fa
fold.tests 0ef64bdb40 *: make GNU licensing statement forms more regular 14 anni fa
grep.tests a77f3ecf68 grep: for -L, exitcode 0 means files *without* matches were found, closes 13151 4 anni fa
gunzip.tests e8ee86250d testsuite: add tests for {ms5,shaN}sum 14 anni fa
head.tests 1476760600 bc: rename config options 6 anni fa
hexdump.tests 079487b487 hexdump: fix dup block comparison 4 anni fa
ls.mk_uni_tests c0e37b4340 testsuite: fix the mishap in the previous commit 13 anni fa
ls.tests b47b3ce1bd randomconfig fixes 13 anni fa
makedevs.device_table.txt 16635cc2e0 test, tcpsvd, tcpsvd: shrink 15 anni fa
makedevs.tests 2dbbf823ef randconfig fixes 9 anni fa
md5sum.tests b0056ea86d {md5,shaN}sum: make -c EMPTY fail 8 anni fa
mdev.tests 7c443d110d randomconfig fixes 4 anni fa
mkfs.minix.tests 0cfba07fcd fix testsuite false positive 12 anni fa
mount.testroot 0ef64bdb40 *: make GNU licensing statement forms more regular 14 anni fa
mount.tests 9df54deead testsuite/mount.tests: accomodate umount failure seen on 5.18.0 1 anno fa
nl.tests c849e72c0b nl: ensure '-b n' option displays file content 3 anni fa
od.tests a165603d24 od_bloaty: fix floating point output 7 anni fa
parse.tests 9cf89cdf84 sysctl: fix file parsing, do not require -w for VAR=VAL 7 anni fa
patch.tests 5fa5c4bde8 randomconfig fixes 4 anni fa
pidof.tests 4c58f246d4 testsuite/pidof.tests: fix false positive take 2 6 anni fa
printf.tests 7105e4afdd printf: allow 0 as a flag and allow multiple flags 2 anni fa
readlink.tests 10ad622dc2 Spelling fixes in comments, documentation, tests and examples 7 anni fa
realpath.tests 94eb1c4dc6 libbb: better coreutils compatibility for realpath 3 anni fa
rev.tests 4357569fdc rev: correct output for long input lines 3 anni fa
runtest bca4ea8b68 remove "local" bashism from a few scripts 7 anni fa
rx.tests 0ef64bdb40 *: make GNU licensing statement forms more regular 14 anni fa
sed.tests f12fb1e409 sed: fix handling of escaped delimiters in s/// replacement 2 anni fa
seq.tests 0ef64bdb40 *: make GNU licensing statement forms more regular 14 anni fa
sha1sum.tests fb0c000567 testsuite/sha1sum.tests: fix false positive failure 1 anno fa
sha256sum.tests e8ee86250d testsuite: add tests for {ms5,shaN}sum 14 anni fa
sha3sum.tests 71a090f187 sha3: fix to conform to final SHA3 padding standard, add -a BITS option 8 anni fa
sha512sum.tests e8ee86250d testsuite: add tests for {ms5,shaN}sum 14 anni fa
sort.tests 5479c435fd sort: fix sort -s -u, closes 14871 2 anni fa
start-stop-daemon.tests 307cd26e98 start-stop-daemon: explain -x + -a test 3 anni fa
sum.tests 1f27fa9838 testsuite: allow tests to work in paths containing spaces 6 anni fa
tail.tests 0851d125c3 tail: fix -c +N. Closes 4111 13 anni fa
tar.tests 8d718686f7 tar: fix testsuite 3 anni fa
tar.utf8.tar.bz2 9655f95d0f tar: handle pax-encoded utf8 filenames and link names. Closes 9406 8 anni fa
taskset.tests 0ef64bdb40 *: make GNU licensing statement forms more regular 14 anni fa
test.tests 98654b995b test: fix mishandling of "test '(' = '('" and similar 10 anni fa
testing.sh afa63b2dcd fix bashisms in testsuite/ 11 anni fa
tr.tests 0ef64bdb40 *: make GNU licensing statement forms more regular 14 anni fa
tree.tests dc068abad5 testsuite/tree.tests: fix false positive failure 1 anno fa
tsort.tests 4642cf5b38 tsort: new applet 2 anni fa
umlwrapper.sh dcb2122e85 My mount testsuite. Not automatically run at the moment, need to figure out 18 anni fa
uncompress.tests 251fc70e97 uncompress: fix buffer underrun by corrupted input 13 anni fa
unexpand.tests 002be6e821 sysctl: do report EACCES errors on write 4 anni fa
uniq.tests 0ef64bdb40 *: make GNU licensing statement forms more regular 14 anni fa
unlzma.tests 04f052c56d unlzma: fix a case where we could read before beginning of buffer 3 anni fa
unlzma_issue_1.lzma a1870f4807 unlzma: fix segfault on bad archive 6 anni fa
unlzma_issue_2.lzma a1870f4807 unlzma: fix segfault on bad archive 6 anni fa
unlzma_issue_3.lzma 04f052c56d unlzma: fix a case where we could read before beginning of buffer 3 anni fa
unzip.tests 1476760600 bc: rename config options 6 anni fa
unzip_bad_lzma_1.zip e09c426456 unlzma: fix another SEGV case 6 anni fa
unzip_bad_lzma_2.zip a36986bb80 unlzma: close another SEGV possibility 6 anni fa
uuencode.tests 328f27fe44 libbb: split decode_base64 off read_base64 13 anni fa
xargs.tests 77a51a2709 randomconfig fixes 3 anni fa
xxd.tests 0011a6bc20 xxd: add two more testcases 2 anni fa

README

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

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.