X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=t%2Ftest-fuse.sh;h=4603e80f79e3b3a57a3073c440fd38d41302ed94;hb=2b27df29f67103f333f52a0888f89f589c5f135f;hp=e25f3f21d4f4c4ee7e62eff1eb0241442a7dd3d7;hpb=edd3e8ea7e3a4453f01e4989597c7daff61d8af0;p=bup.git diff --git a/t/test-fuse.sh b/t/test-fuse.sh index e25f3f2..4603e80 100755 --- a/t/test-fuse.sh +++ b/t/test-fuse.sh @@ -1,10 +1,18 @@ #!/usr/bin/env bash . ./wvtest-bup.sh || exit $? +. t/lib.sh || exit $? set -o pipefail unset BLOCKSIZE BLOCK_SIZE DF_BLOCK_SIZE +root_status="$(t/root-status)" || exit $? + +if ! bup-python -c 'import fuse' 2> /dev/null; then + WVSTART 'unable to import fuse; skipping test' + exit 0 +fi + if test -n "$(type -p modprobe)" && ! modprobe fuse; then echo 'Unable to load fuse module; skipping dependent tests.' 1>&2 exit 0 @@ -15,7 +23,7 @@ if ! fusermount -V; then exit 0 fi -if ! groups | grep -q fuse && test "$(t/root-status)" != root; then +if ! groups | grep -q fuse && test "$root_status" != root; then echo 'skipping FUSE tests: you are not root and not in the fuse group' exit 0 fi @@ -32,15 +40,16 @@ bup() { "$top/bup" "$@"; } savename() { readonly secs="$1" - WVPASS python -c "from time import strftime, localtime; \ + WVPASS bup-python -c "from time import strftime, localtime; \ print strftime('%Y-%m-%d-%H%M%S', localtime($secs))" } WVPASS bup init WVPASS cd "$tmpdir" -savestamp1=$(WVPASS python -c 'import time; print int(time.time())') || exit $? +savestamp1=$(WVPASS bup-python -c 'import time; print int(time.time())') || exit $? savestamp2=$(($savestamp1 + 1)) + savename1="$(savename "$savestamp1")" || exit $? savename2="$(savename "$savestamp2")" || exit $? @@ -71,6 +80,9 @@ result=$(WVPASS ls mnt/src/latest) || exit $? WVPASSEQ "$result" "foo pre-epoch" +result=$(WVPASS cat mnt/src/latest/foo) || exit $? +WVPASSEQ "$result" "content" + # Right now we don't detect new saves. WVPASS bup save -n src -d "$savestamp2" --strip src result=$(WVPASS ls mnt/src) || exit $? @@ -84,7 +96,7 @@ WVPASS bup fuse --meta mnt result=$(TZ=UTC LC_ALL=C WVPASS ls -l mnt/src/latest/) || exit $? readonly user=$(WVPASS id -un) || $? readonly group=$(WVPASS id -gn) || $? -WVPASSEQ "$result" "total 0 +WVPASSEQ "$result" "total 1 -rw-r--r-- 1 $user $group 8 Nov 11 2011 foo -rw-r--r-- 1 $user $group 8 Jan 1 1970 pre-epoch"