| Index: third_party/WebKit/Source/platform/graphics/RecordingImageBufferSurfaceTest.cpp
|
| diff --git a/third_party/WebKit/Source/platform/graphics/RecordingImageBufferSurfaceTest.cpp b/third_party/WebKit/Source/platform/graphics/RecordingImageBufferSurfaceTest.cpp
|
| index e22914e9a181d0035045c1175ea535c398d16dc0..52dc94c6829f64bd91e2c43daf913b0013a0c89b 100644
|
| --- a/third_party/WebKit/Source/platform/graphics/RecordingImageBufferSurfaceTest.cpp
|
| +++ b/third_party/WebKit/Source/platform/graphics/RecordingImageBufferSurfaceTest.cpp
|
| @@ -231,134 +231,11 @@ private:
|
| std::unique_ptr<ImageBuffer> m_imageBuffer;
|
| };
|
|
|
| -namespace {
|
| -
|
| -// The following test helper class installs a mock platform that provides a mock WebThread
|
| -// for the current thread. The Mock thread is capable of queuing a single non-delayed task
|
| -// and registering a single task observer. The run loop exits immediately after running
|
| -// the single task.
|
| -
|
| -class CurrentThreadPlatformMock : public TestingPlatformSupport {
|
| -public:
|
| - CurrentThreadPlatformMock() { }
|
| - WebThread* currentThread() override { return &m_currentThread; }
|
| -
|
| - void enterRunLoop() { m_currentThread.enterRunLoop(); }
|
| -private:
|
| - class MockWebTaskRunner : public WebTaskRunner {
|
| - public:
|
| - MockWebTaskRunner() : m_task(0) { }
|
| - ~MockWebTaskRunner() override { }
|
| -
|
| - void postTask(const WebTraceLocation&, Task* task) override
|
| - {
|
| - EXPECT_EQ((Task*)0, m_task);
|
| - m_task = task;
|
| - }
|
| -
|
| - void postDelayedTask(const WebTraceLocation&, Task*, double delayMs) override { NOTREACHED(); };
|
| -
|
| - bool runsTasksOnCurrentThread() override
|
| - {
|
| - NOTREACHED();
|
| - return true;
|
| - }
|
| -
|
| - std::unique_ptr<WebTaskRunner> clone() override
|
| - {
|
| - NOTREACHED();
|
| - return nullptr;
|
| - }
|
| -
|
| - double virtualTimeSeconds() const override
|
| - {
|
| - NOTREACHED();
|
| - return 0.0;
|
| - }
|
| -
|
| - double monotonicallyIncreasingVirtualTimeSeconds() const override
|
| - {
|
| - NOTREACHED();
|
| - return 0.0;
|
| - }
|
| -
|
| - base::SingleThreadTaskRunner* taskRunner() override
|
| - {
|
| - NOTREACHED();
|
| - return nullptr;
|
| - }
|
| -
|
| - Task* m_task;
|
| - };
|
| -
|
| - class CurrentThreadMock : public WebThread {
|
| - public:
|
| - CurrentThreadMock() : m_taskObserver(0) { }
|
| -
|
| - ~CurrentThreadMock() override
|
| - {
|
| - EXPECT_EQ((WebTaskRunner::Task*)0, m_taskRunner.m_task);
|
| - }
|
| -
|
| - WebTaskRunner* getWebTaskRunner() override
|
| - {
|
| - return &m_taskRunner;
|
| - }
|
| -
|
| - bool isCurrentThread() const override { return true; }
|
| -
|
| - PlatformThreadId threadId() const override
|
| - {
|
| - NOTREACHED();
|
| - return 0;
|
| - }
|
| -
|
| - void addTaskObserver(TaskObserver* taskObserver) override
|
| - {
|
| - EXPECT_EQ(nullptr, m_taskObserver);
|
| - m_taskObserver = taskObserver;
|
| - }
|
| -
|
| - void removeTaskObserver(TaskObserver* taskObserver) override
|
| - {
|
| - EXPECT_EQ(m_taskObserver, taskObserver);
|
| - m_taskObserver = 0;
|
| - }
|
| -
|
| - WebScheduler* scheduler() const override
|
| - {
|
| - NOTREACHED();
|
| - return nullptr;
|
| - }
|
| -
|
| - void enterRunLoop()
|
| - {
|
| - if (m_taskObserver)
|
| - m_taskObserver->willProcessTask();
|
| - if (m_taskRunner.m_task) {
|
| - m_taskRunner.m_task->run();
|
| - delete m_taskRunner.m_task;
|
| - m_taskRunner.m_task = 0;
|
| - }
|
| - if (m_taskObserver)
|
| - m_taskObserver->didProcessTask();
|
| - }
|
| -
|
| - private:
|
| - MockWebTaskRunner m_taskRunner;
|
| - TaskObserver* m_taskObserver;
|
| - };
|
| -
|
| - CurrentThreadMock m_currentThread;
|
| -};
|
| -
|
| -} // anonymous namespace
|
| -
|
| #define CALL_TEST_TASK_WRAPPER(TEST_METHOD) \
|
| { \
|
| - CurrentThreadPlatformMock ctpm; \
|
| + TestingPlatformSupportWithMockScheduler testingPlatform; \
|
| Platform::current()->currentThread()->getWebTaskRunner()->postTask(BLINK_FROM_HERE, WTF::bind(&RecordingImageBufferSurfaceTest::TEST_METHOD, WTF::unretained(this))); \
|
| - ctpm.enterRunLoop(); \
|
| + testingPlatform.runUntilIdle(); \
|
| }
|
|
|
| TEST_F(RecordingImageBufferSurfaceTest, testEmptyPicture)
|
|
|