[BACK]Return to regress.sh CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / mandoc / regress

Annotation of mandoc/regress/regress.sh, Revision 1.6

1.1       joerg       1: #!/bin/sh
                      2:
                      3: MANDOC=${MANDOC:-../mandoc}
                      4: NROFF=${NROFF:-nroff}
                      5: OUTPUT=${NROFF_OUTPUT:--Tascii}
                      6:
1.6     ! kristaps    7: if [ ! -x $MANDOC ]
        !             8: then
        !             9:        echo "regress.sh: command not found: $MANDOC" 1>&2
        !            10:        return 0
        !            11: fi
        !            12:
1.1       joerg      13: check_skip_list() {
                     14:        [ -f skip_list ] || return 1
                     15:        while read file; do
                     16:                [ "$file" != "$1" ] || return 0
                     17:        done < skip_list
                     18:        return 1
                     19: }
                     20:
                     21: rm -rf output
                     22:
                     23: echo "Starting regression tests..."
                     24: pass=0
                     25: failed=0
1.3       kristaps   26: for file in */*.in */*/*.in; do
1.1       joerg      27:        [ -f "$file" ] || continue
                     28:        check_skip_list "$file" && break
                     29:        printf "%s: " "$file"
1.3       kristaps   30:        ${MANDOC} "$file" > test.mandoc 2> /dev/null
1.1       joerg      31:        ${NROFF} ${OUTPUT} -mandoc "$file" > test.nroff 2> /dev/null
1.5       joerg      32:        l=`wc -l < test.mandoc`
                     33:        head -n `expr $l - 1` test.mandoc | tail -n `expr $l - 2` > test.mandoc_
                     34:        l=`wc -l < test.nroff`
                     35:        head -n `expr $l - 1` test.nroff| tail -n `expr $l - 2` > test.nroff_
                     36:        if cmp -s test.mandoc_ test.nroff_; then
1.2       joerg      37:                rm -f test.mandoc test.nroff
1.1       joerg      38:                echo "passed"
                     39:                pass=`expr $pass + 1`
                     40:        else
                     41:                file2="output/$file"
                     42:                mkdir -p `dirname $file2`
                     43:                echo "failed, see $file2"
                     44:                failed=`expr $failed + 1`
                     45:                mv test.nroff "${file2}".nroff
                     46:                mv test.mandoc "${file2}".mandoc
                     47:                diff -u "${file2}".nroff "${file2}".mandoc > "${file2}".diff
                     48:        fi
                     49: done
1.5       joerg      50: rm -f test.mandoc_ test.nroff_
1.1       joerg      51: echo "Total: $pass passed, $failed failed"

CVSweb