| Index: Source/web/tests/WebFrameTest.cpp
|
| diff --git a/Source/web/tests/WebFrameTest.cpp b/Source/web/tests/WebFrameTest.cpp
|
| index 890bb5b1ca09794147879f80db02198e4e1c44e2..74111c6b58ccb1dad8f21a180fce3e6b3883e1f5 100644
|
| --- a/Source/web/tests/WebFrameTest.cpp
|
| +++ b/Source/web/tests/WebFrameTest.cpp
|
| @@ -57,6 +57,7 @@
|
| #include "core/rendering/RenderView.h"
|
| #include "core/rendering/TextAutosizer.h"
|
| #include "core/rendering/compositing/RenderLayerCompositor.h"
|
| +#include "platform/DragImage.h"
|
| #include "platform/UserGestureIndicator.h"
|
| #include "platform/geometry/FloatRect.h"
|
| #include "platform/network/ResourceError.h"
|
| @@ -5449,4 +5450,40 @@ TEST_F(WebFrameTest, NotifyManifestChange)
|
| EXPECT_EQ(14, webFrameClient.manifestChangeCount());
|
| }
|
|
|
| +TEST_F(WebFrameTest, NodeImageTest)
|
| +{
|
| + registerMockedHttpURLLoad("nodeimage.html");
|
| +
|
| + FixedLayoutTestWebViewClient client;
|
| + client.m_screenInfo.deviceScaleFactor = 1;
|
| + int viewportWidth = 100;
|
| + int viewportHeight = 100;
|
| +
|
| + FrameTestHelpers::WebViewHelper webViewHelper;
|
| + webViewHelper.initializeAndLoad(m_baseURL + "nodeimage.html", true, 0, &client);
|
| + webViewHelper.webView()->settings()->setViewportEnabled(true);
|
| + webViewHelper.webView()->resize(WebSize(viewportWidth, viewportHeight));
|
| + webViewHelper.webView()->layout();
|
| +
|
| + SkBitmap bitmap;
|
| + ASSERT_TRUE(bitmap.allocN32Pixels(40, 40));
|
| + SkCanvas canvas(bitmap);
|
| + canvas.drawColor(SK_ColorGREEN);
|
| +
|
| + RefPtr<WebCore::LocalFrame> frame = webViewHelper.webViewImpl()->page()->mainFrame();
|
| +
|
| + // Sub Test 1
|
| + {
|
| + WebCore::Element* element = frame->document()->getElementById("case-css-transform");
|
| + OwnPtr<WebCore::DragImage> dragImage = frame->nodeImage(*element);
|
| + EXPECT_TRUE(dragImage);
|
| + EXPECT_EQ(40, dragImage->size().width());
|
| + EXPECT_EQ(40, dragImage->size().height());
|
| + const SkBitmap& dragBitmap = dragImage->bitmap();
|
| + SkAutoLockPixels lockPixel(dragBitmap);
|
| + EXPECT_EQ(0, memcmp(bitmap.getPixels(), dragBitmap.getPixels(), bitmap.getSize()));
|
| + }
|
| +
|
| +}
|
| +
|
| } // namespace
|
|
|