Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1305)

Unified Diff: third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridgeTest.cpp

Issue 1790753002: Expose GLES2Interface to blink, and delete isContextLost() from WGC3D. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: wgc3d: deps-for-tests Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridgeTest.cpp
diff --git a/third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridgeTest.cpp b/third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridgeTest.cpp
index 89f071d01b3b91d47bd63b0835972e4743364a8f..2508eaf257d64132df9a592fb0f466c81607142a 100644
--- a/third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridgeTest.cpp
+++ b/third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridgeTest.cpp
@@ -26,11 +26,13 @@
#include "SkSurface.h"
#include "base/memory/scoped_ptr.h"
+#include "gpu/command_buffer/client/gles2_interface.h"
#include "platform/Task.h"
#include "platform/ThreadSafeFunctional.h"
#include "platform/WaitableEvent.h"
#include "platform/graphics/ImageBuffer.h"
#include "platform/graphics/UnacceleratedImageBufferSurface.h"
+#include "platform/graphics/test/MockGLES2Interface.h"
#include "platform/graphics/test/MockWebGraphicsContext3D.h"
#include "public/platform/Platform.h"
#include "public/platform/WebExternalBitmap.h"
@@ -68,8 +70,9 @@ public:
class MockWebGraphicsContext3DProvider : public WebGraphicsContext3DProvider {
public:
- MockWebGraphicsContext3DProvider(WebGraphicsContext3D* context3d)
+ MockWebGraphicsContext3DProvider(WebGraphicsContext3D* context3d, gpu::gles2::GLES2Interface* gl)
: m_context3d(context3d)
+ , m_gl(gl)
{
scoped_ptr<SkGLContext> glContext(SkNullGLContext::Create());
glContext->makeCurrent();
@@ -86,8 +89,14 @@ public:
return m_grContext.get();
}
+ gpu::gles2::GLES2Interface* contextGL() override
+ {
+ return m_gl;
+ }
+
private:
WebGraphicsContext3D* m_context3d;
+ gpu::gles2::GLES2Interface* m_gl;
RefPtr<GrContext> m_grContext;
};
@@ -153,7 +162,8 @@ protected:
void fullLifecycleTest()
{
MockCanvasContext mainMock;
- OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock));
+ MockGLES2Interface mockGL;
+ OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock, &mockGL));
::testing::Mock::VerifyAndClearExpectations(&mainMock);
@@ -174,12 +184,13 @@ protected:
void fallbackToSoftwareIfContextLost()
{
MockCanvasContext mainMock;
- OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock));
+ MockGLES2Interface mockGL;
+ OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock, &mockGL));
::testing::Mock::VerifyAndClearExpectations(&mainMock);
{
- mainMock.fakeContextLost();
+ mockGL.setIsContextLost(true);
Canvas2DLayerBridgePtr bridge(adoptRef(new Canvas2DLayerBridge(mainMockProvider.release(), IntSize(300, 150), 0, NonOpaque, Canvas2DLayerBridge::EnableAcceleration)));
::testing::Mock::VerifyAndClearExpectations(&mainMock);
EXPECT_TRUE(bridge->checkSurfaceValid());
@@ -198,7 +209,8 @@ protected:
{
// No fallback case
- OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock));
+ MockGLES2Interface mockGL;
+ OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock, &mockGL));
Canvas2DLayerBridgePtr bridge(adoptRef(new Canvas2DLayerBridge(mainMockProvider.release(), IntSize(300, 150), 0, NonOpaque, Canvas2DLayerBridge::EnableAcceleration)));
::testing::Mock::VerifyAndClearExpectations(&mainMock);
EXPECT_TRUE(bridge->checkSurfaceValid());
@@ -211,7 +223,8 @@ protected:
{
// Fallback case
- OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock));
+ MockGLES2Interface mockGL;
+ OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock, &mockGL));
GrContext* gr = mainMockProvider->grContext();
Canvas2DLayerBridgePtr bridge(adoptRef(new Canvas2DLayerBridge(mainMockProvider.release(), IntSize(300, 150), 0, NonOpaque, Canvas2DLayerBridge::EnableAcceleration)));
::testing::Mock::VerifyAndClearExpectations(&mainMock);
@@ -230,7 +243,8 @@ protected:
void noDrawOnContextLostTest()
{
MockCanvasContext mainMock;
- OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock));
+ MockGLES2Interface mockGL;
+ OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock, &mockGL));
::testing::Mock::VerifyAndClearExpectations(&mainMock);
@@ -242,7 +256,7 @@ protected:
uint32_t genID = bridge->getOrCreateSurface()->generationID();
bridge->canvas()->drawRect(SkRect::MakeXYWH(0, 0, 1, 1), paint);
EXPECT_EQ(genID, bridge->getOrCreateSurface()->generationID());
- mainMock.fakeContextLost();
+ mockGL.setIsContextLost(true);
EXPECT_EQ(genID, bridge->getOrCreateSurface()->generationID());
bridge->canvas()->drawRect(SkRect::MakeXYWH(0, 0, 1, 1), paint);
EXPECT_EQ(genID, bridge->getOrCreateSurface()->generationID());
@@ -260,7 +274,8 @@ protected:
void prepareMailboxWithBitmapTest()
{
MockCanvasContext mainMock;
- OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock));
+ MockGLES2Interface mockGL;
+ OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock, &mockGL));
Canvas2DLayerBridgePtr bridge(adoptRef(new Canvas2DLayerBridge(mainMockProvider.release(), IntSize(300, 150), 0, NonOpaque, Canvas2DLayerBridge::ForceAccelerationForTesting)));
bridge->m_lastImageId = 1;
@@ -272,13 +287,14 @@ protected:
void prepareMailboxAndLoseResourceTest()
{
MockCanvasContext mainMock;
+ MockGLES2Interface mockGL;
bool lostResource = true;
// Prepare a mailbox, then report the resource as lost.
// This test passes by not crashing and not triggering assertions.
{
WebExternalTextureMailbox mailbox;
- OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock));
+ OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock, &mockGL));
Canvas2DLayerBridgePtr bridge(adoptRef(new Canvas2DLayerBridge(mainMockProvider.release(), IntSize(300, 150), 0, NonOpaque, Canvas2DLayerBridge::ForceAccelerationForTesting)));
bridge->prepareMailbox(&mailbox, 0);
bridge->mailboxReleased(mailbox, lostResource);
@@ -286,7 +302,7 @@ protected:
// Retry with mailbox released while bridge destruction is in progress
{
- OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock));
+ OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock, &mockGL));
WebExternalTextureMailbox mailbox;
Canvas2DLayerBridge* rawBridge;
{
@@ -303,9 +319,10 @@ protected:
void accelerationHintTest()
{
MockCanvasContext mainMock;
+ MockGLES2Interface mockGL;
{
- OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock));
+ OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock, &mockGL));
::testing::Mock::VerifyAndClearExpectations(&mainMock);
Canvas2DLayerBridgePtr bridge(adoptRef(new Canvas2DLayerBridge(mainMockProvider.release(), IntSize(300, 300), 0, NonOpaque, Canvas2DLayerBridge::EnableAcceleration)));
::testing::Mock::VerifyAndClearExpectations(&mainMock);
@@ -319,7 +336,7 @@ protected:
::testing::Mock::VerifyAndClearExpectations(&mainMock);
{
- OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock));
+ OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(&mainMock, &mockGL));
::testing::Mock::VerifyAndClearExpectations(&mainMock);
Canvas2DLayerBridgePtr bridge(adoptRef(new Canvas2DLayerBridge(mainMockProvider.release(), IntSize(300, 300), 0, NonOpaque, Canvas2DLayerBridge::EnableAcceleration)));
::testing::Mock::VerifyAndClearExpectations(&mainMock);
@@ -376,10 +393,9 @@ public:
virtual ~MockLogger() { }
};
-
-void runCreateBridgeTask(Canvas2DLayerBridgePtr* bridgePtr, MockCanvasContext* mockCanvasContext, Canvas2DLayerBridgeTest* testHost, WaitableEvent* doneEvent)
+void runCreateBridgeTask(Canvas2DLayerBridgePtr* bridgePtr, MockCanvasContext* mockCanvasContext, gpu::gles2::GLES2Interface* gl, Canvas2DLayerBridgeTest* testHost, WaitableEvent* doneEvent)
{
- OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(mockCanvasContext));
+ OwnPtr<MockWebGraphicsContext3DProvider> mainMockProvider = adoptPtr(new MockWebGraphicsContext3DProvider(mockCanvasContext, gl));
*bridgePtr = testHost->makeBridge(mainMockProvider.release(), IntSize(300, 300), Canvas2DLayerBridge::EnableAcceleration);
// draw+flush to trigger the creation of a GPU surface
(*bridgePtr)->didDraw(FloatRect(0, 0, 1, 1));
@@ -388,7 +404,7 @@ void runCreateBridgeTask(Canvas2DLayerBridgePtr* bridgePtr, MockCanvasContext* m
doneEvent->signal();
}
-void postAndWaitCreateBridgeTask(const WebTraceLocation& location, WebThread* testThread, Canvas2DLayerBridgePtr* bridgePtr, MockCanvasContext* mockCanvasContext, Canvas2DLayerBridgeTest* testHost)
+void postAndWaitCreateBridgeTask(const WebTraceLocation& location, WebThread* testThread, Canvas2DLayerBridgePtr* bridgePtr, MockCanvasContext* mockCanvasContext, gpu::gles2::GLES2Interface* gl, Canvas2DLayerBridgeTest* testHost)
{
OwnPtr<WaitableEvent> bridgeCreatedEvent = adoptPtr(new WaitableEvent());
testThread->getWebTaskRunner()->postTask(
@@ -396,6 +412,7 @@ void postAndWaitCreateBridgeTask(const WebTraceLocation& location, WebThread* te
threadSafeBind(&runCreateBridgeTask,
AllowCrossThreadAccess(bridgePtr),
AllowCrossThreadAccess(mockCanvasContext),
+ AllowCrossThreadAccess(gl),
AllowCrossThreadAccess(testHost),
AllowCrossThreadAccess(bridgeCreatedEvent.get())));
bridgeCreatedEvent->wait();
@@ -469,12 +486,13 @@ TEST_F(Canvas2DLayerBridgeTest, DISABLED_HibernationLifeCycle)
#endif
{
MockCanvasContext mainMock;
+ MockGLES2Interface mockGL;
OwnPtr<WebThread> testThread = adoptPtr(Platform::current()->createThread("TestThread"));
// The Canvas2DLayerBridge has to be created on the thread that will use it
// to avoid WeakPtr thread check issues.
Canvas2DLayerBridgePtr bridge;
- postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, this);
+ postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, &mockGL, this);
// Register an alternate Logger for tracking hibernation events
OwnPtr<MockLogger> mockLogger = adoptPtr(new MockLogger);
@@ -515,12 +533,13 @@ TEST_F(Canvas2DLayerBridgeTest, DISABLED_HibernationReEntry)
#endif
{
MockCanvasContext mainMock;
+ MockGLES2Interface mockGL;
OwnPtr<WebThread> testThread = adoptPtr(Platform::current()->createThread("TestThread"));
// The Canvas2DLayerBridge has to be created on the thread that will use it
// to avoid WeakPtr thread check issues.
Canvas2DLayerBridgePtr bridge;
- postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, this);
+ postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, &mockGL, this);
// Register an alternate Logger for tracking hibernation events
OwnPtr<MockLogger> mockLogger = adoptPtr(new MockLogger);
@@ -567,12 +586,13 @@ TEST_F(Canvas2DLayerBridgeTest, DISABLED_HibernationLifeCycleWithDeferredRenderi
#endif
{
MockCanvasContext mainMock;
+ MockGLES2Interface mockGL;
OwnPtr<WebThread> testThread = adoptPtr(Platform::current()->createThread("TestThread"));
// The Canvas2DLayerBridge has to be created on the thread that will use it
// to avoid WeakPtr thread check issues.
Canvas2DLayerBridgePtr bridge;
- postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, this);
+ postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, &mockGL, this);
bridge->disableDeferral(DisableDeferralReasonUnknown);
MockImageBuffer mockImageBuffer;
EXPECT_CALL(mockImageBuffer, resetCanvas(_)).Times(AnyNumber());
@@ -639,12 +659,13 @@ TEST_F(Canvas2DLayerBridgeTest, DISABLED_BackgroundRenderingWhileHibernating)
#endif
{
MockCanvasContext mainMock;
+ MockGLES2Interface mockGL;
OwnPtr<WebThread> testThread = adoptPtr(Platform::current()->createThread("TestThread"));
// The Canvas2DLayerBridge has to be created on the thread that will use it
// to avoid WeakPtr thread check issues.
Canvas2DLayerBridgePtr bridge;
- postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, this);
+ postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, &mockGL, this);
// Register an alternate Logger for tracking hibernation events
OwnPtr<MockLogger> mockLogger = adoptPtr(new MockLogger);
@@ -692,12 +713,13 @@ TEST_F(Canvas2DLayerBridgeTest, DISABLED_BackgroundRenderingWhileHibernatingWith
#endif
{
MockCanvasContext mainMock;
+ MockGLES2Interface mockGL;
OwnPtr<WebThread> testThread = adoptPtr(Platform::current()->createThread("TestThread"));
// The Canvas2DLayerBridge has to be created on the thread that will use it
// to avoid WeakPtr thread check issues.
Canvas2DLayerBridgePtr bridge;
- postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, this);
+ postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, &mockGL, this);
MockImageBuffer mockImageBuffer;
EXPECT_CALL(mockImageBuffer, resetCanvas(_)).Times(AnyNumber());
bridge->setImageBuffer(&mockImageBuffer);
@@ -753,12 +775,13 @@ TEST_F(Canvas2DLayerBridgeTest, DISABLED_DisableDeferredRenderingWhileHibernatin
#endif
{
MockCanvasContext mainMock;
+ MockGLES2Interface mockGL;
OwnPtr<WebThread> testThread = adoptPtr(Platform::current()->createThread("TestThread"));
// The Canvas2DLayerBridge has to be created on the thread that will use it
// to avoid WeakPtr thread check issues.
Canvas2DLayerBridgePtr bridge;
- postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, this);
+ postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, &mockGL, this);
MockImageBuffer mockImageBuffer;
EXPECT_CALL(mockImageBuffer, resetCanvas(_)).Times(AnyNumber());
bridge->setImageBuffer(&mockImageBuffer);
@@ -813,12 +836,13 @@ TEST_F(Canvas2DLayerBridgeTest, DISABLED_TeardownWhileHibernating)
#endif
{
MockCanvasContext mainMock;
+ MockGLES2Interface mockGL;
OwnPtr<WebThread> testThread = adoptPtr(Platform::current()->createThread("TestThread"));
// The Canvas2DLayerBridge has to be created on the thread that will use it
// to avoid WeakPtr thread check issues.
Canvas2DLayerBridgePtr bridge;
- postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, this);
+ postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, &mockGL, this);
// Register an alternate Logger for tracking hibernation events
OwnPtr<MockLogger> mockLogger = adoptPtr(new MockLogger);
@@ -868,12 +892,13 @@ TEST_F(Canvas2DLayerBridgeTest, DISABLED_TeardownWhileHibernationIsPending)
#endif
{
MockCanvasContext mainMock;
+ MockGLES2Interface mockGL;
OwnPtr<WebThread> testThread = adoptPtr(Platform::current()->createThread("TestThread"));
// The Canvas2DLayerBridge has to be created on the thread that will use it
// to avoid WeakPtr thread check issues.
Canvas2DLayerBridgePtr bridge;
- postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, this);
+ postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, &mockGL, this);
// Register an alternate Logger for tracking hibernation events
OwnPtr<MockLogger> mockLogger = adoptPtr(new MockLogger);
@@ -910,12 +935,13 @@ TEST_F(Canvas2DLayerBridgeTest, DISABLED_HibernationAbortedDueToPendingTeardown)
#endif
{
MockCanvasContext mainMock;
+ MockGLES2Interface mockGL;
OwnPtr<WebThread> testThread = adoptPtr(Platform::current()->createThread("TestThread"));
// The Canvas2DLayerBridge has to be created on the thread that will use it
// to avoid WeakPtr thread check issues.
Canvas2DLayerBridgePtr bridge;
- postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, this);
+ postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, &mockGL, this);
// Register an alternate Logger for tracking hibernation events
OwnPtr<MockLogger> mockLogger = adoptPtr(new MockLogger);
@@ -946,12 +972,13 @@ TEST_F(Canvas2DLayerBridgeTest, DISABLED_HibernationAbortedDueToVisibilityChange
#endif
{
MockCanvasContext mainMock;
+ MockGLES2Interface mockGL;
OwnPtr<WebThread> testThread = adoptPtr(Platform::current()->createThread("TestThread"));
// The Canvas2DLayerBridge has to be created on the thread that will use it
// to avoid WeakPtr thread check issues.
Canvas2DLayerBridgePtr bridge;
- postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, this);
+ postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, &mockGL, this);
// Register an alternate Logger for tracking hibernation events
OwnPtr<MockLogger> mockLogger = adoptPtr(new MockLogger);
@@ -985,19 +1012,20 @@ TEST_F(Canvas2DLayerBridgeTest, DISABLED_HibernationAbortedDueToLostContext)
#endif
{
MockCanvasContext mainMock;
+ MockGLES2Interface mockGL;
OwnPtr<WebThread> testThread = adoptPtr(Platform::current()->createThread("TestThread"));
// The Canvas2DLayerBridge has to be created on the thread that will use it
// to avoid WeakPtr thread check issues.
Canvas2DLayerBridgePtr bridge;
- postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, this);
+ postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, &mockGL, this);
// Register an alternate Logger for tracking hibernation events
OwnPtr<MockLogger> mockLogger = adoptPtr(new MockLogger);
MockLogger* mockLoggerPtr = mockLogger.get();
bridge->setLoggerForTesting(mockLogger.release());
- mainMock.fakeContextLost();
+ mockGL.setIsContextLost(true);
// Test entering hibernation
OwnPtr<WaitableEvent> hibernationAbortedEvent = adoptPtr(new WaitableEvent());
EXPECT_CALL(*mockLoggerPtr, reportHibernationEvent(Canvas2DLayerBridge::HibernationScheduled));
@@ -1022,12 +1050,13 @@ TEST_F(Canvas2DLayerBridgeTest, DISABLED_PrepareMailboxWhileHibernating)
#endif
{
MockCanvasContext mainMock;
+ MockGLES2Interface mockGL;
OwnPtr<WebThread> testThread = adoptPtr(Platform::current()->createThread("TestThread"));
// The Canvas2DLayerBridge has to be created on the thread that will use it
// to avoid WeakPtr thread check issues.
Canvas2DLayerBridgePtr bridge;
- postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, this);
+ postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, &mockGL, this);
// Register an alternate Logger for tracking hibernation events
OwnPtr<MockLogger> mockLogger = adoptPtr(new MockLogger);
@@ -1061,12 +1090,13 @@ TEST_F(Canvas2DLayerBridgeTest, DISABLED_PrepareMailboxWhileBackgroundRendering)
#endif
{
MockCanvasContext mainMock;
+ MockGLES2Interface mockGL;
OwnPtr<WebThread> testThread = adoptPtr(Platform::current()->createThread("TestThread"));
// The Canvas2DLayerBridge has to be created on the thread that will use it
// to avoid WeakPtr thread check issues.
Canvas2DLayerBridgePtr bridge;
- postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, this);
+ postAndWaitCreateBridgeTask(BLINK_FROM_HERE, testThread.get(), &bridge, &mainMock, &mockGL, this);
// Register an alternate Logger for tracking hibernation events
OwnPtr<MockLogger> mockLogger = adoptPtr(new MockLogger);
« no previous file with comments | « third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridge.cpp ('k') | third_party/WebKit/Source/platform/graphics/DEPS » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698