X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/9ac3591366ae0048ba0fb3bba86b20851c1bfd61..f31514adb780899d886df63edd79ac3d48363f2f:/testsuite/devices.test diff --git a/testsuite/devices.test b/testsuite/devices.test index 50fecec0..1c34477f 100644 --- a/testsuite/devices.test +++ b/testsuite/devices.test @@ -12,19 +12,6 @@ chkfile="$scratchdir/rsync.chk" outfile="$scratchdir/rsync.out" -# This is only called if rsync was run with -v or -vv (not -i alone). -# Higher levels of -v would require more filtering. -filter_outfile() { - sed -e '/^building file list /d' \ - -e '/^created directory /d' \ - -e '/^done$/d' \ - -e '/ --whole-file$/d' \ - -e '/^total: /d' \ - -e '/^$/,$d' \ - <"$outfile" >"$outfile.new" - mv "$outfile.new" "$outfile" -} - # Build some hardlinks case `id -u` in @@ -55,14 +42,14 @@ touch -r "$fromdir/block" "$fromdir/block2" $RSYNC -ai "$fromdir/block" "$todir/block2" \ | tee "$outfile" cat <"$chkfile" -cD++++++ block +cD+++++++++ block EOT diff $diffopt "$chkfile" "$outfile" || test_fail "test 1 failed" $RSYNC -ai "$fromdir/block2" "$todir/block" \ | tee "$outfile" cat <"$chkfile" -cD++++++ block2 +cD+++++++++ block2 EOT diff $diffopt "$chkfile" "$outfile" || test_fail "test 2 failed" @@ -71,7 +58,7 @@ sleep 1 $RSYNC -Di "$fromdir/block3" "$todir/block" \ | tee "$outfile" cat <"$chkfile" -cD..T... block3 +cD..T...... block3 EOT diff $diffopt "$chkfile" "$outfile" || test_fail "test 3 failed" @@ -79,15 +66,15 @@ $RSYNC -aiHvv "$fromdir/" "$todir/" \ | tee "$outfile" filter_outfile cat <"$chkfile" -.d..t... ./ -cD..t... block -cD...... block2 -cD++++++ block3 -hD++++++ block2.5 => block3 -cD++++++ char -cD++++++ char2 -cD++++++ char3 -cD++++++ fifo +.d..t...... ./ +cD..t...... block +cD block2 +cD+++++++++ block3 +hD+++++++++ block2.5 => block3 +cD+++++++++ char +cD+++++++++ char2 +cD+++++++++ char3 +cS+++++++++ fifo EOT if test ! -b "$fromdir/block2.5"; then sed -e '/block2\.5/d' \ @@ -102,5 +89,23 @@ echo "" ( cd "$todir" && rsync_ls_lR . ) > "$tmpdir/ls-to" diff $diffopt "$tmpdir/ls-from" "$tmpdir/ls-to" +if test -b "$fromdir/block2.5"; then + set -x + $RSYNC -aii --link-dest="$todir" "$fromdir/" "$chkdir/" \ + | tee "$outfile" + cat <"$chkfile" +cd ./ +hD block +hD block2 +hD block2.5 +hD block3 +hD char +hD char2 +hD char3 +hS fifo +EOT + diff $diffopt "$chkfile" "$outfile" || test_fail "test 4 failed" +fi + # The script would have aborted on error, so getting here means we've won. exit 0