diff options
author | Wayne Davison <wayned@samba.org> | 2008-05-31 14:52:24 -0700 |
---|---|---|
committer | Wayne Davison <wayned@samba.org> | 2008-05-31 14:52:24 -0700 |
commit | 0e9c3564c6763e4d99d7b518ccc27e60de622a3b (patch) | |
tree | d799e2cce67aff1733d93617574c6952f039344a /testsuite/daemon.test | |
parent | 164cb66addee693700c70fed63d996872fcc3edb (diff) | |
download | rsync-0e9c3564c6763e4d99d7b518ccc27e60de622a3b.tar.gz |
Improved the daemon testing, including adding a test to ensure that
daemon excludes can't exclude a dot dir.
Diffstat (limited to 'testsuite/daemon.test')
-rw-r--r-- | testsuite/daemon.test | 48 |
1 files changed, 44 insertions, 4 deletions
diff --git a/testsuite/daemon.test b/testsuite/daemon.test index 994a9944..113d6a59 100644 --- a/testsuite/daemon.test +++ b/testsuite/daemon.test @@ -19,15 +19,23 @@ # checking the log file # password authentication -# TODO: Put the common framework in a common file, so that we can have -# subtests fail and keep going. - . "$suitedir/rsync.fns" +chkfile="$scratchdir/rsync.chk" +outfile="$scratchdir/rsync.out" + SSH="src/support/lsh --no-cd" +DIR_REPL='s/^\(d[^ ]*\) *[0-9][0-9]* /\1 DIR /' +LS_REPL='s;[0-9][0-9][0-9][0-9]/[0-9][0-9]/[0-9][0-9] [0-9][0-9]:[0-9][0-9]:[0-9][0-9];####/##/## ##:##:##;' build_rsyncd_conf +makepath "$fromdir/foo" "$fromdir/bar/baz" +makepath "$todir" +echo one >"$fromdir/foo/one" +echo two >"$fromdir/bar/two" +echo three >"$fromdir/bar/baz/three" + cd "$scratchdir" ln -s test-rsyncd.conf rsyncd.conf @@ -46,4 +54,36 @@ $RSYNC -ve "$SSH" --rsync-path="$RSYNC$confopt" localhost:: RSYNC_CONNECT_PROG="$RSYNC --config=$conf --daemon" export RSYNC_CONNECT_PROG -$RSYNC -v localhost:: +$RSYNC -v localhost:: \ + | tee "$outfile" +# These have a space-padded 15-char name, then a tab, then a comment. +sed 's/NOCOMMENT//' <<EOT >"$chkfile" +test-from r/o +test-to r/w +test-scratch NOCOMMENT +EOT +diff $diffopt "$chkfile" "$outfile" || test_fail "test 1 failed" + +$RSYNC -r localhost::test-hidden \ + | sed "$DIR_REPL" | sed "$LS_REPL" \ + | tee "$outfile" +cat <<EOT >"$chkfile" +drwxr-xr-x DIR ####/##/## ##:##:## . +drwxr-xr-x DIR ####/##/## ##:##:## bar +-rw-r--r-- 4 ####/##/## ##:##:## bar/two +drwxr-xr-x DIR ####/##/## ##:##:## bar/baz +-rw-r--r-- 6 ####/##/## ##:##:## bar/baz/three +drwxr-xr-x DIR ####/##/## ##:##:## foo +-rw-r--r-- 4 ####/##/## ##:##:## foo/one +EOT +diff $diffopt "$chkfile" "$outfile" || test_fail "test 2 failed" + +$RSYNC -r localhost::test-from/f* \ + | sed "$DIR_REPL" | sed "$LS_REPL" \ + | tee "$outfile" +cat <<EOT >"$chkfile" +drwxr-xr-x DIR ####/##/## ##:##:## foo +-rw-r--r-- 4 ####/##/## ##:##:## foo/one +EOT +diff $diffopt "$chkfile" "$outfile" || test_fail "test 3 failed" + |