***Disables swizzles to 565.
We may want to enable swizzles to 565
for images that are encoded in a format
similar to 565, however, we do not want
to take images that decode naturally to
kN32 and then convert them to 565.
***Enable swizzles to kIndex_8. For images
encoded in a color table format, we suggest
that they be decoded to kIndex_8. When we
decode, we only allow conversion to kIndex_8
if it matches the suggested color type (except
wbmp which seems good as is).
***Modify dm to test images that decode to
kIndex_8.
BUG=skia:3257
BUG=skia:3440
Review URL: https://codereview.chromium.org/1055743003
diff --git a/tests/CodexTest.cpp b/tests/CodexTest.cpp
index 26846a4..a771716 100644
--- a/tests/CodexTest.cpp
+++ b/tests/CodexTest.cpp
@@ -41,7 +41,12 @@
ERRORF(r, "Unable to decode '%s'", path);
return;
}
- SkImageInfo info = codec->getInfo();
+
+ // This test is used primarily to verify rewinding works properly. Using kN32 allows
+ // us to test this without the added overhead of creating different bitmaps depending
+ // on the color type (ex: building a color table for kIndex8). DM is where we test
+ // decodes to all possible destination color types.
+ SkImageInfo info = codec->getInfo().makeColorType(kN32_SkColorType);
REPORTER_ASSERT(r, info.dimensions() == size);
SkBitmap bm;
bm.allocPixels(info);
@@ -94,6 +99,11 @@
// Decodes an embedded PNG image
check(r, "google_chrome.ico", SkISize::Make(256, 256), false);
+ // GIF
+ check(r, "box.gif", SkISize::Make(200, 55), false);
+ check(r, "color_wheel.gif", SkISize::Make(128, 128), false);
+ check(r, "randPixels.gif", SkISize::Make(8, 8), false);
+
// PNG
check(r, "arrow.png", SkISize::Make(187, 312), true);
check(r, "baby_tux.png", SkISize::Make(240, 246), true);