diff options
author | Eric Andersen | 2004-04-06 11:10:30 +0000 |
---|---|---|
committer | Eric Andersen | 2004-04-06 11:10:30 +0000 |
commit | 650fe63467e693990cf357c51b74db3278088a56 (patch) | |
tree | 660b1fb0e4d7f99802a85cdd00166fafbf3132dc /testsuite | |
parent | 39396b95fc7c46bfa29ec576357fb7f8e755762c (diff) | |
download | busybox-650fe63467e693990cf357c51b74db3278088a56.zip busybox-650fe63467e693990cf357c51b74db3278088a56.tar.gz |
Kill off the old 'tests' stuff. Write a ton of new tests for the
'testsuite' dir. Fix a bunch of broken tests. Fix the testsuite
'runtest' script so it actually reports all failures and provides
meaningful feedback.
-Erik
Diffstat (limited to 'testsuite')
71 files changed, 316 insertions, 50 deletions
diff --git a/testsuite/basename/basename-works b/testsuite/basename/basename-works new file mode 100644 index 0000000..38907d4 --- /dev/null +++ b/testsuite/basename/basename-works @@ -0,0 +1,2 @@ +test x$(basename $(pwd)) = x$(busybox basename $(pwd)) + diff --git a/testsuite/cmp/cmp-detects-difference b/testsuite/cmp/cmp-detects-difference index aa07444..b9bb628 100644 --- a/testsuite/cmp/cmp-detects-difference +++ b/testsuite/cmp/cmp-detects-difference @@ -1,3 +1,9 @@ echo foo >foo echo bar >bar -! busybox cmp -s foo bar +set +e +busybox cmp -s foo bar +if [ $? != 0 ] ; then + exit 0; +fi + +exit 1; diff --git a/testsuite/cp/cp-a-files-to-dir b/testsuite/cp/cp-a-files-to-dir index 8fb3c20..39f8f81 100644 --- a/testsuite/cp/cp-a-files-to-dir +++ b/testsuite/cp/cp-a-files-to-dir @@ -8,7 +8,7 @@ busybox cp -a file1 file2 link1 dir1 there test -f there/file1 test -f there/file2 test ! -s there/dir1/file3 -test -l there/link1 -test `readlink there/link1` = "file2" -test ! file3 -ot there/dir1/file3 -test ! file3 -nt there/dir1/file3 +test -L there/link1 +test xfile2 = x`readlink there/link1` +test ! dir1/file3 -ot there/dir1/file3 +test ! dir1/file3 -nt there/dir1/file3 diff --git a/testsuite/cp/cp-a-preserves-links b/testsuite/cp/cp-a-preserves-links index aae8313..0c0cd96 100644 --- a/testsuite/cp/cp-a-preserves-links +++ b/testsuite/cp/cp-a-preserves-links @@ -2,4 +2,4 @@ touch foo ln -s foo bar busybox cp -a bar baz test -L baz -test `readlink baz` = "foo" +test xfoo = x`readlink baz` diff --git a/testsuite/cp/cp-d-files-to-dir b/testsuite/cp/cp-d-files-to-dir index 9407ead..9571a56 100644 --- a/testsuite/cp/cp-d-files-to-dir +++ b/testsuite/cp/cp-d-files-to-dir @@ -7,5 +7,5 @@ busybox cp -d file1 file2 file3 link1 there test -f there/file1 test -f there/file2 test ! -s there/file3 -test -l there/link1 -test `readlink there/link1` = "file2" +test -L there/link1 +test xfile2 = x`readlink there/link1` diff --git a/testsuite/cp/cp-does-not-copy-unreadable-file b/testsuite/cp/cp-does-not-copy-unreadable-file index 68c5767..ce11bfa 100644 --- a/testsuite/cp/cp-does-not-copy-unreadable-file +++ b/testsuite/cp/cp-does-not-copy-unreadable-file @@ -1,4 +1,6 @@ touch foo chmod a-r foo +set +e busybox cp foo bar +set -e test ! -f bar diff --git a/testsuite/cp/cp-preserves-links b/testsuite/cp/cp-preserves-links index d3223b1..301dc5f 100644 --- a/testsuite/cp/cp-preserves-links +++ b/testsuite/cp/cp-preserves-links @@ -2,4 +2,4 @@ touch foo ln -s foo bar busybox cp -d bar baz test -L baz -test `readlink baz` = "foo" +test xfoo = x`readlink baz` diff --git a/testsuite/date/date-R-works b/testsuite/date/date-R-works new file mode 100644 index 0000000..ec3a067 --- /dev/null +++ b/testsuite/date/date-R-works @@ -0,0 +1,2 @@ +test x"`date -R`" = x"`busybox date -R`" + diff --git a/testsuite/date/date-format-works b/testsuite/date/date-format-works new file mode 100644 index 0000000..f28d06c --- /dev/null +++ b/testsuite/date/date-format-works @@ -0,0 +1 @@ +test x"`date +%d/%m/%y`" = x"`busybox date +%d/%m/%y`" diff --git a/testsuite/date/date-u-works b/testsuite/date/date-u-works new file mode 100644 index 0000000..7d9902a --- /dev/null +++ b/testsuite/date/date-u-works @@ -0,0 +1,2 @@ +test x"`date -u`" = x"`busybox date -u`" + diff --git a/testsuite/date/date-works b/testsuite/date/date-works new file mode 100644 index 0000000..2f6dd1e --- /dev/null +++ b/testsuite/date/date-works @@ -0,0 +1,2 @@ +test x"`date`" = x"`busybox date`" + diff --git a/testsuite/dirname/dirname-works b/testsuite/dirname/dirname-works new file mode 100644 index 0000000..f339c8f --- /dev/null +++ b/testsuite/dirname/dirname-works @@ -0,0 +1,2 @@ +test x$(dirname $(pwd)) = x$(busybox dirname $(pwd)) + diff --git a/testsuite/du/du-h-works b/testsuite/du/du-h-works new file mode 100644 index 0000000..8ec5d4c --- /dev/null +++ b/testsuite/du/du-h-works @@ -0,0 +1,3 @@ +du -h .. > logfile.gnu +busybox du -h .. > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/du/du-k-works b/testsuite/du/du-k-works new file mode 100644 index 0000000..43b119c --- /dev/null +++ b/testsuite/du/du-k-works @@ -0,0 +1,3 @@ +du -k .. > logfile.gnu +busybox du -k .. > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/du/du-l-works b/testsuite/du/du-l-works new file mode 100644 index 0000000..c5d4398 --- /dev/null +++ b/testsuite/du/du-l-works @@ -0,0 +1,3 @@ +du -l .. > logfile.gnu +busybox du -l .. > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/du/du-m-works b/testsuite/du/du-m-works new file mode 100644 index 0000000..e3e2d3a --- /dev/null +++ b/testsuite/du/du-m-works @@ -0,0 +1,3 @@ +du -m .. > logfile.gnu +busybox du -m .. > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/du/du-s-works b/testsuite/du/du-s-works new file mode 100644 index 0000000..16b0a3e --- /dev/null +++ b/testsuite/du/du-s-works @@ -0,0 +1,3 @@ +du -s .. > logfile.gnu +busybox du -s .. > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/du/du-works b/testsuite/du/du-works new file mode 100644 index 0000000..87ba630 --- /dev/null +++ b/testsuite/du/du-works @@ -0,0 +1,3 @@ +du .. > logfile.gnu +busybox du .. > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/echo/echo-prints-argument b/testsuite/echo/echo-prints-argument index 98779db..479dac8 100644 --- a/testsuite/echo/echo-prints-argument +++ b/testsuite/echo/echo-prints-argument @@ -1 +1 @@ -test `busybox echo fubar` = fubar +test xfubar = x`busybox echo fubar` diff --git a/testsuite/expr/expr-works b/testsuite/expr/expr-works new file mode 100644 index 0000000..af49ac4 --- /dev/null +++ b/testsuite/expr/expr-works @@ -0,0 +1,59 @@ +# busybox expr +busybox expr 1 \| 1 +busybox expr 1 \| 0 +busybox expr 0 \| 1 +busybox expr 1 \& 1 +busybox expr 0 \< 1 +busybox expr 1 \> 0 +busybox expr 0 \<= 1 +busybox expr 1 \<= 1 +busybox expr 1 \>= 0 +busybox expr 1 \>= 1 +busybox expr 1 + 2 +busybox expr 2 - 1 +busybox expr 2 \* 3 +busybox expr 12 / 2 +busybox expr 12 % 5 + + +set +e +busybox expr 0 \| 0 +if [ $? != 1 ] ; then + exit 1; +fi; + +busybox expr 1 \& 0 +if [ $? != 1 ] ; then + exit 1; +fi; + +busybox expr 0 \& 1 +if [ $? != 1 ] ; then + exit 1; +fi; + +busybox expr 0 \& 0 +if [ $? != 1 ] ; then + exit 1; +fi; + +busybox expr 1 \< 0 +if [ $? != 1 ] ; then + exit 1; +fi; + +busybox expr 0 \> 1 +if [ $? != 1 ] ; then + exit 1; +fi; + +busybox expr 1 \<= 0 +if [ $? != 1 ] ; then + exit 1; +fi; + +busybox expr 0 \>= 1 +if [ $? != 1 ] ; then + exit 1; +fi; + diff --git a/testsuite/grep/grep-matches-NUL b/testsuite/grep/grep-matches-NUL index 597d22c..082bd87 100644 --- a/testsuite/grep/grep-matches-NUL +++ b/testsuite/grep/grep-matches-NUL @@ -1,2 +1,8 @@ -# XFAIL +set +e echo -e '\0' | busybox grep . +if [ $? != 0 ] ; then + exit 0; +fi + +exit 1; + diff --git a/testsuite/head/head-n-works b/testsuite/head/head-n-works new file mode 100644 index 0000000..121a1fa --- /dev/null +++ b/testsuite/head/head-n-works @@ -0,0 +1,3 @@ +head -n 2 ../README > logfile.gnu +busybox head -n 2 ../README > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/head/head-works b/testsuite/head/head-works new file mode 100644 index 0000000..ea10ade --- /dev/null +++ b/testsuite/head/head-works @@ -0,0 +1,3 @@ +head ../README > logfile.gnu +busybox head ../README > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/hostid/hostid-works b/testsuite/hostid/hostid-works new file mode 100644 index 0000000..e85698e --- /dev/null +++ b/testsuite/hostid/hostid-works @@ -0,0 +1,2 @@ +test x$(hostid) = x$(busybox hostid) + diff --git a/testsuite/hostname/hostname-d-works b/testsuite/hostname/hostname-d-works new file mode 100644 index 0000000..a9aeb92 --- /dev/null +++ b/testsuite/hostname/hostname-d-works @@ -0,0 +1,2 @@ +test x$(hostname -d) = x$(busybox hostname -d) + diff --git a/testsuite/hostname/hostname-i-works b/testsuite/hostname/hostname-i-works new file mode 100644 index 0000000..68a3e67 --- /dev/null +++ b/testsuite/hostname/hostname-i-works @@ -0,0 +1,2 @@ +test x$(hostname -i) = x$(busybox hostname -i) + diff --git a/testsuite/hostname/hostname-s-works b/testsuite/hostname/hostname-s-works new file mode 100644 index 0000000..172b944 --- /dev/null +++ b/testsuite/hostname/hostname-s-works @@ -0,0 +1 @@ +test x$(hostname -s) = x$(busybox hostname -s) diff --git a/testsuite/hostname/hostname-works b/testsuite/hostname/hostname-works new file mode 100644 index 0000000..f51a406 --- /dev/null +++ b/testsuite/hostname/hostname-works @@ -0,0 +1 @@ +test x$(hostname) = x$(busybox hostname) diff --git a/testsuite/id/id-g-works b/testsuite/id/id-g-works new file mode 100644 index 0000000..671fc53 --- /dev/null +++ b/testsuite/id/id-g-works @@ -0,0 +1 @@ +test x$(id -g) = x$(busybox id -g) diff --git a/testsuite/id/id-u-works b/testsuite/id/id-u-works new file mode 100644 index 0000000..2358cb0 --- /dev/null +++ b/testsuite/id/id-u-works @@ -0,0 +1 @@ +test x$(id -u) = x$(busybox id -u) diff --git a/testsuite/id/id-un-works b/testsuite/id/id-un-works new file mode 100644 index 0000000..db390e7 --- /dev/null +++ b/testsuite/id/id-un-works @@ -0,0 +1 @@ +test x$(id -un) = x$(busybox id -un) diff --git a/testsuite/id/id-ur-works b/testsuite/id/id-ur-works new file mode 100644 index 0000000..6b0fcb0 --- /dev/null +++ b/testsuite/id/id-ur-works @@ -0,0 +1 @@ +test x$(id -ur) = x$(busybox id -ur) diff --git a/testsuite/ln/ln-creates-hard-links b/testsuite/ln/ln-creates-hard-links new file mode 100644 index 0000000..2f6e23f --- /dev/null +++ b/testsuite/ln/ln-creates-hard-links @@ -0,0 +1,4 @@ +echo file number one > file1 +busybox ln file1 link1 +test -f file1 +test -f link1 diff --git a/testsuite/ln/ln-creates-soft-links b/testsuite/ln/ln-creates-soft-links new file mode 100644 index 0000000..e875e4c --- /dev/null +++ b/testsuite/ln/ln-creates-soft-links @@ -0,0 +1,4 @@ +echo file number one > file1 +busybox ln -s file1 link1 +test -L link1 +test xfile1 = x`readlink link1` diff --git a/testsuite/ln/ln-force-creates-hard-links b/testsuite/ln/ln-force-creates-hard-links new file mode 100644 index 0000000..c96b7d6 --- /dev/null +++ b/testsuite/ln/ln-force-creates-hard-links @@ -0,0 +1,5 @@ +echo file number one > file1 +echo file number two > link1 +busybox ln -f file1 link1 +test -f file1 +test -f link1 diff --git a/testsuite/ln/ln-force-creates-soft-links b/testsuite/ln/ln-force-creates-soft-links new file mode 100644 index 0000000..cab8d1d --- /dev/null +++ b/testsuite/ln/ln-force-creates-soft-links @@ -0,0 +1,5 @@ +echo file number one > file1 +echo file number two > link1 +busybox ln -f -s file1 link1 +test -L link1 +test xfile1 = x`readlink link1` diff --git a/testsuite/ln/ln-preserves-hard-links b/testsuite/ln/ln-preserves-hard-links new file mode 100644 index 0000000..47fb989 --- /dev/null +++ b/testsuite/ln/ln-preserves-hard-links @@ -0,0 +1,8 @@ +echo file number one > file1 +echo file number two > link1 +set +e +busybox ln file1 link1 +if [ $? != 0 ] ; then + exit 0; +fi +exit 1; diff --git a/testsuite/ln/ln-preserves-soft-links b/testsuite/ln/ln-preserves-soft-links new file mode 100644 index 0000000..a8123ec --- /dev/null +++ b/testsuite/ln/ln-preserves-soft-links @@ -0,0 +1,9 @@ +echo file number one > file1 +echo file number two > link1 +set +e +busybox ln -s file1 link1 +if [ $? != 0 ] ; then + exit 0; +fi +exit 1; + diff --git a/testsuite/ls/ls-1-works b/testsuite/ls/ls-1-works new file mode 100644 index 0000000..8651ecd --- /dev/null +++ b/testsuite/ls/ls-1-works @@ -0,0 +1,3 @@ +ls -1 .. > logfile.gnu +busybox ls -1 .. > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/ls/ls-h-works b/testsuite/ls/ls-h-works new file mode 100644 index 0000000..f54a7be --- /dev/null +++ b/testsuite/ls/ls-h-works @@ -0,0 +1,3 @@ +ls -h .. > logfile.gnu +busybox ls -h .. > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/ls/ls-l-works b/testsuite/ls/ls-l-works new file mode 100644 index 0000000..50e4459 --- /dev/null +++ b/testsuite/ls/ls-l-works @@ -0,0 +1,3 @@ +ls -l .. > logfile.gnu +busybox ls -l .. > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/ls/ls-s-works b/testsuite/ls/ls-s-works new file mode 100644 index 0000000..98a612d --- /dev/null +++ b/testsuite/ls/ls-s-works @@ -0,0 +1,3 @@ +ls -1s .. > logfile.gnu +busybox ls -1s .. > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/mv/mv-files-to-dir b/testsuite/mv/mv-files-to-dir new file mode 100644 index 0000000..c8eaba8 --- /dev/null +++ b/testsuite/mv/mv-files-to-dir @@ -0,0 +1,16 @@ +echo file number one > file1 +echo file number two > file2 +ln -s file2 link1 +mkdir dir1 +touch --date='Sat Jan 29 21:24:08 PST 2000' dir1/file3 +mkdir there +busybox mv file1 file2 link1 dir1 there +test -f there/file1 +test -f there/file2 +test -f there/dir1/file3 +test -L there/link1 +test xfile2 = x`readlink there/link1` +test ! -e file1 +test ! -e file2 +test ! -e link1 +test ! -e dir1/file3 diff --git a/testsuite/mv/mv-follows-links b/testsuite/mv/mv-follows-links new file mode 100644 index 0000000..1fb355b --- /dev/null +++ b/testsuite/mv/mv-follows-links @@ -0,0 +1,4 @@ +touch foo +ln -s foo bar +busybox mv bar baz +test -f baz diff --git a/testsuite/mv/mv-moves-empty-file b/testsuite/mv/mv-moves-empty-file new file mode 100644 index 0000000..48afca4 --- /dev/null +++ b/testsuite/mv/mv-moves-empty-file @@ -0,0 +1,4 @@ +touch foo +busybox mv foo bar +test ! -e foo +test -f bar diff --git a/testsuite/mv/mv-moves-hardlinks b/testsuite/mv/mv-moves-hardlinks new file mode 100644 index 0000000..eaa8215 --- /dev/null +++ b/testsuite/mv/mv-moves-hardlinks @@ -0,0 +1,4 @@ +touch foo +ln foo bar +busybox mv bar baz +test ! -f bar -a -f baz diff --git a/testsuite/mv/mv-moves-large-file b/testsuite/mv/mv-moves-large-file new file mode 100644 index 0000000..77d088f --- /dev/null +++ b/testsuite/mv/mv-moves-large-file @@ -0,0 +1,4 @@ +dd if=/dev/zero of=foo seek=10k count=1 2>/dev/null +busybox mv foo bar +test ! -e foo +test -f bar diff --git a/testsuite/mv/mv-moves-small-file b/testsuite/mv/mv-moves-small-file new file mode 100644 index 0000000..065c7f1 --- /dev/null +++ b/testsuite/mv/mv-moves-small-file @@ -0,0 +1,4 @@ +echo I WANT > foo +busybox mv foo bar +test ! -e foo +test -f bar diff --git a/testsuite/mv/mv-moves-symlinks b/testsuite/mv/mv-moves-symlinks new file mode 100644 index 0000000..c413af0 --- /dev/null +++ b/testsuite/mv/mv-moves-symlinks @@ -0,0 +1,6 @@ +touch foo +ln -s foo bar +busybox mv bar baz +test -f foo +test ! -e bar +test -L baz diff --git a/testsuite/mv/mv-moves-unreadable-files b/testsuite/mv/mv-moves-unreadable-files new file mode 100644 index 0000000..bc9c313 --- /dev/null +++ b/testsuite/mv/mv-moves-unreadable-files @@ -0,0 +1,5 @@ +touch foo +chmod a-r foo +busybox mv foo bar +test ! -e foo +test -f bar diff --git a/testsuite/mv/mv-preserves-hard-links b/testsuite/mv/mv-preserves-hard-links new file mode 100644 index 0000000..b3ba3aa --- /dev/null +++ b/testsuite/mv/mv-preserves-hard-links @@ -0,0 +1,6 @@ +# FEATURE: CONFIG_FEATURE_PRESERVE_HARDLINKS +touch foo +ln foo bar +mkdir baz +busybox mv foo bar baz +test baz/foo -ef baz/bar diff --git a/testsuite/mv/mv-preserves-links b/testsuite/mv/mv-preserves-links new file mode 100644 index 0000000..ea565d2 --- /dev/null +++ b/testsuite/mv/mv-preserves-links @@ -0,0 +1,5 @@ +touch foo +ln -s foo bar +busybox mv bar baz +test -L baz +test xfoo = x`readlink baz` diff --git a/testsuite/mv/mv-refuses-mv-dir-to-subdir b/testsuite/mv/mv-refuses-mv-dir-to-subdir new file mode 100644 index 0000000..7c572c4 --- /dev/null +++ b/testsuite/mv/mv-refuses-mv-dir-to-subdir @@ -0,0 +1,23 @@ +echo file number one > file1 +echo file number two > file2 +ln -s file2 link1 +mkdir dir1 +touch --date='Sat Jan 29 21:24:08 PST 2000' dir1/file3 +mkdir there +busybox mv file1 file2 link1 dir1 there +test -f there/file1 +test -f there/file2 +test -f there/dir1/file3 +test -L there/link1 +test xfile2 = x`readlink there/link1` +test ! -e file1 +test ! -e file2 +test ! -e link1 +test ! -e dir1/file3 +set +e +busybox mv there there/dir1 +if [ $? != 0 ] ; then + exit 0; +fi + +exit 1; diff --git a/testsuite/mv/mv-removes-source-file b/testsuite/mv/mv-removes-source-file new file mode 100644 index 0000000..48afca4 --- /dev/null +++ b/testsuite/mv/mv-removes-source-file @@ -0,0 +1,4 @@ +touch foo +busybox mv foo bar +test ! -e foo +test -f bar diff --git a/testsuite/pwd/pwd-prints-working-directory b/testsuite/pwd/pwd-prints-working-directory index 7bea107..8575347 100644 --- a/testsuite/pwd/pwd-prints-working-directory +++ b/testsuite/pwd/pwd-prints-working-directory @@ -1 +1 @@ -test `pwd` = `busybox pwd` +test $(pwd) = $(busybox pwd) diff --git a/testsuite/runtest b/testsuite/runtest index f57f464..89aba39 100755 --- a/testsuite/runtest +++ b/testsuite/runtest @@ -2,37 +2,19 @@ PATH=$(dirname $(pwd)):$PATH -show_result () -{ - local resolution=$1 - local testcase=$2 - local status=0 - - if [ $resolution = XPASS -o $resolution = FAIL ]; then - status=1 - fi - - if [ "$verbose" -o $status -eq 1 ]; then - echo "$resolution: $testcase" - fi - - return $status -} - run_applet_testcase () { local applet=$1 local testcase=$2 local status=0 - local X= local RES= local uc_applet=$(echo $applet | tr a-z A-Z) local testname=$(basename $testcase) if grep -q "^# CONFIG_${uc_applet} is not set$" ../.config; then - show_result UNTESTED $testname + echo UNTESTED: $testname return 0 fi @@ -40,15 +22,11 @@ run_applet_testcase () local feature=`sed -ne 's/^# FEATURE: //p' $testcase` if grep -q "^# ${feature} is not set$" ../.config; then - show_result UNTESTED $testname + echo UNTESTED: $testname return 0 fi fi - if grep -q "^# XFAIL$" $testcase; then - X=X - fi - rm -rf tmp mkdir -p tmp pushd tmp >/dev/null @@ -56,14 +34,14 @@ run_applet_testcase () sh -x -e ../$testcase >.logfile.txt 2>&1 if [ $? != 0 ] ; then - show_result ${X}FAIL $testname - if [ "$verbose" == 1 ]; then + echo FAIL: $testname + if [ "$verbose" = 1 ]; then cat .logfile.txt - exit 1; + #exit 1; fi; status=$? else - show_result ${X}PASS $testname + echo PASS: $testname rm -f .logfile.txt status=$? fi diff --git a/testsuite/sed/sed-append-next-line b/testsuite/sed/sed-append-next-line index e7f72f4..0621a31 100644 --- a/testsuite/sed/sed-append-next-line +++ b/testsuite/sed/sed-append-next-line @@ -1,10 +1,11 @@ -# XFAIL # This will fail if CONFIG_FEATURE_SED_GNU_COMPATABILITY is defined busybox sed 'N;p'>output <<EOF a b c EOF + +set +e cmp -s output - <<EOF a b @@ -12,3 +13,7 @@ a b c EOF +if [ $? != 0 ] ; then + exit 0; +fi +exit 1; diff --git a/testsuite/sort/sort-n-works b/testsuite/sort/sort-n-works new file mode 100644 index 0000000..c9b63a3 --- /dev/null +++ b/testsuite/sort/sort-n-works @@ -0,0 +1,3 @@ +sort -n ../README > logfile.gnu +busybox sort -n ../README > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/sort/sort-r-works b/testsuite/sort/sort-r-works new file mode 100644 index 0000000..6422ba9 --- /dev/null +++ b/testsuite/sort/sort-r-works @@ -0,0 +1,3 @@ +sort -r ../README > logfile.gnu +busybox sort -r ../README > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/sort/sort-works b/testsuite/sort/sort-works new file mode 100644 index 0000000..0110aa0 --- /dev/null +++ b/testsuite/sort/sort-works @@ -0,0 +1,3 @@ +sort ../README > logfile.gnu +busybox sort ../README > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/strings/strings-works-like-GNU b/testsuite/strings/strings-works-like-GNU index 02e4231..2d64710 100644 --- a/testsuite/strings/strings-works-like-GNU +++ b/testsuite/strings/strings-works-like-GNU @@ -1,8 +1,9 @@ rm -f foo bar strings -af ../../busybox > foo busybox strings -af ../../busybox > bar +set +e test ! -f foo -a -f bar if [ $? = 0 ] ; then - diff -q foo bar -fi; - + set -e + diff -q foo bar +fi diff --git a/testsuite/tail/tail-n-works b/testsuite/tail/tail-n-works new file mode 100644 index 0000000..321db7f --- /dev/null +++ b/testsuite/tail/tail-n-works @@ -0,0 +1,3 @@ +tail -n 2 ../README > logfile.gnu +busybox tail -n 2 ../README > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/tail/tail-works b/testsuite/tail/tail-works new file mode 100644 index 0000000..321db7f --- /dev/null +++ b/testsuite/tail/tail-works @@ -0,0 +1,3 @@ +tail -n 2 ../README > logfile.gnu +busybox tail -n 2 ../README > logfile.bb +cmp logfile.gnu logfile.bb diff --git a/testsuite/tar/tar-extracts-multiple-files b/testsuite/tar/tar-extracts-multiple-files index e26901e..46701dc 100644 --- a/testsuite/tar/tar-extracts-multiple-files +++ b/testsuite/tar/tar-extracts-multiple-files @@ -1,5 +1,6 @@ touch foo bar tar cf foo.tar foo bar rm foo bar -busybox tar xf foo.tar +busybox tar -xf foo.tar test -f foo -a -f bar +exit 99; diff --git a/testsuite/tr/tr-d-works b/testsuite/tr/tr-d-works new file mode 100644 index 0000000..d939e8b --- /dev/null +++ b/testsuite/tr/tr-d-works @@ -0,0 +1,4 @@ +echo testing | tr -d aeiou > logfile.gnu +echo testing | busybox tr -d aeiou > logfile.bb + +cmp logfile.gnu logfile.bb diff --git a/testsuite/tr/tr-non-gnu b/testsuite/tr/tr-non-gnu new file mode 100644 index 0000000..ffa6951 --- /dev/null +++ b/testsuite/tr/tr-non-gnu @@ -0,0 +1 @@ +echo fdhrnzvfu bffvsentr | busybox tr '[a-z]' '[n-z][a-m]' diff --git a/testsuite/tr/tr-works b/testsuite/tr/tr-works new file mode 100644 index 0000000..8753a3f --- /dev/null +++ b/testsuite/tr/tr-works @@ -0,0 +1,9 @@ +echo "cbaab" | tr abc zyx > logfile.gnu +echo "TESTING A B C" | tr [A-Z] [a-z] >> logfile.gnu +echo abc[] | tr a[b AXB >> logfile.gnu + +echo "cbaab" | busybox tr abc zyx > logfile.bb +echo "TESTING A B C" | busybox tr [A-Z] [a-z] >> logfile.bb +echo abc[] | busybox tr a[b AXB >> logfile.bb + +cmp logfile.gnu logfile.bb diff --git a/testsuite/uptime/uptime-works b/testsuite/uptime/uptime-works new file mode 100644 index 0000000..80e5787 --- /dev/null +++ b/testsuite/uptime/uptime-works @@ -0,0 +1,2 @@ +busybox uptime + diff --git a/testsuite/uuencode/uuencode-sets-standard-input-mode-correctly b/testsuite/uuencode/uuencode-sets-standard-input-mode-correctly index 0ccf23b..1a48a66 100644 --- a/testsuite/uuencode/uuencode-sets-standard-input-mode-correctly +++ b/testsuite/uuencode/uuencode-sets-standard-input-mode-correctly @@ -1,6 +1,4 @@ saved_umask=$(umask) umask 0 busybox uuencode foo </dev/null | head -n 1 | grep -q 666 -status=$? umask $saved_umask -return $status diff --git a/testsuite/which/which-uses-default-path b/testsuite/which/which-uses-default-path index f612aeb..63ceb9f 100644 --- a/testsuite/which/which-uses-default-path +++ b/testsuite/which/which-uses-default-path @@ -2,6 +2,3 @@ BUSYBOX=$(type -p busybox) SAVED_PATH=$PATH unset PATH $BUSYBOX which ls -STATUS=$? -export PATH=$SAVED_PATH -return $STATUS diff --git a/testsuite/xargs/xargs-works b/testsuite/xargs/xargs-works new file mode 100644 index 0000000..4ad5818 --- /dev/null +++ b/testsuite/xargs/xargs-works @@ -0,0 +1,3 @@ +find -name \*works -type f | xargs md5sum > logfile.gnu +find -name \*works -type f | busybox xargs md5sum > logfile.bb +diff -u logfile.gnu logfile.bb |