Test decoding the bounds in skimage.

Test that the bounds match the bounds from doing a pixel decode.

R=djsollen@google.com

Review URL: https://codereview.chromium.org/19587003

git-svn-id: http://skia.googlecode.com/svn/trunk@10164 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/tools/skimage_main.cpp b/tools/skimage_main.cpp
index 6cfc36c..ef5c133 100644
--- a/tools/skimage_main.cpp
+++ b/tools/skimage_main.cpp
@@ -327,6 +327,22 @@
         return;
     }
 
+    // Test decoding just the bounds. The bounds should always match.
+    {
+        stream.rewind();
+        SkBitmap dim;
+        if (!codec->decode(&stream, &dim, SkImageDecoder::kDecodeBounds_Mode)) {
+            SkString failure = SkStringPrintf("failed to decode bounds for %s", srcPath);
+            gDecodeFailures.push_back() = failure;
+        } else {
+            // Now check that the bounds match:
+            if (dim.width() != bitmap.width() || dim.height() != bitmap.height()) {
+                SkString failure = SkStringPrintf("bounds do not match for %s", srcPath);
+                gDecodeFailures.push_back() = failure;
+            }
+        }
+    }
+
     if (compare_to_expectations_if_necessary(bitmap, filename, &gDecodeFailures)) {
         gSuccessfulDecodes.push_back().printf("%s [%d %d]", srcPath, bitmap.width(),
                                               bitmap.height());