|
@@ -15,17 +15,26 @@ fuzz=$8 |
|
|
outdir="tests/data/fate" |
|
|
outdir="tests/data/fate" |
|
|
outfile="${outdir}/${test}" |
|
|
outfile="${outdir}/${test}" |
|
|
|
|
|
|
|
|
oneoff(){ |
|
|
|
|
|
|
|
|
do_tiny_psnr(){ |
|
|
psnr=$(tests/tiny_psnr "$1" "$2" 2 0 0) |
|
|
psnr=$(tests/tiny_psnr "$1" "$2" 2 0 0) |
|
|
max=$(expr "$psnr" : '.*MAXDIFF: *\([0-9]*\)') |
|
|
|
|
|
|
|
|
val=$(expr "$psnr" : ".*$3: *\([0-9.]*\)") |
|
|
size1=$(expr "$psnr" : '.*bytes: *\([0-9]*\)') |
|
|
size1=$(expr "$psnr" : '.*bytes: *\([0-9]*\)') |
|
|
size2=$(expr "$psnr" : '.*bytes:[ 0-9]*/ *\([0-9]*\)') |
|
|
size2=$(expr "$psnr" : '.*bytes:[ 0-9]*/ *\([0-9]*\)') |
|
|
if [ $max -gt ${3:-1} ] || [ $size1 != $size2 ]; then |
|
|
|
|
|
|
|
|
res=$(echo "$val $4 $5" | bc) |
|
|
|
|
|
if [ "$res" != 1 ] || [ $size1 != $size2 ]; then |
|
|
echo "$psnr" |
|
|
echo "$psnr" |
|
|
return 1 |
|
|
return 1 |
|
|
fi |
|
|
fi |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
oneoff(){ |
|
|
|
|
|
do_tiny_psnr "$1" "$2" MAXDIFF '<=' ${fuzz:-1} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
stddev(){ |
|
|
|
|
|
do_tiny_psnr "$1" "$2" stddev '<=' ${fuzz:-1} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
if ! test -e "$ref"; then |
|
|
if ! test -e "$ref"; then |
|
|
echo "reference file '$ref' not found" |
|
|
echo "reference file '$ref' not found" |
|
|
exit 1 |
|
|
exit 1 |
|
@@ -38,6 +47,7 @@ eval $target_exec $command > "$outfile" 2>/dev/null || exit |
|
|
case $cmp in |
|
|
case $cmp in |
|
|
diff) diff -u -w "$ref" "$outfile" ;; |
|
|
diff) diff -u -w "$ref" "$outfile" ;; |
|
|
oneoff) oneoff "$ref" "$outfile" "$fuzz" ;; |
|
|
oneoff) oneoff "$ref" "$outfile" "$fuzz" ;; |
|
|
|
|
|
stddev) stddev "$ref" "$outfile" "$fuzz" ;; |
|
|
esac |
|
|
esac |
|
|
|
|
|
|
|
|
test $? = 0 && rm $outfile |
|
|
test $? = 0 && rm $outfile |