diff options
author | Owen Lin <owenlin@android.com> | 2012-08-06 19:51:30 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2012-08-06 19:51:32 -0700 |
commit | f5592d983ebb0a1bb9822b6aed0f2935a581cfbd (patch) | |
tree | 3acee24d3dc42c0db0af475d9f25d81ba527b1f8 | |
parent | dabfa4c76ea265d3e5a50711612ec55230a93b98 (diff) | |
parent | 4285894ea4facfae76ff57df97f4fd8342608bd4 (diff) | |
download | android_packages_apps_Snap-f5592d983ebb0a1bb9822b6aed0f2935a581cfbd.tar.gz android_packages_apps_Snap-f5592d983ebb0a1bb9822b6aed0f2935a581cfbd.tar.bz2 android_packages_apps_Snap-f5592d983ebb0a1bb9822b6aed0f2935a581cfbd.zip |
Merge "Test only keep some exif tags for value" into gb-ub-photos-arches
-rw-r--r-- | tests/src/com/android/gallery3d/exif/ExifParserTest.java | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/src/com/android/gallery3d/exif/ExifParserTest.java b/tests/src/com/android/gallery3d/exif/ExifParserTest.java index 0c160f21a..2e92231de 100644 --- a/tests/src/com/android/gallery3d/exif/ExifParserTest.java +++ b/tests/src/com/android/gallery3d/exif/ExifParserTest.java @@ -285,6 +285,38 @@ public class ExifParserTest extends ActivityTestCase { } } + public void testOnlySaveSomeValue() throws ExifInvalidFormatException, IOException { + ExifParser exifParser = new ExifParser(); + IfdParser ifdParser = exifParser.parse(mImageInputStream); + int type = ifdParser.next(); + while (type != IfdParser.TYPE_END) { + switch (type) { + case IfdParser.TYPE_NEW_TAG: + ExifTag tag = ifdParser.readTag(); + // only interested in these two tags + if (tag.getOffset() > 0) { + if(tag.getTagId() == ExifTag.TIFF_TAG.TAG_MODEL + || tag.getTagId() == ExifTag.TIFF_TAG.TAG_EXIF_IFD) { + ifdParser.waitValueOfTag(tag); + } + } + break; + case IfdParser.TYPE_NEXT_IFD: + parseIfd1(ifdParser.parseIfdBlock()); + break; + case IfdParser.TYPE_SUB_IFD: + assertEquals(ExifTag.TIFF_TAG.TAG_EXIF_IFD, + ifdParser.getCorrespodingExifTag().getTagId()); + parseExifIfd(ifdParser.parseIfdBlock()); + break; + case IfdParser.TYPE_VALUE_OF_PREV_TAG: + checkTag(ifdParser.getCorrespodingExifTag(), ifdParser, IFD0_VALUE); + break; + } + type = ifdParser.next(); + } + } + @Override protected void tearDown() throws IOException { mImageInputStream.close(); |