Annotation of embedaddon/lrzsz/check.lrzsz, revision 1.1

1.1     ! misho       1: #! /bin/sh
        !             2: 
        !             3: testdir="testdir.lrzsz"
        !             4: srcdir="$1"
        !             5: if test $srcdir = . ; then
        !             6:        srcdir=`pwd`
        !             7: fi
        !             8: if test $srcdir = .. ; then
        !             9:        srcdir=`pwd`/..
        !            10: fi
        !            11: objdir="$2"
        !            12: if test $objdir = . ; then
        !            13:        objdir=`pwd`
        !            14: fi
        !            15: 
        !            16: if test "x$3" = x ; then
        !            17:        mode=all
        !            18: else
        !            19:        mode=$3
        !            20: fi
        !            21: 
        !            22: #SZBUFSIZE="-B 524288"
        !            23: RZBUFSIZE="-B 524288"
        !            24: 
        !            25: SZ="$objdir/src/lsz"
        !            26: RZ="$objdir/src/lrz"
        !            27: 
        !            28: echo checking with srcdir = $1 and objdir = $2
        !            29: 
        !            30: # z_test_files: files to test zmodem with.
        !            31: # z8_test_files: files to test zmodem-8k with. Optional.
        !            32: # y_test_files: files to test ymodem with.
        !            33: # x_test_files: files to test xmodem with. Must be ascii, as we need the
        !            34: #               ascii mode to remove the padding ^Zs.
        !            35: 
        !            36: # generate list of testfiles 
        !            37: z_test_files=""
        !            38: for i in $srcdir/src/l?z.c ; do
        !            39:        z_test_files="$z_test_files $i" 
        !            40:        x_test_files="$x_test_files $i" 
        !            41: done
        !            42: for i in $objdir/src/l?z ; do
        !            43:        z_test_files="$z_test_files $i" 
        !            44:        y_test_files="$y_test_files $i" 
        !            45: done
        !            46: for i in /pub/gnu/emacs-1*.tar.gz ; do
        !            47:        if test -f "$i" ; then
        !            48:                z8_test_files="$z8_test_files $i" 
        !            49:                z_test_files="$z_test_files $i" 
        !            50:        fi
        !            51: done
        !            52: 
        !            53: # change to tmp dir
        !            54: if test "x$TMPDIR" = x ; then
        !            55:        cd /tmp
        !            56: else
        !            57:        cd $TMPDIR || cd /tmp
        !            58: fi
        !            59: 
        !            60: rm -rf $testdir
        !            61: mkdir $testdir
        !            62: exec 5>$testdir/error.log
        !            63: (mkfifo $testdir/pipe || mknod $testdir/pipe p) 2>&5
        !            64: 
        !            65: # test zmodem
        !            66: if test "$mode" = all -o "$mode" = z ; then
        !            67:        echo "testing ZMODEM"
        !            68:        mkdir $testdir/zmodem
        !            69:        failed=0
        !            70:        ($SZ -q $SZBUFSIZE $z_test_files ) <$testdir/pipe | \
        !            71:                (cd $testdir/zmodem ; exec $RZ $RZBUFSIZE $QUIET >>../pipe )
        !            72:        for i in $z_test_files ; do 
        !            73:                bn=`basename $i`
        !            74:                cmp $i $testdir/zmodem/$bn
        !            75:                if test $? -eq 0 ; then
        !            76:                        rm -f $testdir/zmodem/$bn
        !            77:                else
        !            78:                        failed=1
        !            79:                fi
        !            80:        done
        !            81:        rmdir $testdir/zmodem 2>&5
        !            82:        if test $failed = 1 ; then 
        !            83:                echo "ZMODEM test failed"
        !            84:                any_failure="$any_failure ZMODEM"
        !            85:        fi
        !            86: fi
        !            87: # test zmodem framlen
        !            88: if test "$mode" = f ; then
        !            89:        echo "testing ZMODEMframlen"
        !            90:        mkdir $testdir/zmodem
        !            91:        failed=0
        !            92:        ($SZ -q $SZBUFSIZE -l 128 $z_test_files ) <$testdir/pipe | \
        !            93:                (cd $testdir/zmodem ; exec $RZ $RZBUFSIZE $QUIET >>../pipe )
        !            94:        for i in $z_test_files ; do 
        !            95:                bn=`basename $i`
        !            96:                cmp $i $testdir/zmodem/$bn
        !            97:                if test $? -eq 0 ; then
        !            98:                        rm -f $testdir/zmodem/$bn
        !            99:                else
        !           100:                        failed=1
        !           101:                fi
        !           102:        done
        !           103:        rmdir $testdir/zmodem 2>&5
        !           104:        if test $failed = 1 ; then 
        !           105:                echo "ZMODEM test failed"
        !           106:                any_failure="$any_failure ZMODEM"
        !           107:        fi
        !           108: fi
        !           109: 
        !           110: # test zmodem-4k
        !           111: if test "$mode" = all -o "$mode" = z4 ; then
        !           112:        echo "testing ZMODEM4K"
        !           113:        mkdir $testdir/zmodem4k
        !           114:        failed=0
        !           115:        ($SZ -q4 $SZBUFSIZE $z_test_files ) <$testdir/pipe | \
        !           116:                (cd $testdir/zmodem4k ; exec $RZ $RZBUFSIZE $QUIET >>../pipe )
        !           117:        for i in $z_test_files ; do 
        !           118:                bn=`basename $i`
        !           119:                cmp $i $testdir/zmodem4k/$bn
        !           120:                if test $? -eq 0 ; then
        !           121:                        rm -f $testdir/zmodem4k/$bn
        !           122:                else
        !           123:                        failed=1
        !           124:                fi
        !           125:        done
        !           126:        rmdir $testdir/zmodem4k 2>&5
        !           127:        if test $failed = 1 ; then 
        !           128:                echo "ZMODEM4k test failed"
        !           129:                any_failure="$any_failure ZMODEM4k"
        !           130:        fi
        !           131: fi
        !           132: 
        !           133: # test zmodem8k
        !           134: if test "$mode" = all -o "$mode" = z8 ; then
        !           135:        # we test this only if we have something really large, because this is
        !           136:        # we only case we can expect any differences
        !           137:        if test "x$z8_test_files" = x ; then
        !           138:                :
        !           139:        else
        !           140:                echo "testing ZMODEM8K"
        !           141:                mkdir $testdir/zmodem8k
        !           142:                failed=0
        !           143:                $SZ -q8OT $SZBUFSIZE $z8_test_files <$testdir/pipe | \
        !           144:                        (cd $testdir/zmodem8k ; $RZ -O $RZBUFSIZE $QUIET >>../pipe )
        !           145:                for i in $z8_test_files ; do 
        !           146:                        bn=`basename $i`
        !           147:                        cmp $i $testdir/zmodem8k/$bn
        !           148:                        if test $? -eq 0 ; then
        !           149:                                rm -f $testdir/zmodem8k/$bn
        !           150:                        else
        !           151:                                failed=1
        !           152:                        fi
        !           153:                done
        !           154:                if test $failed = 1 ; then 
        !           155:                        echo "ZMODEM8k test failed"
        !           156:                        any_failure="$any_failure ZMODEM8k"
        !           157:                fi
        !           158:                rmdir $testdir/zmodem8k 2>&5
        !           159:        fi
        !           160: fi
        !           161: 
        !           162: if test "$mode" = all -o "$mode" = z8N ; then
        !           163:        # we test this only if we have something really large, because this is
        !           164:        # we only case we can expect any differences
        !           165:        if test "x$z8_test_files" = x ; then
        !           166:                :
        !           167:        else
        !           168:                echo "testing ZMODEM8K-NULL"
        !           169:                mkdir $testdir/zmodem8k-NULL
        !           170:                $SZ -q8OT $SZBUFSIZE $z8_test_files <$testdir/pipe | \
        !           171:                        (cd $testdir/zmodem8k-NULL ; $RZ -DO $RZBUFSIZE $QUIET >>../pipe )
        !           172:                rmdir $testdir/zmodem8k-NULL 2>&5
        !           173:        fi
        !           174: fi
        !           175: 
        !           176: # test zmodem-tcp
        !           177: # inband tcp: stdin/out connection needed.
        !           178: if test "$mode" = all -o "$mode" = tcp ; then
        !           179:        echo "testing ZMODEMtcp"
        !           180:        mkdir $testdir/zmodemtcp
        !           181:        failed=0
        !           182:        ($SZ --tcp -q $SZBUFSIZE $z_test_files ) <$testdir/pipe | \
        !           183:                (cd $testdir/zmodemtcp ; exec $RZ $RZBUFSIZE $QUIET >>../pipe )
        !           184:        for i in $z_test_files ; do 
        !           185:                bn=`basename $i`
        !           186:                cmp $i $testdir/zmodemtcp/$bn
        !           187:                if test $? -eq 0 ; then
        !           188:                        rm -f $testdir/zmodemtcp/$bn
        !           189:                else
        !           190:                        failed=1
        !           191:                fi
        !           192:        done
        !           193:        rmdir $testdir/zmodemtcp 2>&5
        !           194:        if test $failed = 1 ; then 
        !           195:                echo "ZMODEMtcp test failed"
        !           196:                any_failure="$any_failure ZMODEMtcp"
        !           197:        fi
        !           198: fi
        !           199: if test "$mode" = all -o "$mode" = tcp4 ; then
        !           200:        echo "testing ZMODEMtcp4k"
        !           201:        mkdir $testdir/zmodemtcp4k
        !           202:        failed=0
        !           203:        ($SZ --tcp -q4 $SZBUFSIZE $z_test_files ) <$testdir/pipe | \
        !           204:                (cd $testdir/zmodemtcp4k ; exec $RZ $RZBUFSIZE $QUIET >>../pipe )
        !           205:        for i in $z_test_files ; do 
        !           206:                bn=`basename $i`
        !           207:                cmp $i $testdir/zmodemtcp4k/$bn
        !           208:                if test $? -eq 0 ; then
        !           209:                        rm -f $testdir/zmodemtcp4k/$bn
        !           210:                else
        !           211:                        failed=1
        !           212:                fi
        !           213:        done
        !           214:        rmdir $testdir/zmodemtcp4k 2>&5
        !           215:        if test $failed = 1 ; then 
        !           216:                echo "ZMODEMtcp4k test failed"
        !           217:                any_failure="$any_failure ZMODEMtcp4k"
        !           218:        fi
        !           219: fi
        !           220: if test "$mode" = all -o "$mode" = tcp8 ; then
        !           221:        echo "testing ZMODEMtcp8k"
        !           222:        mkdir $testdir/zmodemtcp8k
        !           223:        failed=0
        !           224:        ($SZ --tcp -q8OT $SZBUFSIZE $z_test_files ) <$testdir/pipe | \
        !           225:                (cd $testdir/zmodemtcp8k ; exec $RZ $RZBUFSIZE $QUIET >>../pipe )
        !           226:        for i in $z_test_files ; do 
        !           227:                bn=`basename $i`
        !           228:                cmp $i $testdir/zmodemtcp8k/$bn
        !           229:                if test $? -eq 0 ; then
        !           230:                        rm -f $testdir/zmodemtcp8k/$bn
        !           231:                else
        !           232:                        failed=1
        !           233:                fi
        !           234:        done
        !           235:        rmdir $testdir/zmodemtcp8k 2>&5
        !           236:        if test $failed = 1 ; then 
        !           237:                echo "ZMODEMtcp8k test failed"
        !           238:                any_failure="$any_failure ZMODEMtcp8k"
        !           239:        fi
        !           240: fi
        !           241: # out-of-band tcp
        !           242: if test "$mode" = tcpo ; then
        !           243:        echo "testing ZMODEMtcpo"
        !           244:        mkdir $testdir/zmodemtcpo
        !           245:        failed=0
        !           246:        $SZ --tcp-server -q $SZBUFSIZE $z_test_files | \
        !           247:                perl -e '$|=1; while(<>) {if (/^connect with .* "(.*)"/) {print $1 . "\n";}}' |
        !           248:        ( cd $testdir/zmodemtcpo ; xargs -l1 $RZ $RZBUFSIZE -vv --tcp-client )
        !           249:        for i in $z_test_files ; do 
        !           250:                bn=`basename $i`
        !           251:                cmp $i $testdir/zmodemtcpo/$bn
        !           252:                if test $? -eq 0 ; then
        !           253:                        rm -f $testdir/zmodemtcpo/$bn
        !           254:                else
        !           255:                        failed=1
        !           256:                fi
        !           257:        done
        !           258:        rmdir $testdir/zmodemtcpo 2>&5
        !           259:        if test $failed = 1 ; then 
        !           260:                echo "ZMODEMtcpo test failed"
        !           261:                any_failure="$any_failure ZMODEMtcpo"
        !           262:        fi
        !           263: fi
        !           264: 
        !           265: if test "$mode" = error ; then
        !           266:        # we test this only if we have something really large, because this is
        !           267:        # we only case we can expect any differences
        !           268:        if test "x$y_test_files" = x ; then
        !           269:                :
        !           270:        else
        !           271:                echo "testing error, lsz"
        !           272:                mkdir $testdir/error.lsz
        !           273:                failed=0
        !           274:                # strace -vs 128 -o out $SZ -8 -vvvvvvvv $SZBUFSIZE $y_test_files <$testdir/pipe | \
        !           275:                $SZ -8q $SZBUFSIZE $y_test_files <$testdir/pipe | \
        !           276:                        (cd $testdir/error.lsz ; $RZ --errors 32768 $RZBUFSIZE $QUIET >>../pipe 2>/dev/null)
        !           277:                for i in $y_test_files ; do 
        !           278:                        bn=`basename $i`
        !           279:                        cmp $i $testdir/error.lsz/$bn
        !           280:                        if test $? -eq 0 ; then
        !           281:                                rm -f $testdir/error.lsz/$bn
        !           282:                        else
        !           283:                                failed=1
        !           284:                        fi
        !           285:                done
        !           286:                if test $failed = 1 ; then 
        !           287:                        echo "error test failed"
        !           288:                        any_failure="$any_failure error.lsz"
        !           289:                fi
        !           290:                rmdir $testdir/error.lsz 2>&5
        !           291: 
        !           292:                # omen zmodem has a really bad error behaviour. it gets so slow
        !           293:                # that you wouldn't believe it ...
        !           294:                echo "testing error, omen.sz"
        !           295:                mkdir $testdir/error.omen
        !           296:                failed=0
        !           297:                omen.sz $y_test_files <$testdir/pipe | \
        !           298:                        (cd $testdir/error.omen ; $RZ -vvv --errors 32768 $RZBUFSIZE $QUIET >>../pipe 2>/tmp/out2)
        !           299:                for i in $y_test_files ; do 
        !           300:                        bn=`basename $i`
        !           301:                        cmp $i $testdir/error.omen/$bn
        !           302:                        if test $? -eq 0 ; then
        !           303:                                rm -f $testdir/error.omen/$bn
        !           304:                        else
        !           305:                                failed=1
        !           306:                        fi
        !           307:                done
        !           308:                if test $failed = 1 ; then 
        !           309:                        echo "error.omen test failed"
        !           310:                        any_failure="$any_failure error.omen"
        !           311:                fi
        !           312:                rmdir $testdir/error.omen 2>&5
        !           313: 
        !           314:                echo "testing error, zm.sz"
        !           315:                mkdir $testdir/error.zm
        !           316:                failed=0
        !           317:                zmtx $y_test_files <$testdir/pipe | \
        !           318:                        (cd $testdir/error.zm ; $RZ -vvv --errors 32768 $RZBUFSIZE $QUIET >>../pipe 2>/tmp/out2)
        !           319:                for i in $y_test_files ; do 
        !           320:                        bn=`basename $i`
        !           321:                        cmp $i $testdir/error.zm/$bn
        !           322:                        if test $? -eq 0 ; then
        !           323:                                rm -f $testdir/error.zm/$bn
        !           324:                        else
        !           325:                                failed=1
        !           326:                        fi
        !           327:                done
        !           328:                if test $failed = 1 ; then 
        !           329:                        echo "error.zm test failed"
        !           330:                        any_failure="$any_failure error.zm"
        !           331:                fi
        !           332:                rmdir $testdir/error.zm 2>&5
        !           333:        fi
        !           334: fi
        !           335: 
        !           336: 
        !           337: # test ymodem
        !           338: if test "$mode" = all -o "$mode" = y ; then
        !           339:        echo "testing YMODEM"
        !           340:        mkdir $testdir/ymodem
        !           341:        failed=0
        !           342:        $SZ --ymodem -q $y_test_files <$testdir/pipe | \
        !           343:                (cd $testdir/ymodem ; $RZ $QUIET --ymodem >>../pipe)
        !           344:        for i in $y_test_files ; do 
        !           345:                bn=`basename $i`
        !           346:                cmp $i $testdir/ymodem/$bn
        !           347:                if test $? -eq 0 ; then
        !           348:                        rm -f $testdir/ymodem/$bn
        !           349:                else
        !           350:                        failed=1
        !           351:                fi
        !           352:        done
        !           353:        rmdir $testdir/ymodem 2>&5
        !           354:        if test $failed = 1 ; then 
        !           355:                echo "YMODEM test failed"
        !           356:                any_failure="$any_failure YMODEM"
        !           357:        fi
        !           358: fi
        !           359: 
        !           360: if test "$mode" = all -o "$mode" = x ; then
        !           361:        echo "testing XMODEM"
        !           362:        mkdir $testdir/xmodem
        !           363:        failed=0
        !           364:        for i in $x_test_files; do
        !           365:                bn=`basename $i`
        !           366:                $SZ --xmodem -qa $i <$testdir/pipe | \
        !           367:                        (cd $testdir/xmodem ; $RZ $QUIET -a --xmodem $bn >>../pipe)
        !           368:                cmp $i $testdir/xmodem/$bn
        !           369:                if test $? -eq 0 ; then
        !           370:                        rm -f $testdir/xmodem/$bn
        !           371:                else
        !           372:                        failed=1
        !           373:                fi
        !           374:        done
        !           375:        rmdir $testdir/xmodem 2>&5
        !           376:        if test $failed = 1 ; then 
        !           377:                echo "XMODEM test failed"
        !           378:                any_failure="$any_failure XMODEM"
        !           379:        fi
        !           380: fi
        !           381: 
        !           382: if test "$mode" = all -o "$mode" = manage ; then
        !           383:        echo "testing file management, appending"
        !           384:        mkdir $testdir/manag.append
        !           385:        failed=0
        !           386:        $SZ -q --append $srcdir/src/lsz.c $srcdir/src/lsz.c <$testdir/pipe | \
        !           387:                (cd $testdir/manag.append ; $RZ $QUIET >>../pipe)
        !           388:        rm -f $testdir/manag.append/compare
        !           389:        cp $srcdir/src/lsz.c $testdir/manag.append/compare
        !           390:        cat $srcdir/src/lsz.c >>$testdir/manag.append/compare
        !           391:        cmp $testdir/manag.append/compare $testdir/manag.append/lsz.c
        !           392:        if test $? -eq 0 ; then
        !           393:                rm -f $testdir/manag.append/lsz.c
        !           394:                rm -f $testdir/manag.append/compare
        !           395:        else
        !           396:                failed=1
        !           397:        fi
        !           398:        rmdir $testdir/manag.append 2>&5
        !           399:        if test $failed = 1 ; then 
        !           400:                echo "management/append test failed"
        !           401:                any_failure="$any_failure manag.append"
        !           402:        fi
        !           403: 
        !           404:        echo "testing file management, renaming"
        !           405:        mkdir $testdir/manag.rename
        !           406:        failed=0
        !           407:        rm -f $testdir/manag.rename/lsz.c
        !           408:        cp $srcdir/src/lsz.c $testdir/manag.rename/
        !           409:        $SZ -q --rename $srcdir/src/lsz.c $srcdir/src/lsz.c <$testdir/pipe | \
        !           410:                (cd $testdir/manag.rename ; $RZ $QUIET >>../pipe)
        !           411:        cmp $testdir/manag.rename/lsz.c $srcdir/src/lsz.c
        !           412:        if test $? -ne 0 ; then
        !           413:                failed=1
        !           414:        else
        !           415:                cmp $testdir/manag.rename/lsz.c.0 $srcdir/src/lsz.c
        !           416:                if test $? -ne 0 ; then
        !           417:                        failed=1        
        !           418:                else
        !           419:                        cmp $testdir/manag.rename/lsz.c.1 $srcdir/src/lsz.c
        !           420:                        if test $? -ne 0 ; then
        !           421:                                failed=1        
        !           422:                        fi
        !           423:                fi
        !           424:        fi
        !           425:        if test $failed -eq 0 ; then
        !           426:                rm -f $testdir/manag.rename/lsz.c
        !           427:                rm -f $testdir/manag.rename/lsz.c.0
        !           428:                rm -f $testdir/manag.rename/lsz.c.1
        !           429:        fi
        !           430:        rmdir $testdir/manag.rename 2>&5
        !           431:        if test $failed = 1 ; then 
        !           432:                echo "management/rename test failed"
        !           433:                any_failure="$any_failure manag.rename"
        !           434:        fi
        !           435: fi
        !           436: 
        !           437: 
        !           438: # resume -r 
        !           439: if test "$mode" = all -o "$mode" = sz-r ; then
        !           440:        mkdir $testdir/resume-s
        !           441:        echo "testing ZMODEM resume (sz -r)"
        !           442:        dd if=$srcdir/src/Makefile.in of=$testdir/resume-s/lsz.c bs=256 count=5 2>&5
        !           443:        ($SZ -rq $srcdir/src/lsz.c) <$testdir/pipe | \
        !           444:                (cd $testdir/resume-s ; $RZ $QUIET >>../pipe )
        !           445:        echo "differences are normal:" >&5
        !           446:        if cmp $srcdir/src/lsz.c $testdir/resume-s/lsz.c >&5 ; then
        !           447:                echo "receiver did not resume, but file is ok"
        !           448:                any_failure="$any_failure ZMODEM-resume/sz"
        !           449:        else
        !           450:                dd if=$srcdir/src/lsz.c of=$testdir/resume-s/lsz.c1 bs=256 count=5 2>&5
        !           451:                dd if=$testdir/resume-s/lsz.c bs=256 skip=5 >>$testdir/resume-s/lsz.c1 2>&5
        !           452:                if cmp $srcdir/src/lsz.c $testdir/resume-s/lsz.c1 ; then
        !           453:                        :
        !           454:                        rm -f $testdir/resume-s/lsz.c
        !           455:                        rm -f $testdir/resume-s/lsz.c1
        !           456:                        rmdir $testdir/resume-s 2>&5
        !           457:                else
        !           458:                        echo "sender resumed, but files differ. This is really bad"
        !           459:                        any_failure="$any_failure ZMODEM-resume/sz"
        !           460:                fi
        !           461:        fi
        !           462: fi
        !           463: 
        !           464: if test "$mode" = all -o "$mode" = rz-r ; then
        !           465:     echo "testing ZMODEM resume (rz -r)"
        !           466:        mkdir $testdir/resume-r 2>&5
        !           467:        dd if=$srcdir/src/Makefile.in of=$testdir/resume-r/lsz.c bs=256 count=5 2>&5
        !           468:        ($SZ -q $srcdir/src/lsz.c) <$testdir/pipe | \
        !           469:                (cd $testdir/resume-r ; $RZ -r $QUIET >>../pipe )
        !           470:        echo "differences are normal:" >&5
        !           471:        if cmp $srcdir/src/lsz.c $testdir/resume-r/lsz.c >&5 ; then
        !           472:                echo "receiver did not resume, but file is ok"
        !           473:                any_failure="$any_failure ZMODEM-resume/rz"
        !           474:        else
        !           475:                dd if=$srcdir/src/lsz.c of=$testdir/resume-r/lsz.c1 bs=256 count=5 2>&5
        !           476:                dd if=$testdir/resume-r/lsz.c bs=256 skip=5 >>$testdir/resume-r/lsz.c1 2>&5
        !           477:                if cmp $srcdir/src/lsz.c $testdir/resume-r/lsz.c1 ; then
        !           478:                        :
        !           479:                        rm -f $testdir/resume-r/lsz.c
        !           480:                        rm -f $testdir/resume-r/lsz.c1
        !           481:                        rmdir $testdir/resume-r 2>&5
        !           482:                else
        !           483:                        echo "sender resumed, but files differ. This is really bad"
        !           484:                        any_failure="$any_failure ZMODEM-resume/rz"
        !           485:                fi
        !           486:        fi
        !           487: fi
        !           488: 
        !           489: # test lsz -> original rz
        !           490: if test "$mode" = orig-rz ; then
        !           491:        echo "testing ZMODEM"
        !           492:        mkdir $testdir/zmodem
        !           493:        failed=0
        !           494:        ($SZ -q  $SZBUFSIZE $z_test_files ) 2>/dev/null <$testdir/pipe | \
        !           495:                (cd $testdir/zmodem ; exec omen.rz $QUIET >>../pipe)
        !           496:        for i in $z_test_files ; do 
        !           497:                bn=`basename $i`
        !           498:                cmp $i $testdir/zmodem/$bn
        !           499:                if test $? -eq 0 ; then
        !           500:                        rm -f $testdir/zmodem/$bn
        !           501:                else
        !           502:                        failed=1
        !           503:                fi
        !           504:        done
        !           505:        rmdir $testdir/zmodem 2>&5
        !           506:        if test $failed = 1 ; then 
        !           507:                echo "orig-rz test failed"
        !           508:                any_failure="$any_failure orig-rz"
        !           509:        fi
        !           510: fi
        !           511: 
        !           512: 
        !           513: # test original sz -> lrz
        !           514: if test "$mode" = orig-sz ; then
        !           515:        echo "testing ZMODEM"
        !           516:        mkdir $testdir/zmodem
        !           517:        failed=0
        !           518:        (omen.sz $z_test_files ) 2>/dev/null <$testdir/pipe | \
        !           519:                (cd $testdir/zmodem ; exec $RZ >>../pipe)
        !           520:        for i in $z_test_files ; do 
        !           521:                bn=`basename $i`
        !           522:                cmp $i $testdir/zmodem/$bn
        !           523:                if test $? -eq 0 ; then
        !           524:                        rm -f $testdir/zmodem/$bn
        !           525:                else
        !           526:                        failed=1
        !           527:                fi
        !           528:        done
        !           529:        rmdir $testdir/zmodem 2>&5
        !           530:        if test $failed = 1 ; then 
        !           531:                echo "orig-sz test failed"
        !           532:                any_failure="$any_failure orig-sz"
        !           533:        fi
        !           534: fi
        !           535: 
        !           536: # test original sz -> lrz
        !           537: if test "$mode" = orig-kombi ; then
        !           538:        echo "testing ZMODEM"
        !           539:        mkdir $testdir/zmodem
        !           540:        failed=0
        !           541:        (omen.sz $y_test_files ; 
        !           542:                        sleep 1; 
        !           543:                        cd $testdir/zmodem; 
        !           544:                        echo 
        !           545:                        exec omen.rz ) 2>/dev/null <$testdir/pipe | \
        !           546:                (cd $testdir/zmodem ; 
        !           547:                        $RZ ; 
        !           548:                        rm -f * ; 
        !           549:                        sleep 3 ;
        !           550:                        $SZ $y_test_files ) >>$testdir/pipe
        !           551:        for i in $y_test_files ; do 
        !           552:                bn=`basename $i`
        !           553:                cmp $i $testdir/zmodem/$bn
        !           554:                if test $? -eq 0 ; then
        !           555:                        rm -f $testdir/zmodem/$bn
        !           556:                else
        !           557:                        failed=1
        !           558:                fi
        !           559:        done
        !           560:        rmdir $testdir/zmodem 2>&5
        !           561:        if test $failed = 1 ; then 
        !           562:                echo "orig-kombi test failed"
        !           563:                any_failure="$any_failure orig-kombi"
        !           564:        fi
        !           565: fi
        !           566: 
        !           567: # test lsz -> zm rz (zxrx)
        !           568: if test "$mode" = zm-rz ; then
        !           569:        echo "testing ZMODEM"
        !           570:        mkdir $testdir/zmodem
        !           571:        failed=0
        !           572:        ($SZ -q  $SZBUFSIZE $z_test_files ) 2>/dev/null <$testdir/pipe | \
        !           573:                (cd $testdir/zmodem ; exec zmrx $QUIET >>../pipe)
        !           574:        for i in $z_test_files ; do 
        !           575:                bn=`basename $i`
        !           576:                cmp $i $testdir/zmodem/$bn
        !           577:                if test $? -eq 0 ; then
        !           578:                        rm -f $testdir/zmodem/$bn
        !           579:                else
        !           580:                        failed=1
        !           581:                fi
        !           582:        done
        !           583:        rmdir $testdir/zmodem 2>&5
        !           584:        if test $failed = 1 ; then 
        !           585:                echo "orig-rz test failed"
        !           586:                any_failure="$any_failure zm-rz"
        !           587:        fi
        !           588: fi
        !           589: 
        !           590: # test zm sz (zmtx) -> lrz
        !           591: if test "$mode" = zm-sz ; then
        !           592:        echo "testing ZMODEM"
        !           593:        mkdir $testdir/zmodem
        !           594:        failed=0
        !           595:        (zmtx $z_test_files ) 2>/dev/null <$testdir/pipe | \
        !           596:                (cd $testdir/zmodem ; exec $RZ >>../pipe)
        !           597:        for i in $z_test_files ; do 
        !           598:                bn=`basename $i`
        !           599:                cmp $i $testdir/zmodem/$bn
        !           600:                if test $? -eq 0 ; then
        !           601:                        rm -f $testdir/zmodem/$bn
        !           602:                else
        !           603:                        failed=1
        !           604:                fi
        !           605:        done
        !           606:        rmdir $testdir/zmodem 2>&5
        !           607:        if test $failed = 1 ; then 
        !           608:                echo "orig-sz test failed"
        !           609:                any_failure="$any_failure zm-sz"
        !           610:        fi
        !           611: fi
        !           612: 
        !           613: # test turbo mode lsz -> zmrx, omen.rz, lrz
        !           614: if test "$mode" = turbo ; then
        !           615:        echo "testing turbo -> zmrx"
        !           616:        mkdir $testdir/turbo.zmrx
        !           617:        failed=0
        !           618:        ($SZ -qT $SZBUFSIZE $z_test_files ) 2>/dev/null <$testdir/pipe | \
        !           619:                (cd $testdir/turbo.zmrx ; exec zmrx >>../pipe)
        !           620:        for i in $z_test_files ; do 
        !           621:                bn=`basename $i`
        !           622:                cmp $i $testdir/turbo.zmrx/$bn
        !           623:                if test $? -eq 0 ; then
        !           624:                        rm -f $testdir/turbo.zmrx/$bn
        !           625:                else
        !           626:                        failed=1
        !           627:                fi
        !           628:        done
        !           629:        rmdir $testdir/turbo.zmrx 2>&5
        !           630:        if test $failed = 1 ; then 
        !           631:                echo "turbo-zmrx test failed"
        !           632:                any_failure="$any_failure turbo-zmrx"
        !           633:        fi
        !           634: 
        !           635:        echo "testing turbo -> omen.rz"
        !           636:        mkdir $testdir/turbo.omen.rz
        !           637:        failed=0
        !           638:        ($SZ -qT $SZBUFSIZE $z_test_files ) 2>/dev/null <$testdir/pipe | \
        !           639:                (cd $testdir/turbo.omen.rz ; exec omen.rz >>../pipe)
        !           640:        for i in $z_test_files ; do 
        !           641:                bn=`basename $i`
        !           642:                cmp $i $testdir/turbo.omen.rz/$bn
        !           643:                if test $? -eq 0 ; then
        !           644:                        rm -f $testdir/turbo.omen.rz/$bn
        !           645:                else
        !           646:                        failed=1
        !           647:                fi
        !           648:        done
        !           649:        rmdir $testdir/turbo.omen.rz 2>&5
        !           650:        if test $failed = 1 ; then 
        !           651:                echo "turbo-omen.rz test failed"
        !           652:                any_failure="$any_failure turbo-omen.rz"
        !           653:        fi
        !           654: 
        !           655:        echo "testing turbo -> lrz"
        !           656:        mkdir $testdir/turbo.lrz
        !           657:        failed=0
        !           658:        ($SZ -qT $SZBUFSIZE $z_test_files ) 2>/dev/null <$testdir/pipe | \
        !           659:                (cd $testdir/turbo.lrz ; exec lrz >>../pipe)
        !           660:        for i in $z_test_files ; do 
        !           661:                bn=`basename $i`
        !           662:                cmp $i $testdir/turbo.lrz/$bn
        !           663:                if test $? -eq 0 ; then
        !           664:                        rm -f $testdir/turbo.lrz/$bn
        !           665:                else
        !           666:                        failed=1
        !           667:                fi
        !           668:        done
        !           669:        rmdir $testdir/turbo.omen.rz 2>&5
        !           670:        if test $failed = 1 ; then 
        !           671:                echo "turbo-lrz test failed"
        !           672:                any_failure="$any_failure turbo-lrz"
        !           673:        fi
        !           674: fi
        !           675: 
        !           676: #
        !           677: # startup timing checks
        !           678: #
        !           679: # test lsz -> zm rz (zxrx)
        !           680: if test "$mode" = startup ; then
        !           681: 
        !           682:        echo "testing lsz -> zm rz. lsz sleeps 10 seconds"
        !           683:        mkdir $testdir/startup.1
        !           684:        failed=0
        !           685:        ($SZ --delay-startup 10 -q  $SZBUFSIZE $z_test_files ) 2>/dev/null <$testdir/pipe | \
        !           686:                (cd $testdir/startup.1 ; exec zmrx $QUIET >>../pipe)
        !           687:        for i in $z_test_files ; do 
        !           688:                bn=`basename $i`
        !           689:                cmp $i $testdir/startup.1/$bn
        !           690:                if test $? -eq 0 ; then
        !           691:                        rm -f $testdir/startup.1/$bn
        !           692:                else
        !           693:                        failed=1
        !           694:                fi
        !           695:        done
        !           696:        rmdir $testdir/startup.1 2>&5
        !           697:        if test $failed = 1 ; then 
        !           698:                echo "zm-rz startup-timing test failed"
        !           699:                any_failure="$any_failure zm-rz-startup-timing"
        !           700:        fi
        !           701: 
        !           702:        echo "testing lsz -> omen.rz. lsz sleeps 10 seconds"
        !           703:        mkdir $testdir/startup.2
        !           704:        failed=0
        !           705:        ($SZ --delay-startup 10 -q  $SZBUFSIZE $z_test_files ) 2>/dev/null <$testdir/pipe | \
        !           706:                (cd $testdir/startup.2 ; exec omen.rz $QUIET >>../pipe)
        !           707:        for i in $z_test_files ; do 
        !           708:                bn=`basename $i`
        !           709:                cmp $i $testdir/startup.2/$bn
        !           710:                if test $? -eq 0 ; then
        !           711:                        rm -f $testdir/startup.2/$bn
        !           712:                else
        !           713:                        failed=1
        !           714:                fi
        !           715:        done
        !           716:        rmdir $testdir/startup.2 2>&5
        !           717:        if test $failed = 1 ; then 
        !           718:                echo "omen.rz startup-timing test failed"
        !           719:                any_failure="$any_failure omen-rz-startup-timing"
        !           720:        fi
        !           721: 
        !           722:        echo "testing lsz -> lrz. lsz sleeps 10 seconds"
        !           723:        mkdir $testdir/startup.3
        !           724:        failed=0
        !           725:        ($SZ --delay-startup 10 -q  $SZBUFSIZE $z_test_files ) 2>/dev/null <$testdir/pipe | \
        !           726:                (cd $testdir/startup.3 ; exec $RZ $QUIET >>../pipe)
        !           727:        for i in $z_test_files ; do 
        !           728:                bn=`basename $i`
        !           729:                cmp $i $testdir/startup.3/$bn
        !           730:                if test $? -eq 0 ; then
        !           731:                        rm -f $testdir/startup.3/$bn
        !           732:                else
        !           733:                        failed=1
        !           734:                fi
        !           735:        done
        !           736:        rmdir $testdir/startup.3 2>&5
        !           737:        if test $failed = 1 ; then 
        !           738:                echo "lrz startup-timing test failed"
        !           739:                any_failure="$any_failure lrz-startup-timing"
        !           740:        fi
        !           741: 
        !           742:        echo "testing zmtx -> lrz. lrz sleeps 10 seconds"
        !           743:        mkdir $testdir/startup.4
        !           744:        failed=0
        !           745:        (zmtx $z_test_files ) 2>/dev/null <$testdir/pipe | \
        !           746:                (cd $testdir/startup.4 ; exec $RZ --delay-startup 10 $QUIET >>../pipe)
        !           747:        for i in $z_test_files ; do 
        !           748:                bn=`basename $i`
        !           749:                cmp $i $testdir/startup.4/$bn
        !           750:                if test $? -eq 0 ; then
        !           751:                        rm -f $testdir/startup.4/$bn
        !           752:                else
        !           753:                        failed=1
        !           754:                fi
        !           755:        done
        !           756:        rmdir $testdir/startup.4 2>&5
        !           757:        if test $failed = 1 ; then 
        !           758:                echo "zmtx startup-timing test failed"
        !           759:                any_failure="$any_failure zmtx-startup-timing"
        !           760:        fi
        !           761: 
        !           762:        echo "testing omen.sz -> lrz. lrz sleeps 10 seconds"
        !           763:        mkdir $testdir/startup.5
        !           764:        failed=0
        !           765:        (omen.sz $z_test_files ) 2>/dev/null <$testdir/pipe | \
        !           766:                (cd $testdir/startup.5 ; exec $RZ --delay-startup 10 $QUIET >>../pipe)
        !           767:        for i in $z_test_files ; do 
        !           768:                bn=`basename $i`
        !           769:                cmp $i $testdir/startup.5/$bn
        !           770:                if test $? -eq 0 ; then
        !           771:                        rm -f $testdir/startup.5/$bn
        !           772:                else
        !           773:                        failed=1
        !           774:                fi
        !           775:        done
        !           776:        rmdir $testdir/startup.5 2>&5
        !           777:        if test $failed = 1 ; then 
        !           778:                echo "omen.sz startup-timing test failed"
        !           779:                any_failure="$any_failure omen.sz-startup-timing"
        !           780:        fi
        !           781: 
        !           782:        echo "testing lsz -> lrz. lrz sleeps 10 seconds"
        !           783:        mkdir $testdir/startup.6
        !           784:        failed=0
        !           785:        ($SZ -q $z_test_files ) 2>/dev/null <$testdir/pipe | \
        !           786:                (cd $testdir/startup.6 ; exec $RZ --delay-startup 10 $QUIET >>../pipe)
        !           787:        for i in $z_test_files ; do 
        !           788:                bn=`basename $i`
        !           789:                cmp $i $testdir/startup.6/$bn
        !           790:                if test $? -eq 0 ; then
        !           791:                        rm -f $testdir/startup.6/$bn
        !           792:                else
        !           793:                        failed=1
        !           794:                fi
        !           795:        done
        !           796:        rmdir $testdir/startup.6 2>&5
        !           797:        if test $failed = 1 ; then 
        !           798:                echo "lsz startup-timing test failed"
        !           799:                any_failure="$any_failure lsz-startup-timing"
        !           800:        fi
        !           801: fi
        !           802: 
        !           803: if test "$mode" = stop-at ; then
        !           804:        echo "testing lsz -> lrz. lsz stops after 10 seconds"
        !           805:        mkdir $testdir/stop-at
        !           806:        failed=0
        !           807:        ($SZ --stop-at +10 $z8_test_files ) 2>/dev/null <$testdir/pipe | \
        !           808:                (cd $testdir/stop-at ; exec $RZ $QUIET >>../pipe)
        !           809:        for i in $z8_test_files ; do 
        !           810:                bn=`basename $i`
        !           811:                cmp $i $testdir/stop-at/$bn
        !           812:                if test $? -eq 0 ; then
        !           813:                        rm -f $testdir/stop-at/$bn
        !           814:                else
        !           815:                        failed=1
        !           816:                fi
        !           817:        done
        !           818:        rmdir $testdir/stop-at 2>&5
        !           819:        if test $failed = 1 ; then 
        !           820:                echo "stop-at test failed"
        !           821:                any_failure="$any_failure stop-at"
        !           822:        fi
        !           823: fi
        !           824: 
        !           825: if test "x$any_failure" = x  ; then
        !           826:        :
        !           827: else
        !           828:        echo "the following tests failed:"
        !           829:        echo $any_failure
        !           830:        echo "have a look into `pwd`/$testdir"
        !           831:        exit 1
        !           832: fi
        !           833: 
        !           834: echo "All tests OK."
        !           835: if test "$mode" = all -o "$mode" = abuse ; then
        !           836:        echo
        !           837:        echo "going to tests misuse. Errors are ok, hangs are not!"
        !           838: 
        !           839:        echo
        !           840:        echo "both sides sending:"
        !           841:        $SZ -q $z_test_files <$testdir/pipe | \
        !           842:                ($SZ $z_test_files >>$testdir/pipe )
        !           843: 
        !           844:        echo
        !           845:        echo "both sides receiving:"
        !           846:        $RZ -q <$testdir/pipe | \
        !           847:                ( $RZ >>$testdir/pipe )
        !           848: fi
        !           849: 
        !           850: #rm -rf $testdir
        !           851: exit 0
        !           852: 

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