Get fetch-depth:0 right.
[rsync.git] / testsuite / missing.test
1 #!/bin/sh
2
3 # This program is distributable under the terms of the GNU GPL (see
4 # COPYING).
5
6 # Test three bugs fixed by my redoing of the missing_below logic.
7
8 . $suitedir/rsync.fns
9
10 makepath "$fromdir/subdir" "$todir"
11 echo data >"$fromdir/subdir/file"
12 echo data >"$todir/other"
13
14 # Test 1: Too much "not creating new..." output on a dry run
15 $RSYNC -n -r --ignore-non-existing -vv "$fromdir/" "$todir/" | tee "$scratchdir/out"
16 if grep 'not creating new.*subdir/file' "$scratchdir/out" >/dev/null; then
17         test_fail 'test 1 failed'
18 fi
19
20 case "$RSYNC" in
21 *protocol=29*) # FIXME can we get past the new flist sanity check in protocol 29?
22         echo "Skipped test 2 for protocol 29."
23         ;;
24 *)
25         # Test 2: Attempt to make a fuzzy dirlist for a dir not created on a dry run
26         $RSYNC -n -r -R --no-implied-dirs -y "$fromdir/./subdir/file" "$todir/" \
27                 || test_fail 'test 2 failed'
28         ;;
29 esac
30
31 # Test 3: --delete-after pass skipped when last dir is dry-missing
32 $RSYNC -n -r --delete-after -i "$fromdir/" "$todir/" | tee "$scratchdir/out"
33 grep '^\*deleting * other' "$scratchdir/out" >/dev/null \
34         || test_fail 'test 3 failed'