| Index: third_party/WebKit/Source/core/layout/ImageQualityControllerTest.cpp
|
| diff --git a/third_party/WebKit/Source/core/layout/ImageQualityControllerTest.cpp b/third_party/WebKit/Source/core/layout/ImageQualityControllerTest.cpp
|
| index d3e0f9c435080b1b4f9ce6cb89c78ff7a50c31d8..d5a68068beb3681fe496168a1cbfac6e1a740496 100644
|
| --- a/third_party/WebKit/Source/core/layout/ImageQualityControllerTest.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/ImageQualityControllerTest.cpp
|
| @@ -116,9 +116,10 @@ class MockTimer : public TaskRunnerTimer<ImageQualityController> {
|
| public:
|
| using TimerFiredFunction = typename TaskRunnerTimer<ImageQualityController>::TimerFiredFunction;
|
|
|
| - MockTimer(ImageQualityController* o, TimerFiredFunction f)
|
| - : TaskRunnerTimer(&m_taskRunner, o, f)
|
| + static std::unique_ptr<MockTimer> create(ImageQualityController* o, TimerFiredFunction f)
|
| {
|
| + auto taskRunner = WTF::wrapUnique(new scheduler::FakeWebTaskRunner);
|
| + return WTF::wrapUnique(new MockTimer(std::move(taskRunner), o, f));
|
| }
|
|
|
| void fire()
|
| @@ -129,16 +130,24 @@ public:
|
|
|
| void setTime(double newTime)
|
| {
|
| - m_taskRunner.setTime(newTime);
|
| + m_taskRunner->setTime(newTime);
|
| }
|
|
|
| private:
|
| - scheduler::FakeWebTaskRunner m_taskRunner;
|
| + MockTimer(std::unique_ptr<scheduler::FakeWebTaskRunner> taskRunner, ImageQualityController* o, TimerFiredFunction f)
|
| + : TaskRunnerTimer(taskRunner.get(), o, f)
|
| + , m_taskRunner(std::move(taskRunner))
|
| + {
|
| + }
|
| +
|
| + std::unique_ptr<scheduler::FakeWebTaskRunner> m_taskRunner;
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(MockTimer);
|
| };
|
|
|
| TEST_F(ImageQualityControllerTest, LowQualityFilterForResizingImage)
|
| {
|
| - MockTimer* mockTimer = new MockTimer(controller(), &ImageQualityController::highQualityRepaintTimerFired);
|
| + MockTimer* mockTimer = MockTimer::create(controller(), &ImageQualityController::highQualityRepaintTimerFired).release();
|
| controller()->setTimer(wrapUnique(mockTimer));
|
| setBodyInnerHTML("<img src='myimage'></img>");
|
| LayoutImage* img = toLayoutImage(document().body()->firstChild()->layoutObject());
|
| @@ -163,7 +172,7 @@ TEST_F(ImageQualityControllerTest, LowQualityFilterForResizingImage)
|
|
|
| TEST_F(ImageQualityControllerTest, MediumQualityFilterForNotAnimatedWhileAnotherAnimates)
|
| {
|
| - MockTimer* mockTimer = new MockTimer(controller(), &ImageQualityController::highQualityRepaintTimerFired);
|
| + MockTimer* mockTimer = MockTimer::create(controller(), &ImageQualityController::highQualityRepaintTimerFired).release();
|
| controller()->setTimer(wrapUnique(mockTimer));
|
| setBodyInnerHTML("<img id='myAnimatingImage' src='myimage'></img> <img id='myNonAnimatingImage' src='myimage2'></img>");
|
| LayoutImage* animatingImage = toLayoutImage(document().getElementById("myAnimatingImage")->layoutObject());
|
| @@ -193,7 +202,7 @@ TEST_F(ImageQualityControllerTest, MediumQualityFilterForNotAnimatedWhileAnother
|
|
|
| TEST_F(ImageQualityControllerTest, DontKickTheAnimationTimerWhenPaintingAtTheSameSize)
|
| {
|
| - MockTimer* mockTimer = new MockTimer(controller(), &ImageQualityController::highQualityRepaintTimerFired);
|
| + MockTimer* mockTimer = MockTimer::create(controller(), &ImageQualityController::highQualityRepaintTimerFired).release();
|
| controller()->setTimer(wrapUnique(mockTimer));
|
| setBodyInnerHTML("<img src='myimage'></img>");
|
| LayoutImage* img = toLayoutImage(document().body()->firstChild()->layoutObject());
|
| @@ -219,7 +228,7 @@ TEST_F(ImageQualityControllerTest, DontKickTheAnimationTimerWhenPaintingAtTheSam
|
|
|
| TEST_F(ImageQualityControllerTest, DontRestartTimerUnlessAdvanced)
|
| {
|
| - MockTimer* mockTimer = new MockTimer(controller(), &ImageQualityController::highQualityRepaintTimerFired);
|
| + MockTimer* mockTimer = MockTimer::create(controller(), &ImageQualityController::highQualityRepaintTimerFired).release();
|
| controller()->setTimer(wrapUnique(mockTimer));
|
| setBodyInnerHTML("<img src='myimage'></img>");
|
| LayoutImage* img = toLayoutImage(document().body()->firstChild()->layoutObject());
|
|
|