Annotation of embedaddon/rsync/testsuite/daemon.test, revision 1.1.1.1

1.1       misho       1: #!/bin/sh
                      2: 
                      3: # Copyright (C) 2001 by Martin Pool <mbp@samba.org>
                      4: 
                      5: # This program is distributable under the terms of the GNU GPL (see
                      6: # COPYING)
                      7: 
                      8: # We don't really want to start the server listening, because that
                      9: # might interfere with the security or operation of the test machine.
                     10: # Instead we use the fake-connect feature to dynamically assign a pair
                     11: # of ports.
                     12: 
                     13: # Having started the server we try some basic operations against it:
                     14: 
                     15: # getting a list of module
                     16: # listing files in a module
                     17: # retrieving a module
                     18: # uploading to a module
                     19: # checking the log file
                     20: # password authentication
                     21: 
                     22: . "$suitedir/rsync.fns"
                     23: 
                     24: chkfile="$scratchdir/rsync.chk"
                     25: outfile="$scratchdir/rsync.out"
                     26: 
                     27: SSH="src/support/lsh --no-cd"
                     28: FILE_REPL='s/^\([^d][^ ]*\) *\(..........[0-9]\) /\1 \2 /'
                     29: DIR_REPL='s/^\(d[^ ]*\)  *[0-9][0-9]* /\1         DIR /'
                     30: 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];####/##/## ##:##:##;'
                     31: 
                     32: build_rsyncd_conf
                     33: 
                     34: makepath "$fromdir/foo" "$fromdir/bar/baz"
                     35: makepath "$todir"
                     36: echo one >"$fromdir/foo/one"
                     37: echo two >"$fromdir/bar/two"
                     38: echo three >"$fromdir/bar/baz/three"
                     39: 
                     40: cd "$scratchdir"
                     41: 
                     42: ln -s test-rsyncd.conf rsyncd.conf
                     43: 
                     44: confopt=''
                     45: case `get_testuid` in
                     46: 0)
                     47:     # Root needs to specify the config file, or it uses /etc/rsyncd.conf.
                     48:     echo "Forcing --config=$conf"
                     49:     confopt=" --config=$conf"
                     50:     ;;
                     51: esac
                     52: 
                     53: $RSYNC -ve "$SSH" --rsync-path="$RSYNC$confopt" localhost::
                     54: 
                     55: RSYNC_CONNECT_PROG="$RSYNC --config=$conf --daemon"
                     56: export RSYNC_CONNECT_PROG
                     57: 
                     58: $RSYNC -v localhost:: \
                     59:     | tee "$outfile"
                     60: # These have a space-padded 15-char name, then a tab, then a comment.
                     61: sed 's/NOCOMMENT//' <<EOT >"$chkfile"
                     62: test-from              r/o
                     63: test-to                r/w
                     64: test-scratch           NOCOMMENT
                     65: EOT
                     66: diff $diffopt "$chkfile" "$outfile" || test_fail "test 1 failed"
                     67: 
                     68: $RSYNC -r localhost::test-hidden \
                     69:     | sed "$FILE_REPL" | sed "$DIR_REPL" | sed "$LS_REPL" \
                     70:     | tee "$outfile"
                     71: cat <<EOT >"$chkfile"
                     72: drwxr-xr-x         DIR ####/##/## ##:##:## .
                     73: drwxr-xr-x         DIR ####/##/## ##:##:## bar
                     74: -rw-r--r--           4 ####/##/## ##:##:## bar/two
                     75: drwxr-xr-x         DIR ####/##/## ##:##:## bar/baz
                     76: -rw-r--r--           6 ####/##/## ##:##:## bar/baz/three
                     77: drwxr-xr-x         DIR ####/##/## ##:##:## foo
                     78: -rw-r--r--           4 ####/##/## ##:##:## foo/one
                     79: EOT
                     80: diff $diffopt "$chkfile" "$outfile" || test_fail "test 2 failed"
                     81: 
                     82: $RSYNC -r localhost::test-from/f* \
                     83:     | sed "$FILE_REPL" | sed "$DIR_REPL" | sed "$LS_REPL" \
                     84:     | tee "$outfile"
                     85: cat <<EOT >"$chkfile"
                     86: drwxr-xr-x         DIR ####/##/## ##:##:## foo
                     87: -rw-r--r--           4 ####/##/## ##:##:## foo/one
                     88: EOT
                     89: diff $diffopt "$chkfile" "$outfile" || test_fail "test 3 failed"
                     90: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>