diff options
Diffstat (limited to 'tests/src/com/android')
-rw-r--r-- | tests/src/com/android/gallery3d/exif/ExifParserTest.java | 26 |
1 files changed, 6 insertions, 20 deletions
diff --git a/tests/src/com/android/gallery3d/exif/ExifParserTest.java b/tests/src/com/android/gallery3d/exif/ExifParserTest.java index c514eb700..6c9d74d51 100644 --- a/tests/src/com/android/gallery3d/exif/ExifParserTest.java +++ b/tests/src/com/android/gallery3d/exif/ExifParserTest.java @@ -20,6 +20,7 @@ import android.content.res.XmlResourceParser; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.test.InstrumentationTestCase; +import android.util.Log; import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; @@ -347,14 +348,13 @@ public class ExifParserTest extends InstrumentationTestCase { while (type != IfdParser.TYPE_END && type != IfdParser.TYPE_NEXT_IFD) { type = ifdParser.next(); } - // We should meet next_ifd before end - assertTrue(type != IfdParser.TYPE_END); - + if (type == IfdParser.TYPE_END) { + Log.i(TAG, "No Thumbnail"); + return; + } IfdParser ifd1Parser = ifdParser.parseIfdBlock(); int thumbOffset = 0; int thumbSize = 0; - int width = 0; - int height = 0; boolean isFinishRead = false; while (!isFinishRead) { switch (ifd1Parser.next()) { @@ -369,20 +369,8 @@ public class ExifParserTest extends InstrumentationTestCase { long unsignedInt = ifdParser.readUnsignedInt(); assertTrue(unsignedInt <= Integer.MAX_VALUE); thumbSize = (int) unsignedInt; - } else if (tag.getTagId() == ExifTag.TIFF_TAG.TAG_IMAGE_WIDTH) { - long unsigned = tag.getDataType() == ExifTag.TYPE_INT ? - ifd1Parser.readUnsignedInt() : ifd1Parser.readUnsignedShort(); - assertTrue(unsigned <= (tag.getDataType() == ExifTag.TYPE_INT ? - Integer.MAX_VALUE: Short.MAX_VALUE)); - width = (int) unsigned; - } else if (tag.getTagId() == ExifTag.TIFF_TAG.TAG_IMAGE_HEIGHT) { - long unsigned = tag.getDataType() == ExifTag.TYPE_INT ? - ifd1Parser.readUnsignedInt() : ifd1Parser.readUnsignedShort(); - assertTrue(unsigned <= (tag.getDataType() == ExifTag.TYPE_INT ? - Integer.MAX_VALUE: Short.MAX_VALUE)); - height = (int) unsigned; } - isFinishRead = thumbOffset != 0 && thumbSize != 0 && width != 0 && height != 0; + isFinishRead = thumbOffset != 0 && thumbSize != 0; break; case IfdParser.TYPE_END: fail("No thumbnail information found"); @@ -396,8 +384,6 @@ public class ExifParserTest extends InstrumentationTestCase { Bitmap bmp = BitmapFactory.decodeByteArray(buf, 0, thumbSize); // Check correctly decoded assertTrue(bmp != null); - assertEquals(width, bmp.getWidth()); - assertEquals(height, bmp.getHeight()); } @Override |