Commit b58e4033 authored by Wayne Davison's avatar Wayne Davison

If ssh access is not enabled, use a shell function to test that

we can copy using a spawned rsync process.
parent a217c453
......@@ -10,34 +10,38 @@
. "$suitedir/rsync.fns"
if [ "x$rsync_enable_ssh_tests" != xyes ]
then
test_skipped "Skipping SSH tests because \$rsync_enable_ssh_tests is not set"
SSH="$scratchdir/pretend-ssh"
cat >"$SSH" <<'EOT'
while : ; do
case "$1" in
-*) shift ;;
localhost) shift; break ;;
*) exit 1 ;;
esac
done
$*
EOT
chmod +x "$SSH"
if test x"$rsync_enable_ssh_tests" = xyes; then
if type ssh >/dev/null ; then
SSH=ssh
fi
fi
if ! type ssh >/dev/null ; then
test_skipped "Skipping SSH tests because ssh is not in the path"
fi
if ! [ "`ssh -o'BatchMode yes' localhost echo yes`" = "yes" ]; then
if ! [ "`"$SSH" -o'BatchMode yes' localhost echo yes`" = "yes" ]; then
test_skipped "Skipping SSH tests because ssh conection to localhost not authorised"
fi
# Added by Steve Bonds Feb 2 2003
# Without this, there are no files in the $fromdir directory, so rsync has
# nothing to do.
hands_setup
echo "Using remote shell: $SSH"
runtest "ssh: basic test" 'checkit "$RSYNC -avH -e ssh --rsync-path=\"$RSYNC\" \"$fromdir/\" \"localhost:$todir\"" "$fromdir/" "$todir"'
# Create some files for rsync to copy
hands_setup
# Added by Steve Bonds Feb 2 2003
# I assumed that "F1" was intended to hold a single file for testing if
# rsync could detect a renamed file over ssh. Without this line below
# it was unset so the "mv" tried to move a parent directory into a
# subdirectory of itself. There is probably a better way of pulling out
# a sample file to rename.
F1=`ls "$todir" | head -5 | tail -1`
runtest "ssh: basic test" 'checkit "$RSYNC -avH -e \"$SSH\" --rsync-path=\"$RSYNC\" \"$fromdir/\" \"localhost:$todir\"" "$fromdir/" "$todir"'
mv "$todir/$F1" "$todir/ThisShouldGo"
mv "$todir/text" "$todir/ThisShouldGo"
runtest "ssh: renamed file" 'checkit "$RSYNC --delete -avH -e ssh --rsync-path=\"$RSYNC\" \"$fromdir/\" \"localhost:$todir\"" "$fromdir/" "$todir"'
runtest "ssh: renamed file" 'checkit "$RSYNC --delete -avH -e \"$SSH\" --rsync-path=\"$RSYNC\" \"$fromdir/\" \"localhost:$todir\"" "$fromdir/" "$todir"'
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment