Index: tests/CodexTest.cpp |
diff --git a/tests/CodexTest.cpp b/tests/CodexTest.cpp |
index 96d03c1f126aa15214db0378c9f2290bb0a72fa1..2768d57cfc392de03d58dbe07212a90e5f07a077 100644 |
--- a/tests/CodexTest.cpp |
+++ b/tests/CodexTest.cpp |
@@ -9,6 +9,7 @@ |
#include "SkAndroidCodec.h" |
#include "SkBitmap.h" |
#include "SkCodec.h" |
+#include "SkCodecImageGenerator.h" |
#include "SkData.h" |
#include "SkImageDecoder.h" |
#include "SkMD5.h" |
@@ -379,6 +380,18 @@ static void check(skiatest::Reporter* r, |
&scaledCodecDigest, &codecDigest); |
} |
+ // Test SkCodecImageGenerator |
+ if (!isIncomplete) { |
+ SkAutoTDelete<SkStream> stream(resource(path)); |
+ SkAutoTUnref<SkData> fullData(SkData::NewFromStream(stream, stream->getLength())); |
+ SkAutoTDelete<SkImageGenerator> gen(SkCodecImageGenerator::NewFromEncodedCodec(fullData)); |
+ SkBitmap bm; |
+ bm.allocPixels(info); |
+ SkAutoLockPixels autoLockPixels(bm); |
+ REPORTER_ASSERT(r, gen->getPixels(info, bm.getPixels(), bm.rowBytes())); |
+ compare_to_good_digest(r, codecDigest, bm); |
+ } |
+ |
// If we've just tested incomplete decodes, let's run the same test again on full decodes. |
if (isIncomplete) { |
check(r, path, size, supportsScanlineDecoding, supportsSubsetDecoding, false); |