| Index: third_party/WebKit/Source/core/animation/CompositorAnimationsTest.cpp
|
| diff --git a/third_party/WebKit/Source/core/animation/CompositorAnimationsTest.cpp b/third_party/WebKit/Source/core/animation/CompositorAnimationsTest.cpp
|
| index 8e99446dee9e8ad1b9c2214f17fc9ed79f334952..6fae285dc988c3a57675e87a8d53397663153004 100644
|
| --- a/third_party/WebKit/Source/core/animation/CompositorAnimationsTest.cpp
|
| +++ b/third_party/WebKit/Source/core/animation/CompositorAnimationsTest.cpp
|
| @@ -44,12 +44,12 @@
|
| #include "core/dom/Document.h"
|
| #include "core/layout/LayoutObject.h"
|
| #include "core/testing/DummyPageHolder.h"
|
| +#include "platform/animation/WebCompositorAnimation.h"
|
| #include "platform/geometry/FloatBox.h"
|
| #include "platform/geometry/IntSize.h"
|
| #include "platform/graphics/filters/FilterOperations.h"
|
| #include "platform/transforms/TransformOperations.h"
|
| #include "platform/transforms/TranslateTransformOperation.h"
|
| -#include "public/platform/WebCompositorAnimation.h"
|
| #include "testing/gmock/include/gmock/gmock.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
| #include "wtf/HashFunctions.h"
|
| @@ -84,12 +84,16 @@ protected:
|
| Persistent<AnimationTimeline> m_timeline;
|
| OwnPtr<DummyPageHolder> m_pageHolder;
|
| WebCompositorSupportMock m_mockCompositor;
|
| + CompositorFactoryMock* m_mockCompositorFactory;
|
|
|
| - virtual void SetUp()
|
| + void SetUp() override
|
| {
|
| AnimationCompositorAnimationsTestBase::SetUp();
|
| setCompositorForTesting(m_mockCompositor);
|
|
|
| + m_mockCompositorFactory = new CompositorFactoryMock();
|
| + CompositorFactory::initializeForTesting(m_mockCompositorFactory);
|
| +
|
| m_linearTimingFunction = LinearTimingFunction::shared();
|
| m_cubicEaseTimingFunction = CubicBezierTimingFunction::preset(CubicBezierTimingFunction::Ease);
|
| m_cubicCustomTimingFunction = CubicBezierTimingFunction::create(1, 2, 3, 4);
|
| @@ -108,7 +112,7 @@ protected:
|
| m_keyframeAnimationEffect5 = AnimatableValueKeyframeEffectModel::create(*m_keyframeVector5);
|
|
|
| if (RuntimeEnabledFeatures::compositorAnimationTimelinesEnabled()) {
|
| - EXPECT_CALL(m_mockCompositor, createAnimationTimeline())
|
| + EXPECT_CALL(*m_mockCompositorFactory, createAnimationTimeline())
|
| .WillOnce(Return(new WebCompositorAnimationTimelineMock()));
|
| }
|
| m_pageHolder = DummyPageHolder::create();
|
| @@ -116,7 +120,7 @@ protected:
|
| m_document->animationClock().resetTimeForTesting();
|
|
|
| if (RuntimeEnabledFeatures::compositorAnimationTimelinesEnabled()) {
|
| - EXPECT_CALL(m_mockCompositor, createAnimationTimeline())
|
| + EXPECT_CALL(*m_mockCompositorFactory, createAnimationTimeline())
|
| .WillOnce(Return(new WebCompositorAnimationTimelineMock()));
|
| }
|
| m_timeline = AnimationTimeline::create(m_document.get());
|
| @@ -124,8 +128,13 @@ protected:
|
| m_element = m_document->createElement("test", ASSERT_NO_EXCEPTION);
|
| }
|
|
|
| -public:
|
| + void TearDown() override
|
| + {
|
| + CompositorFactory::shutdown();
|
| + m_mockCompositorFactory = nullptr;
|
| + }
|
|
|
| +public:
|
| bool convertTimingForCompositor(const Timing& t, CompositorAnimationsImpl::CompositorTiming& out)
|
| {
|
| return CompositorAnimationsImpl::convertTimingForCompositor(t, 0, out, 1);
|
| @@ -655,7 +664,7 @@ TEST_F(AnimationCompositorAnimationsTest, createSimpleOpacityAnimation)
|
| // Curve is created
|
| WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock;
|
| ExpectationSet usesMockCurve;
|
| - EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve())
|
| + EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve())
|
| .WillOnce(Return(mockCurvePtr));
|
|
|
| usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0), WebCompositorAnimationCurve::TimingFunctionTypeLinear));
|
| @@ -665,7 +674,7 @@ TEST_F(AnimationCompositorAnimationsTest, createSimpleOpacityAnimation)
|
| WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMock(WebCompositorAnimation::TargetPropertyOpacity);
|
| ExpectationSet usesMockAnimation;
|
|
|
| - usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| + usesMockCurve += EXPECT_CALL(*m_mockCompositorFactory, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| .WillOnce(Return(mockAnimationPtr));
|
|
|
| usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setIterations(1));
|
| @@ -700,7 +709,7 @@ TEST_F(AnimationCompositorAnimationsTest, createSimpleOpacityAnimationDuration)
|
| // Curve is created
|
| WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock;
|
| ExpectationSet usesMockCurve;
|
| - EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve())
|
| + EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve())
|
| .WillOnce(Return(mockCurvePtr));
|
|
|
| usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0), WebCompositorAnimationCurve::TimingFunctionTypeLinear));
|
| @@ -710,7 +719,7 @@ TEST_F(AnimationCompositorAnimationsTest, createSimpleOpacityAnimationDuration)
|
| WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMock(WebCompositorAnimation::TargetPropertyOpacity);
|
| ExpectationSet usesMockAnimation;
|
|
|
| - usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| + usesMockCurve += EXPECT_CALL(*m_mockCompositorFactory, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| .WillOnce(Return(mockAnimationPtr));
|
|
|
| usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setIterations(1));
|
| @@ -750,7 +759,7 @@ TEST_F(AnimationCompositorAnimationsTest, createMultipleKeyframeOpacityAnimation
|
| WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock();
|
| ExpectationSet usesMockCurve;
|
|
|
| - EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve())
|
| + EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve())
|
| .WillOnce(Return(mockCurvePtr));
|
|
|
| usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0), WebCompositorAnimationCurve::TimingFunctionTypeLinear));
|
| @@ -762,7 +771,7 @@ TEST_F(AnimationCompositorAnimationsTest, createMultipleKeyframeOpacityAnimation
|
| WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMock(WebCompositorAnimation::TargetPropertyOpacity);
|
| ExpectationSet usesMockAnimation;
|
|
|
| - usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| + usesMockCurve += EXPECT_CALL(*m_mockCompositorFactory, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| .WillOnce(Return(mockAnimationPtr));
|
|
|
| usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setIterations(5));
|
| @@ -799,7 +808,7 @@ TEST_F(AnimationCompositorAnimationsTest, createSimpleOpacityAnimationStartDelay
|
| // Curve is created
|
| WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock;
|
| ExpectationSet usesMockCurve;
|
| - EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve())
|
| + EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve())
|
| .WillOnce(Return(mockCurvePtr));
|
|
|
| usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0), WebCompositorAnimationCurve::TimingFunctionTypeLinear));
|
| @@ -809,7 +818,7 @@ TEST_F(AnimationCompositorAnimationsTest, createSimpleOpacityAnimationStartDelay
|
| WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMock(WebCompositorAnimation::TargetPropertyOpacity);
|
| ExpectationSet usesMockAnimation;
|
|
|
| - usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| + usesMockCurve += EXPECT_CALL(*m_mockCompositorFactory, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| .WillOnce(Return(mockAnimationPtr));
|
|
|
| usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setIterations(5));
|
| @@ -854,7 +863,7 @@ TEST_F(AnimationCompositorAnimationsTest, createMultipleKeyframeOpacityAnimation
|
| WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock();
|
| ExpectationSet usesMockCurve;
|
|
|
| - EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve())
|
| + EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve())
|
| .WillOnce(Return(mockCurvePtr));
|
|
|
| usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0), WebCompositorAnimationCurve::TimingFunctionTypeEase));
|
| @@ -866,7 +875,7 @@ TEST_F(AnimationCompositorAnimationsTest, createMultipleKeyframeOpacityAnimation
|
| WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMock(WebCompositorAnimation::TargetPropertyOpacity);
|
| ExpectationSet usesMockAnimation;
|
|
|
| - usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| + usesMockCurve += EXPECT_CALL(*m_mockCompositorFactory, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| .WillOnce(Return(mockAnimationPtr));
|
|
|
| usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setIterations(10));
|
| @@ -912,7 +921,7 @@ TEST_F(AnimationCompositorAnimationsTest, createReversedOpacityAnimation)
|
| WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock();
|
| ExpectationSet usesMockCurve;
|
|
|
| - EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve())
|
| + EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve())
|
| .WillOnce(Return(mockCurvePtr));
|
|
|
| usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0), WebCompositorAnimationCurve::TimingFunctionTypeEaseIn));
|
| @@ -924,7 +933,7 @@ TEST_F(AnimationCompositorAnimationsTest, createReversedOpacityAnimation)
|
| WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMock(WebCompositorAnimation::TargetPropertyOpacity);
|
| ExpectationSet usesMockAnimation;
|
|
|
| - usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| + usesMockCurve += EXPECT_CALL(*m_mockCompositorFactory, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| .WillOnce(Return(mockAnimationPtr));
|
|
|
| usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setIterations(10));
|
| @@ -962,7 +971,7 @@ TEST_F(AnimationCompositorAnimationsTest, createReversedOpacityAnimationNegative
|
| // Curve is created
|
| WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock;
|
| ExpectationSet usesMockCurve;
|
| - EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve())
|
| + EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve())
|
| .WillOnce(Return(mockCurvePtr));
|
|
|
| usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0), WebCompositorAnimationCurve::TimingFunctionTypeLinear));
|
| @@ -972,7 +981,7 @@ TEST_F(AnimationCompositorAnimationsTest, createReversedOpacityAnimationNegative
|
| WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMock(WebCompositorAnimation::TargetPropertyOpacity);
|
| ExpectationSet usesMockAnimation;
|
|
|
| - usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| + usesMockCurve += EXPECT_CALL(*m_mockCompositorFactory, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| .WillOnce(Return(mockAnimationPtr));
|
|
|
| usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setIterations(5));
|
| @@ -1007,7 +1016,7 @@ TEST_F(AnimationCompositorAnimationsTest, createSimpleOpacityAnimationPlaybackRa
|
| // Curve is created
|
| WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock;
|
| ExpectationSet usesMockCurve;
|
| - EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve())
|
| + EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve())
|
| .WillOnce(Return(mockCurvePtr));
|
|
|
| usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0), WebCompositorAnimationCurve::TimingFunctionTypeLinear));
|
| @@ -1017,7 +1026,7 @@ TEST_F(AnimationCompositorAnimationsTest, createSimpleOpacityAnimationPlaybackRa
|
| WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMock(WebCompositorAnimation::TargetPropertyOpacity);
|
| ExpectationSet usesMockAnimation;
|
|
|
| - usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| + usesMockCurve += EXPECT_CALL(*m_mockCompositorFactory, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| .WillOnce(Return(mockAnimationPtr));
|
|
|
| usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setIterations(1));
|
| @@ -1052,7 +1061,7 @@ TEST_F(AnimationCompositorAnimationsTest, createSimpleOpacityAnimationFillModeNo
|
| // Curve is created
|
| WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock;
|
| ExpectationSet usesMockCurve;
|
| - EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve())
|
| + EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve())
|
| .WillOnce(Return(mockCurvePtr));
|
|
|
| usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0), WebCompositorAnimationCurve::TimingFunctionTypeLinear));
|
| @@ -1062,7 +1071,7 @@ TEST_F(AnimationCompositorAnimationsTest, createSimpleOpacityAnimationFillModeNo
|
| WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMock(WebCompositorAnimation::TargetPropertyOpacity);
|
| ExpectationSet usesMockAnimation;
|
|
|
| - usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| + usesMockCurve += EXPECT_CALL(*m_mockCompositorFactory, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| .WillOnce(Return(mockAnimationPtr));
|
|
|
| usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setIterations(1));
|
| @@ -1097,7 +1106,7 @@ TEST_F(AnimationCompositorAnimationsTest, createSimpleOpacityAnimationFillModeAu
|
| // Curve is created
|
| WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock;
|
| ExpectationSet usesMockCurve;
|
| - EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve())
|
| + EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve())
|
| .WillOnce(Return(mockCurvePtr));
|
|
|
| usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0), WebCompositorAnimationCurve::TimingFunctionTypeLinear));
|
| @@ -1107,7 +1116,7 @@ TEST_F(AnimationCompositorAnimationsTest, createSimpleOpacityAnimationFillModeAu
|
| WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMock(WebCompositorAnimation::TargetPropertyOpacity);
|
| ExpectationSet usesMockAnimation;
|
|
|
| - usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| + usesMockCurve += EXPECT_CALL(*m_mockCompositorFactory, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| .WillOnce(Return(mockAnimationPtr));
|
|
|
| usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setIterations(1));
|
| @@ -1142,7 +1151,7 @@ TEST_F(AnimationCompositorAnimationsTest, createSimpleOpacityAnimationWithTiming
|
| // Curve is created
|
| WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock;
|
| ExpectationSet usesMockCurve;
|
| - EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve())
|
| + EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve())
|
| .WillOnce(Return(mockCurvePtr));
|
|
|
| usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0), WebCompositorAnimationCurve::TimingFunctionTypeLinear));
|
| @@ -1153,7 +1162,7 @@ TEST_F(AnimationCompositorAnimationsTest, createSimpleOpacityAnimationWithTiming
|
| WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMock(WebCompositorAnimation::TargetPropertyOpacity);
|
| ExpectationSet usesMockAnimation;
|
|
|
| - usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| + usesMockCurve += EXPECT_CALL(*m_mockCompositorFactory, createAnimation(Ref(*mockCurvePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _))
|
| .WillOnce(Return(mockAnimationPtr));
|
|
|
| usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setIterations(1));
|
|
|