Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / web / tests / Canvas2DLayerBridgeTest.cpp
index 341aa32..9d1b37c 100644 (file)
@@ -30,6 +30,7 @@
 #include "SkSurface.h"
 #include "platform/graphics/ImageBuffer.h"
 #include "public/platform/Platform.h"
+#include "public/platform/WebGraphicsContext3DProvider.h"
 #include "public/platform/WebThread.h"
 #include "third_party/skia/include/core/SkDevice.h"
 #include "web/tests/MockWebGraphicsContext3D.h"
@@ -53,6 +54,25 @@ public:
     MOCK_METHOD1(deleteTexture, void(unsigned));
 };
 
+class MockWebGraphicsContext3DProvider : public WebGraphicsContext3DProvider {
+public:
+    MockWebGraphicsContext3DProvider(WebGraphicsContext3D* context3d)
+        : m_context3d(context3d) { }
+
+    WebGraphicsContext3D* context3d()
+    {
+        return m_context3d;
+    }
+
+    GrContext* grContext()
+    {
+        return 0;
+    }
+
+private:
+    WebGraphicsContext3D* m_context3d;
+};
+
 class Canvas2DLayerBridgePtr {
 public:
     Canvas2DLayerBridgePtr(PassRefPtr<Canvas2DLayerBridge> layerBridge)
@@ -77,14 +97,13 @@ protected:
     void fullLifecycleTest()
     {
         MockCanvasContext mainMock;
-        RefPtr<GraphicsContext3D> mainContext = GraphicsContext3D::createContextSupport(&mainMock);
-
+        OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock));
         OwnPtr<SkDeferredCanvas> canvas = adoptPtr(SkDeferredCanvas::Create(SkSurface::NewRasterPMColor(300, 150)));
 
         ::testing::Mock::VerifyAndClearExpectations(&mainMock);
 
         {
-            Canvas2DLayerBridgePtr bridge(adoptRef(new Canvas2DLayerBridge(mainContext.release(), canvas.release(), 0, NonOpaque)));
+            Canvas2DLayerBridgePtr bridge(adoptRef(new Canvas2DLayerBridge(mainMockProvider.release(), canvas.release(), 0, NonOpaque)));
 
             ::testing::Mock::VerifyAndClearExpectations(&mainMock);