msh: aliased to hush
[oweals/busybox.git] / testsuite / runtest
index 624de8fde242fb269ae988a283ebe2bc1fc11bf3..3ff4b96dab64a3e936aa543b238d2e6cefaca1ad 100755 (executable)
@@ -1,8 +1,9 @@
 #!/bin/sh
-
 # Usage:
 # runtest [applet1] [applet2...]
 
+. ./testing.sh
+
 # Run one old-style test.
 # Tests are stored in applet/testcase shell scripts.
 # They are run using "sh -x -e applet/testcase".
@@ -108,10 +109,17 @@ fi
 # Populate a directory with links to all busybox applets
 
 LINKSDIR="$bindir/runtest-tempdir-links"
+
+# Comment this line out if you have put a different binary in $LINKSDIR
+# (say, a "standard" tool's binary) in order to run tests against it:
 rm -rf "$LINKSDIR" 2>/dev/null
-mkdir "$LINKSDIR"
+
+mkdir "$LINKSDIR" 2>/dev/null
 for i in $implemented; do
-       ln -s "$bindir/busybox" "$LINKSDIR/$i"
+       # Note: if $LINKSDIR/applet exists, we do not overwrite it.
+       # Useful if one wants to run tests against a standard utility,
+       # not an applet.
+       ln -s "$bindir/busybox" "$LINKSDIR/$i" 2>/dev/null
 done
 
 # Set up option flags so tests can be selective.
@@ -129,7 +137,7 @@ for applet in $applets; do
 
        # Is this a new-style test?
        if [ -f "$applet.tests" ]; then
-               if [ ! -h "$LINKSDIR/$applet" ]; then
+               if [ ! -e "$LINKSDIR/$applet" ]; then
                        # (avoiding bash'ism "${applet:0:4}")
                        if ! echo "$applet" | grep "^all_" >/dev/null; then
                                echo "SKIPPED: $applet (not built)"