From: Dan F. <dfa...@us...> - 2010-03-18 20:45:03
|
Update of /cvsroot/libexif/libexif-testsuite/tests In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv7438 Modified Files: check-all-mandatory-tags.sh check-readwrite-identity.sh image-info.sh Log Message: Handle test images that contain missing mandatory tags Index: image-info.sh =================================================================== RCS file: /cvsroot/libexif/libexif-testsuite/tests/image-info.sh,v retrieving revision 1.1 retrieving revision 1.2 diff -u -p -d -r1.1 -r1.2 --- image-info.sh 17 Dec 2009 07:09:58 -0000 1.1 +++ image-info.sh 18 Mar 2010 20:44:51 -0000 1.2 @@ -32,7 +32,22 @@ unsortedtags () { # not recognized by libexif (i.e. the input file is corrupt and not to spec). unknowntags () { case "$1" in - *Panasonic_DMC-G1.jpg) + *Panasonic_DMC-G1.jpg | \ + *digiKam.jpg) + return 0 # Input file has unknown tags + ;; + esac + return 1 # normal image +} + +# Function that returns true when the given file is missing tags that are +# mandatory in the EXIF specification (i.e. the input file is corrupt +# and not to spec). +missingtags () { + case "$1" in + *Arcsoft_Webcam_Companion.jpg | \ + *Motorola_Milestone.jpg | \ + *digiKam.jpg) return 0 # Input file has unknown tags ;; esac Index: check-readwrite-identity.sh =================================================================== RCS file: /cvsroot/libexif/libexif-testsuite/tests/check-readwrite-identity.sh,v retrieving revision 1.4 retrieving revision 1.5 diff -u -p -d -r1.4 -r1.5 --- check-readwrite-identity.sh 17 Dec 2009 07:09:58 -0000 1.4 +++ check-readwrite-identity.sh 18 Mar 2010 20:44:51 -0000 1.5 @@ -74,9 +74,13 @@ do # Compare the tag output of the original and copied files. canonicalize "$tmpfile" canonicalize "$tmpfile2" - if unsortedtags "${img}"; then + if unsortedtags "${img}" || missingtags "${img}"; then # If input file is not to spec and its tags are not sorted, - # sort the before and after files so they will compare equal + # sort the before and after files so they will compare equal. + # + # If input file is not to spec and is missing mandatory tags, + # exif will add them but they may be displayed out of order, + # so sort them both so they will compare equal. echo Sorting tags on out-of-spec image sort -o "$tmpfile" "$tmpfile" sort -o "$tmpfile2" "$tmpfile2" Index: check-all-mandatory-tags.sh =================================================================== RCS file: /cvsroot/libexif/libexif-testsuite/tests/check-all-mandatory-tags.sh,v retrieving revision 1.1 retrieving revision 1.2 diff -u -p -d -r1.1 -r1.2 --- check-all-mandatory-tags.sh 22 Jan 2009 07:47:50 -0000 1.1 +++ check-all-mandatory-tags.sh 18 Mar 2010 20:44:51 -0000 1.2 @@ -40,6 +40,11 @@ do total_img=$(expr $total_img + 1) echo -n "#${total_img} " + if missingtags "${img}"; then + echo "Skipping image missing mandatory tags: ${img}" + continue + fi + # Capture the debug logs echo -n "Reading image \`${img}'..." # Run this in the C language locale so the messages are known |