--- /dev/null
+#! /bin/sh
+
+: ${MV=mv}
+: ${MKDIR=mkdir}
+: ${RM=rm}
+: ${TOUCH=touch}
+
+dir=into-self-dir
+file=into-self-file
+
+test_failure=0
+
+$RM -f $dir $file || test_failure=1
+$MKDIR -p $dir/a/b || test_failure=1
+$TOUCH $file || test_failure=1
+
+if test $test_failure = 1; then
+ echo 'failure in testing framework'
+ exit 1
+fi
+
+fail=0
+$MV $dir $file $dir || fail=1
+# Make sure the file is gone.
+test -f $file && fail=1
+# Make sure the directory is *not* gone.
+test -d $dir/$dir/a/b || fail=1
+# Make sure the file has been moved to the right place.
+test -f $dir/$file || fail=1
+
+exit $fail