| #!/bin/sh |
| |
| # Originally by VladimĂr Michl <Vladimir.Michl@hlubocky.del.cz> |
| |
| . "$suitedir/rsync.fns" |
| |
| test_symlink() { |
| is_a_link "$1" || test_fail "File $1 is not a symlink" |
| } |
| |
| test_regular() { |
| if [ ! -f "$1" ]; then |
| test_fail "File $1 is not regular file or not exists" |
| fi |
| } |
| |
| cd "$tmpdir" |
| |
| mkdir from |
| |
| mkdir "from/safe" |
| mkdir "from/unsafe" |
| |
| mkdir "from/safe/files" |
| mkdir "from/safe/links" |
| |
| touch "from/safe/files/file1" |
| touch "from/safe/files/file2" |
| touch "from/unsafe/unsafefile" |
| |
| ln -s ../files/file1 "from/safe/links/" |
| ln -s ../files/file2 "from/safe/links/" |
| ln -s ../../unsafe/unsafefile "from/safe/links/" |
| |
| echo "rsync with relative path and just -a" |
| $RSYNC -avv from/safe/ to |
| test_symlink to/links/file1 |
| test_symlink to/links/file2 |
| test_symlink to/links/unsafefile |
| |
| echo "rsync with relative path and -a --copy-links" |
| $RSYNC -avv --copy-links from/safe/ to |
| test_regular to/links/file1 |
| test_regular to/links/file2 |
| test_regular to/links/unsafefile |
| |
| echo "rsync with relative path and --copy-unsafe-links" |
| $RSYNC -avv --copy-unsafe-links from/safe/ to |
| test_symlink to/links/file1 |
| test_symlink to/links/file2 |
| test_regular to/links/unsafefile |
| |
| rm -rf to |
| echo "rsync with relative2 path" |
| (cd from; $RSYNC -avv --copy-unsafe-links safe/ ../to) |
| test_symlink to/links/file1 |
| test_symlink to/links/file2 |
| test_regular to/links/unsafefile |
| |
| rm -rf to |
| echo "rsync with absolute path" |
| $RSYNC -avv --copy-unsafe-links `pwd`/from/safe/ to |
| test_symlink to/links/file1 |
| test_symlink to/links/file2 |
| test_regular to/links/unsafefile |