This directory contains images for testing the FirefoxOS Gallery app. It also contains: README: this file creator.html: a simple web page that helps create test images push.sh: A shell script for pushing the test images to your phone in the right order and with different timestamps so that they appear in numerical order when scanned by the Gallery app. This script assumes that the sdcard is at /storage/sdcard0. It works for the Flame device but may not work for others. To test the Gallery app manually with these images, follow these steps: 1) Push the images to your phone by typing ./push.sh 2) Launch the gallery app. 3) Ensure that: - the Gallery app scans for the test photos - the app does not crash with an OOM - the scanning process stops - after the scan, there should be 66 new images in Gallery. The first 63 and 66 display the numbers 1 to 63, 66 respectively and the 64, 65 are test patterns. For some images, the image number is not visible in the thumbnail and you have to tap on the thumbnail to verify. - If any of the 66 images is missing, that is a bug - If additional images appear that may also be a bug 4) Hold the phone in portrait orientation. Tap on the first thumbnail, and swipe through the full set of images. Ensure that: - There is no OOM while swiping - Images 39 to 58 are all displayed with their text right-side up - The images are all centered on the screen 5) Turn the phone to landscape mode and swipe back in the other direction to ensure that all of the images display correctly in this orientation as well 6) Now swipe again from image 14 through image 33. For each one, double-tap to zoom in and then swipe (or double tap to zoom back out and swipe). This should not cause an OOM even if you do it as quickly as you can. 7) Check a few special-case images: - Image 6 has a transparent background, but it should be readable - Images 7 and 8 should be animated (but their thumbnails won't be) - Image 59 should change when you zoom in to it. (It has an EXIF preview that does not match the actual image, and we use it to test that the EXIF preview is used when available. It is a bug if this image does not change when you zoom in.) Here are some more details about what the various images are and what they are intended to test. The first batch of images tests various image types to be sure we can display them. 01.jpg: jpeg image 02.png: png image 03.gif: gif image 04.bmp: bmp image 05.jpg: progressive jpeg 06.png: png with transparent bg 07.gif: animated gif 08.png: animated png Next, we test that we can display PNG images of various sizes 09.png: icon 128x128 10.png: hvga 320x480 11.png: wvga 480x768 12.png: fwvga: 480x854 13.png: dvga: 640x960 The next batch of images are jpegs with sizes between 1 megapixel and 64 megapixels. Gallery should be able to scan, create thumbnails, and display all of these images without OOMs. Of course, it is not expected to display the big images at full resolution. It should be possible to double-tap to zoom in on all of these images without an OOM. 14.jpg - 27.jpg: 1 to 14 mp jpeg files 28.jpg: 16mp 29.jpg: 20mp 30.jpg: 24mp 31.jpg: 32mp 32.jpg: 48mp 33.jpg: 64mp Now we test that images of various aspect ratios can be displayed correctly 34.png: large portrait mode png 35.png: large landscape mode png 36.png: large square 37.png: wide 38.png: tall Next we test that we can handle EXIF orientation in JPEG images correctly. First there is a set of 8 images that should all be displayed in portrait mode. Then 8 that should all be displayed in landscape mode. Then four actual photos from the Tarako device that use EXIF orientation. In all 20 of these images, the text should be right side up and legible. 39-46.jpg: EXIF orientations 1-8, portrait 47-54.jpg: EXIF orientations 1-8, landscape 55-58.jpg: pictures from Tarako Next is a series of JPEG images that test our use of EXIF preview images. Image 59 has a preview image that is different than the real image. You should see it change if you double-tap to zoom in. This tests that we are using previews when they are valid. The remaining four images have invalid or corrupt EXIF previews and should not display a preview. 59.jpg: image with valid exif preview that changes when zoomed 60.jpg: exif preview is too small, should never see it (thumbnail only?) 61.jpg: exif preview has wrong aspect ratio should never see it 62.jpg: exif preview is corrupt should not crash or hang the scan 63.jpg: exif preview is corrupt and has no metadata We end with two test patterns. These might be useful for looking at the quality of our image downsampling. 64.png: test pattern 65.jpg: test pattern 66.jpg: JPEG image with size 90 x 40 smaller than thumbnail container Finally, there is a set of images that should not display in the gallery app. These will be rejected during scanning, and error messages will be printed in the logcat. The first four images don't display because they are too large. If they appear, it probably means you're running a high-end device with a different maximum image size configuration. The other images are actually corrupt and can not display. They are here to ensure that the metadata scanner does not choke on them. x01.png: png that is > 5mp x02.gif: gif that is > 5mp x03.jpg: pjpeg that is > 3.33mp x04.bmp: bmp that has file size > 500kb x05.png: a zero length file x06.jpg: a text file that has an image extension x07.jpg: a corrupt jpeg file (a zero byte change. gecko can't display it) x08.jpg: truncated jpeg x09.png: truncated png x10.gif: truncated gif x11.bmp: truncated bmp