| #!/bin/sh |
| |
| |
| |
| |
|
|
| |
|
|
| |
| |
| |
| |
|
|
| |
| |
| |
| |
|
|
| |
| |
|
|
| . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src |
| print_ver_ cp mv |
|
|
| skip_if_root_ |
|
|
| reset_files() { rm -fr a b d; touch a; mkdir b d; } |
|
|
| for i in cp; do |
|
|
| |
| reset_files |
| $i a a d/ 2> out || fail=1 |
| reset_files |
| $i ./a a d/ 2>> out || fail=1 |
|
|
| |
| |
| reset_files |
| $i -a ./b b d/ 2>> out || fail=1 |
| reset_files |
| returns_ 1 $i -a ./b b b/ 2>> out || fail=1 |
|
|
| |
| reset_files |
| $i --backup=numbered a a d/ 2>> out || fail=1 |
|
|
| |
| reset_files |
| returns_ 1 $i --backup a a d/ 2>> out || fail=1 |
|
|
| cat <<EOF > exp |
| $i: warning: source file 'a' specified more than once |
| $i: warning: source file 'a' specified more than once |
| $i: warning: source directory 'b' specified more than once |
| $i: cannot copy a directory, './b', into itself, 'b/b' |
| $i: warning: source directory 'b' specified more than once |
| $i: will not overwrite just-created 'd/a' with 'a' |
| EOF |
| compare exp out || fail=1 |
| done |
|
|
| for i in mv; do |
| |
| reset_files |
| returns_ 1 $i a a d/ 2> out || fail=1 |
| returns_ 1 test -e a || fail=1 |
| reset_files |
| returns_ 1 $i ./a a d/ 2>> out || fail=1 |
| returns_ 1 test -e a || fail=1 |
|
|
| |
| |
| reset_files |
| returns_ 1 $i ./b b d/ 2>> out || fail=1 |
| returns_ 1 test -e b || fail=1 |
| reset_files |
| returns_ 1 $i --verbose ./b b b/ 2>> out || fail=1 |
| test -d b || fail=1 |
|
|
| cat <<EOF > exp |
| $i: cannot stat 'a': No such file or directory |
| $i: cannot stat 'a': No such file or directory |
| $i: cannot stat 'b': No such file or directory |
| $i: cannot move './b' to a subdirectory of itself, 'b/b' |
| $i: warning: source directory 'b' specified more than once |
| EOF |
| compare exp out || fail=1 |
| done |
|
|
| Exit $fail |
|
|