2 . ./wvtest-bup.sh || exit $?
3 . dev/lib.sh || exit $?
7 top="$(WVPASS pwd)" || exit $?
8 tmpdir="$(WVPASS wvmktempdir)" || exit $?
10 export BUP_DIR="$tmpdir/bup"
11 export GIT_DIR="$tmpdir/bup"
13 bup() { "$top/bup" "$@"; }
17 # These tests aren't comprehensive, but test-save-restore-excludes.sh
18 # exercises some of the same code more thoroughly via index, and
19 # --xdev is handled in test-xdev.sh.
23 WVPASS mkdir src src/a src/b
24 WVPASS touch src/a/1 src/a/2 src/b/1 src/b/2 src/c
25 (cd src && WVPASS ln -s a a-link)
26 WVPASSEQ "$(bup drecurse src)" "src/c
36 WVSTART "drecurse --exclude (file)"
37 WVPASSEQ "$(bup drecurse --exclude src/b/2 src)" "src/c
46 WVSTART "drecurse --exclude (dir)"
47 WVPASSEQ "$(bup drecurse --exclude src/b/ src)" "src/c
54 WVSTART "drecurse --exclude (symlink)"
55 WVPASSEQ "$(bup drecurse --exclude src/a-link src)" "src/c
64 WVSTART "drecurse --exclude (absolute path)"
65 WVPASSEQ "$(bup drecurse --exclude src/b/2 "$(pwd)/src")" "$(pwd)/src/c
74 WVSTART "drecurse --exclude-from"
75 WVPASS echo "src/b" > exclude-list
76 WVPASSEQ "$(bup drecurse --exclude-from exclude-list src)" "src/c
83 WVSTART "drecurse --exclude-rx (trivial)"
84 WVPASSEQ "$(bup drecurse --exclude-rx '^src/b' src)" "src/c
91 WVSTART "drecurse --exclude-rx (trivial - absolute path)"
92 WVPASSEQ "$(bup drecurse --exclude-rx "^$(pwd)/src/b" "$(pwd)/src")" \
100 WVPASS rm -rf "$tmpdir"