[PATCH 3/7] test: Use cmp to catch byte-by-byte identical files
"Bryce W. Harrington" <[email protected]>
| Newsgroups | gmane.comp.lib.cairo |
|---|---|
| Message-ID | <5A5FB412583EA944A1D0228D52A9C57263A3F1@sisaex02sj> |
cmp runs faster than perceptualdiff, and catches files that are exact copies of the reference image. We still use perceptualdiff for catching files that aren't bytewise identical, but are still identical at the pixel level. Signed-off-by: Bryce Harrington <[email protected]> --- test/check_refs.sh | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/test/check_refs.sh b/test/check_refs.sh index 649d509..7527523 100755 --- a/test/check_refs.sh +++ b/test/check_refs.sh @@ -47,14 +47,18 @@ for file in *.ref.png; do fi if [ -e $ref ]; then - # Run perceptualdiff with minimum threshold - pdiff_output=$($pdiff $ref $file -threshold 1) - result=${pdiff_output%:*} - notes=$(echo "${pdiff_output#*: }" | tail -n 1) - if [ "$result" = "PASS" ] && [ "$notes" = "Images are binary identical" ]; then - printf "redundant: %s is binary identical to %s\n" $file $ref - notes="" - fi + if cmp --silent "$ref" "$file" ; then + printf "redundant: %s and %s are byte-by-byte identical files\n" $file $ref + else + # Run perceptualdiff with minimum threshold + pdiff_output=$($pdiff $ref $file -threshold 1) + result=${pdiff_output%:*} + notes=$(echo "${pdiff_output#*: }" | tail -n 1) + if [ "$result" = "PASS" ] && [ "$notes" = "Images are binary identical" ]; then + printf "redundant: %s and %s are binary identical images\n" $file $ref + notes="" + fi + fi fi done -- 1.7.9.5 -- Bryce Harrington Senior Open Source Developer - [email protected] Open Source Group - Samsung Research America -- cairo mailing list [email protected] http://lists.cairographics.org/mailman/listinfo/cairo