| Index: Source/core/platform/graphics/DeferredImageDecoderTest.cpp
|
| diff --git a/Source/core/platform/graphics/DeferredImageDecoderTest.cpp b/Source/core/platform/graphics/DeferredImageDecoderTest.cpp
|
| index b495d5bb45d0fc0b51f479e0c98b38b5a8eafddf..850d6c68ca6124dde3a45c93d9db10c93b326259 100644
|
| --- a/Source/core/platform/graphics/DeferredImageDecoderTest.cpp
|
| +++ b/Source/core/platform/graphics/DeferredImageDecoderTest.cpp
|
| @@ -176,6 +176,34 @@ TEST_F(DeferredImageDecoderTest, drawIntoSkPicture)
|
| EXPECT_EQ(SkColorSetARGB(255, 255, 255, 255), canvasBitmap.getColor(0, 0));
|
| }
|
|
|
| +TEST_F(DeferredImageDecoderTest, drawDiscardableIntoSkPicture)
|
| +{
|
| + DeferredImageDecoder::setEnabledSkiaDiscardableMemory(true);
|
| +
|
| + m_lazyDecoder->setData(m_data.get(), true);
|
| + RefPtr<NativeImageSkia> image = m_lazyDecoder->frameBufferAtIndex(0)->asNewNativeImage();
|
| + EXPECT_EQ(1, image->bitmap().width());
|
| + EXPECT_EQ(1, image->bitmap().height());
|
| + EXPECT_FALSE(image->bitmap().isNull());
|
| + EXPECT_TRUE(image->bitmap().isImmutable());
|
| +
|
| + SkCanvas* tempCanvas = m_picture.beginRecording(100, 100);
|
| + tempCanvas->drawBitmap(image->bitmap(), 0, 0);
|
| + m_picture.endRecording();
|
| + EXPECT_EQ(0, m_frameBufferRequestCount);
|
| +
|
| + m_canvas->drawPicture(m_picture);
|
| + EXPECT_EQ(0, m_frameBufferRequestCount);
|
| +
|
| + SkBitmap canvasBitmap;
|
| + canvasBitmap.setConfig(SkBitmap::kARGB_8888_Config, 100, 100);
|
| + ASSERT_TRUE(m_canvas->readPixels(&canvasBitmap, 0, 0));
|
| + SkAutoLockPixels autoLock(canvasBitmap);
|
| + EXPECT_EQ(SkColorSetARGB(255, 255, 255, 255), canvasBitmap.getColor(0, 0));
|
| +
|
| + DeferredImageDecoder::setEnabledSkiaDiscardableMemory(false);
|
| +}
|
| +
|
| TEST_F(DeferredImageDecoderTest, DISABLED_drawScaledIntoSkPicture)
|
| {
|
| m_lazyDecoder->setData(m_data.get(), true);
|
|
|