#/bin/sh # script to smoke check the renderer against known files # define the parameters of the run TESTS=$(find ../tests/ -type f) TESTS=../tests/pcl/pcl5cfts/fts.* EXE=./language_switch/obj/pspcl6 #EXE=./main/obj/gpcl6 OPTS="-dNOPAUSE -sDEVICE=ppmraw -r100" BASELINE=tools/smoke_baseline.txt # check for baseline and test files if ! test -r $BASELINE; then echo "Couldn't find baseline data file '$BASELINE'" exit 1 fi if test -z "$TESTS"; then echo "no test files found" exit 1 fi # loop over the test files comparing checksums all=0 failed=0 for file in $TESTS; do echo -n "$file: " fsum=`md5sum $file | cut -f 1 -d ' '` result=`$EXE $OPTS -sOutputFile="|md5sum" $file` rsum=`echo $result | cut -f 1 -d ' '` bsumline=`cat $BASELINE | egrep ^$fsum` if test -z "$bsumline"; then echo "file doesn't exist in baseline" else all=`expr $all + 1` bsum=`echo $bsumline | cut -f 2 -d ' '` if test "x$rsum" = "x$bsum"; then echo "ok" else echo "DIFFERS" # echo $rsum vs $bsum" failed=`expr $failed + 1` fi fi done # report if test $failed -gt 0; then echo "differences in $failed of $all files" else echo "all known files match" fi