diff options
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/mv/into-self-3 | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/tests/mv/into-self-3 b/tests/mv/into-self-3 new file mode 100755 index 000000000..1374945f6 --- /dev/null +++ b/tests/mv/into-self-3 @@ -0,0 +1,48 @@ +#!/bin/sh +# move a directory into itself, with a twist + +: ${MV=mv} +: ${RM=rm} + +if test "$VERBOSE" = yes; then + set -x + $MV --version +fi + +dir1=is3-dir1 +dir2=is3-dir2 + +framework_failure=0 +$RM -rf $dir1 $dir2 || framework_failure=1 +mkdir $dir1 $dir2 || framework_failure=1 + +if test $framework_failure = 1; then + echo 'failure in testing framework' + exit 1 +fi + +# Make sure we get English translations. +LANGUAGE=C +export LANGUAGE +LC_ALL=C +export LC_ALL +LANG=C +export LANG + +# This mv command should exit nonzero. +$MV $dir1 $dir2 $dir2 > out 2>&1 && fail=1 + +sed \ + -e "s,$MV:,XXX:,g" \ + -e "s,$dir2,ZZZ,g" \ + out > out2 + +cat > exp <<\EOF +XXX: cannot move `ZZZ' to a subdirectory of itself, `ZZZ/ZZZ' +EOF + +cmp out2 exp || fail=1 + +$RM -fr out out2 exp $dir1 $dir2 + +exit $fail |