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)); |