# testcases # # This file should be filled with test cases to test applets that: # # - can somehow produce output (we can't test sync or sleep) # - have a GNU (or other) counterpart # - are not interactive (don't require a ^C or anything) # - don't require extensive setup or cleanup (a litte setup is fine) # - don't have huge and possibly damaging effects (fsck, swapoff) # # If possible, a test case should be made that tests each option the applet # supports. When a new option is added, a new test case should be written for # it. When somebody reports a bug with a testcase, that testcase should be # added here as well. # # Some other guidelines to follow: # # - please try to keep applets alphabetized, it will make life easier # - use the file tester.sh or testcases when you need to do a non-destructive # test on a file (i.e. cat, md5sum) # - try to make the applet you're testing the first thing on the line (this # not always possible) # - (???) if you have to create a temporary file, call it TMPFILE # ar # basename basename `pwd` # cat cat tester.sh # chmod # chown # chgrp # chroot # chvt - can't be tested here # clear - can't be tested here # cmp # cp # mv # cut echo "1234" | cut -c1 echo "f1 f2" | cut -f2 # date date date -R date -u date +%d/%m/%y # dc - needs an input file # dd # deallocvt # df df df . df -k df -h df -m # dirname dirname `pwd` # dmesg (XXX: change the silly cmd business in the source) dmesg dmesg -n 8 dmesg -s 512 # I really don't want to do this next one #dmesg -c # dos2unix - needs an input file # dpkg # dpkg_deb # du du du -s du -l du -k du -h du -m # dumpkmap - no counterprt? # dutmp - no counterprt? # echo echo "foo bar baz" echo -n "no newline" # expr expr 1 \| 1 expr 1 \| 0 expr 0 \| 1 expr 0 \| 0 expr 1 \& 1 expr 1 \& 0 expr 0 \& 1 expr 0 \& 0 expr 0 \< 1 expr 1 \< 0 expr 1 \> 0 expr 0 \> 1 expr 0 \<= 1 expr 1 \<= 0 expr 1 \<= 1 expr 1 \>= 0 expr 0 \>= 1 expr 1 \>= 1 expr 1 + 2 expr 2 - 1 expr 2 \* 3 expr 12 / 2 expr 12 % 5 # somebody else can do all the string stuff # fbset - can't be tested here # fdflush # find find . # free free # freeramdisk # fsck.minix - won't test # getopt # grep # gunzip # gzip # halt # head head tester.sh head -n 2 tester.sh # hostid hostid # hostname hostname hostname -s hostname -i hostname -d # not going to do this next one #hostname -F # id id id -u id -g id -ur id -un # ifconfig #ifconfig #ifconfig eth0 #ifconfig lo # init - won't test # insmod - won't test # kill #kill -l # not going to do any more # length # ln # loadacm # loadfont # loadkmap # logger # logname # ls ls ls -l ls -s ls -h ls -1 # lsmod lsmod # makedevs # md5sum md5sum tester.sh # mkdir # mkfifo # mkfs.minix - won't test # mknod # mkswap - won't test # mktemp # more - can't test: interactive # mount mount # not going to test any more # mt # nc # nfsmount # nslookup # ping - can't test: interactive (needs ^C) # pivot_root # poweroff - won't test # printf # ps - there's lotsa differences between busybox ps and any other ps # pwd pwd # rdate - won't test # readlink ln -sf tester.sh LINKFILE readlink LINKFILE rm -f LINKFILE # reboot - won't test # renice - won't test # reset - can't test: no output # rm # rmdir # rmmod - won't test: dangerous # route # rpmunpack # sed - we can do some one-liners here; probably needs it's own input file # setkeycodes # sh - this should probably have it's own testcase or input file # sleep - can't test: produces no output # sort # stty # swapon - won't test: dangerous # swapoff - won't test: dangerous # sync - can't test: no output # syslogd # tail tail tester.sh tail -n 2 tester.sh # tar # tee # telnet # test # tftp # touch # tr true ; echo $? false ; echo $? # tty # umount # uname # uniq # unix2dos # update uptime # usleep # uudecode # uuencode # watchdog # wc wc tester.sh wc -c tester.sh wc -w tester.sh wc -l tester.sh wc -L tester.sh # wget # which which ls # whoami whoami # xargs # (for some reason, the > redirection isn't working) #ls -1 > TMPFILE #xargs md5sum < TMPFILE #rm -f TMPFILE # yes - can't test: interactive (needs ^C)