OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2013, Google Inc. All rights reserved. | 2 * Copyright (c) 2013, Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
77 OwnPtr<AnimatableValueKeyframeVector> m_keyframeVector2; | 77 OwnPtr<AnimatableValueKeyframeVector> m_keyframeVector2; |
78 Persistent<AnimatableValueKeyframeEffectModel> m_keyframeAnimationEffect2; | 78 Persistent<AnimatableValueKeyframeEffectModel> m_keyframeAnimationEffect2; |
79 OwnPtr<AnimatableValueKeyframeVector> m_keyframeVector5; | 79 OwnPtr<AnimatableValueKeyframeVector> m_keyframeVector5; |
80 Persistent<AnimatableValueKeyframeEffectModel> m_keyframeAnimationEffect5; | 80 Persistent<AnimatableValueKeyframeEffectModel> m_keyframeAnimationEffect5; |
81 | 81 |
82 RefPtrWillBePersistent<Document> m_document; | 82 RefPtrWillBePersistent<Document> m_document; |
83 RefPtrWillBePersistent<Element> m_element; | 83 RefPtrWillBePersistent<Element> m_element; |
84 Persistent<AnimationTimeline> m_timeline; | 84 Persistent<AnimationTimeline> m_timeline; |
85 OwnPtr<DummyPageHolder> m_pageHolder; | 85 OwnPtr<DummyPageHolder> m_pageHolder; |
86 WebCompositorSupportMock m_mockCompositor; | 86 WebCompositorSupportMock m_mockCompositor; |
| 87 CompositorFactoryMock* m_mockCompositorFactory; |
87 | 88 |
88 virtual void SetUp() | 89 void SetUp() override |
89 { | 90 { |
90 AnimationCompositorAnimationsTestBase::SetUp(); | 91 AnimationCompositorAnimationsTestBase::SetUp(); |
91 setCompositorForTesting(m_mockCompositor); | 92 setCompositorForTesting(m_mockCompositor); |
92 | 93 |
| 94 m_mockCompositorFactory = new CompositorFactoryMock(); |
| 95 CompositorFactory::initializeForTesting(m_mockCompositorFactory); |
| 96 |
93 m_linearTimingFunction = LinearTimingFunction::shared(); | 97 m_linearTimingFunction = LinearTimingFunction::shared(); |
94 m_cubicEaseTimingFunction = CubicBezierTimingFunction::preset(CubicBezie
rTimingFunction::Ease); | 98 m_cubicEaseTimingFunction = CubicBezierTimingFunction::preset(CubicBezie
rTimingFunction::Ease); |
95 m_cubicCustomTimingFunction = CubicBezierTimingFunction::create(1, 2, 3,
4); | 99 m_cubicCustomTimingFunction = CubicBezierTimingFunction::create(1, 2, 3,
4); |
96 m_stepTimingFunction = StepsTimingFunction::create(1, StepsTimingFunctio
n::End); | 100 m_stepTimingFunction = StepsTimingFunction::create(1, StepsTimingFunctio
n::End); |
97 | 101 |
98 m_timing = createCompositableTiming(); | 102 m_timing = createCompositableTiming(); |
99 m_compositorTiming = CompositorAnimationsImpl::CompositorTiming(); | 103 m_compositorTiming = CompositorAnimationsImpl::CompositorTiming(); |
100 // Make sure the CompositableTiming is really compositable, otherwise | 104 // Make sure the CompositableTiming is really compositable, otherwise |
101 // most other tests will fail. | 105 // most other tests will fail. |
102 ASSERT(convertTimingForCompositor(m_timing, m_compositorTiming)); | 106 ASSERT(convertTimingForCompositor(m_timing, m_compositorTiming)); |
(...skipping 14 matching lines...) Expand all Loading... |
117 | 121 |
118 if (RuntimeEnabledFeatures::compositorAnimationTimelinesEnabled()) { | 122 if (RuntimeEnabledFeatures::compositorAnimationTimelinesEnabled()) { |
119 EXPECT_CALL(m_mockCompositor, createAnimationTimeline()) | 123 EXPECT_CALL(m_mockCompositor, createAnimationTimeline()) |
120 .WillOnce(Return(new WebCompositorAnimationTimelineMock())); | 124 .WillOnce(Return(new WebCompositorAnimationTimelineMock())); |
121 } | 125 } |
122 m_timeline = AnimationTimeline::create(m_document.get()); | 126 m_timeline = AnimationTimeline::create(m_document.get()); |
123 m_timeline->resetForTesting(); | 127 m_timeline->resetForTesting(); |
124 m_element = m_document->createElement("test", ASSERT_NO_EXCEPTION); | 128 m_element = m_document->createElement("test", ASSERT_NO_EXCEPTION); |
125 } | 129 } |
126 | 130 |
| 131 void TearDown() override |
| 132 { |
| 133 CompositorFactory::shutdown(); |
| 134 m_mockCompositorFactory = nullptr; |
| 135 } |
| 136 |
127 public: | 137 public: |
128 | |
129 bool convertTimingForCompositor(const Timing& t, CompositorAnimationsImpl::C
ompositorTiming& out) | 138 bool convertTimingForCompositor(const Timing& t, CompositorAnimationsImpl::C
ompositorTiming& out) |
130 { | 139 { |
131 return CompositorAnimationsImpl::convertTimingForCompositor(t, 0, out, 1
); | 140 return CompositorAnimationsImpl::convertTimingForCompositor(t, 0, out, 1
); |
132 } | 141 } |
133 bool isCandidateForAnimationOnCompositor(const Timing& timing, const EffectM
odel& effect) | 142 bool isCandidateForAnimationOnCompositor(const Timing& timing, const EffectM
odel& effect) |
134 { | 143 { |
135 return CompositorAnimations::instance()->isCandidateForAnimationOnCompos
itor(timing, *m_element.get(), nullptr, effect, 1); | 144 return CompositorAnimations::instance()->isCandidateForAnimationOnCompos
itor(timing, *m_element.get(), nullptr, effect, 1); |
136 } | 145 } |
137 void getAnimationOnCompositor(Timing& timing, AnimatableValueKeyframeEffectM
odel& effect, Vector<OwnPtr<WebCompositorAnimation>>& animations) | 146 void getAnimationOnCompositor(Timing& timing, AnimatableValueKeyframeEffectM
odel& effect, Vector<OwnPtr<WebCompositorAnimation>>& animations) |
138 { | 147 { |
(...skipping 509 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
648 { | 657 { |
649 // KeyframeEffect to convert | 658 // KeyframeEffect to convert |
650 AnimatableValueKeyframeEffectModel* effect = createKeyframeEffectModel( | 659 AnimatableValueKeyframeEffectModel* effect = createKeyframeEffectModel( |
651 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(2.0
).get(), 0), | 660 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(2.0
).get(), 0), |
652 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(5.0
).get(), 1.0)); | 661 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(5.0
).get(), 1.0)); |
653 // -- | 662 // -- |
654 | 663 |
655 // Curve is created | 664 // Curve is created |
656 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; | 665 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; |
657 ExpectationSet usesMockCurve; | 666 ExpectationSet usesMockCurve; |
658 EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve()) | 667 EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve()) |
659 .WillOnce(Return(mockCurvePtr)); | 668 .WillOnce(Return(mockCurvePtr)); |
660 | 669 |
661 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); | 670 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); |
662 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 5.0)))
; | 671 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 5.0)))
; |
663 | 672 |
664 // Create animation | 673 // Create animation |
665 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); | 674 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); |
666 ExpectationSet usesMockAnimation; | 675 ExpectationSet usesMockAnimation; |
667 | 676 |
668 usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurv
ePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _)) | 677 usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurv
ePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _)) |
(...skipping 24 matching lines...) Expand all Loading... |
693 AnimatableValueKeyframeEffectModel* effect = createKeyframeEffectModel( | 702 AnimatableValueKeyframeEffectModel* effect = createKeyframeEffectModel( |
694 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(2.0
).get(), 0), | 703 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(2.0
).get(), 0), |
695 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(5.0
).get(), 1.0)); | 704 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(5.0
).get(), 1.0)); |
696 | 705 |
697 m_timing.iterationDuration = 10.0; | 706 m_timing.iterationDuration = 10.0; |
698 // -- | 707 // -- |
699 | 708 |
700 // Curve is created | 709 // Curve is created |
701 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; | 710 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; |
702 ExpectationSet usesMockCurve; | 711 ExpectationSet usesMockCurve; |
703 EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve()) | 712 EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve()) |
704 .WillOnce(Return(mockCurvePtr)); | 713 .WillOnce(Return(mockCurvePtr)); |
705 | 714 |
706 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); | 715 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); |
707 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(10.0, 5.0))
); | 716 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(10.0, 5.0))
); |
708 | 717 |
709 // Create animation | 718 // Create animation |
710 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); | 719 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); |
711 ExpectationSet usesMockAnimation; | 720 ExpectationSet usesMockAnimation; |
712 | 721 |
713 usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurv
ePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _)) | 722 usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurv
ePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _)) |
(...skipping 29 matching lines...) Expand all Loading... |
743 | 752 |
744 m_timing.iterationCount = 5; | 753 m_timing.iterationCount = 5; |
745 m_timing.direction = Timing::PlaybackDirectionAlternate; | 754 m_timing.direction = Timing::PlaybackDirectionAlternate; |
746 m_timing.playbackRate = 2.0; | 755 m_timing.playbackRate = 2.0; |
747 // -- | 756 // -- |
748 | 757 |
749 // Curve is created | 758 // Curve is created |
750 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock(); | 759 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock(); |
751 ExpectationSet usesMockCurve; | 760 ExpectationSet usesMockCurve; |
752 | 761 |
753 EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve()) | 762 EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve()) |
754 .WillOnce(Return(mockCurvePtr)); | 763 .WillOnce(Return(mockCurvePtr)); |
755 | 764 |
756 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); | 765 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); |
757 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.25, -1.0)
, WebCompositorAnimationCurve::TimingFunctionTypeLinear)); | 766 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.25, -1.0)
, WebCompositorAnimationCurve::TimingFunctionTypeLinear)); |
758 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.5, 20.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); | 767 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.5, 20.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); |
759 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 5.0)))
; | 768 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 5.0)))
; |
760 | 769 |
761 // KeyframeEffect is created | 770 // KeyframeEffect is created |
762 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); | 771 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); |
763 ExpectationSet usesMockAnimation; | 772 ExpectationSet usesMockAnimation; |
(...skipping 28 matching lines...) Expand all Loading... |
792 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(5.0
).get(), 1.0)); | 801 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(5.0
).get(), 1.0)); |
793 | 802 |
794 m_timing.iterationCount = 5.0; | 803 m_timing.iterationCount = 5.0; |
795 m_timing.iterationDuration = 1.75; | 804 m_timing.iterationDuration = 1.75; |
796 m_timing.startDelay = 3.25; | 805 m_timing.startDelay = 3.25; |
797 // -- | 806 // -- |
798 | 807 |
799 // Curve is created | 808 // Curve is created |
800 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; | 809 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; |
801 ExpectationSet usesMockCurve; | 810 ExpectationSet usesMockCurve; |
802 EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve()) | 811 EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve()) |
803 .WillOnce(Return(mockCurvePtr)); | 812 .WillOnce(Return(mockCurvePtr)); |
804 | 813 |
805 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); | 814 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); |
806 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.75, 5.0))
); | 815 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.75, 5.0))
); |
807 | 816 |
808 // Create animation | 817 // Create animation |
809 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); | 818 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); |
810 ExpectationSet usesMockAnimation; | 819 ExpectationSet usesMockAnimation; |
811 | 820 |
812 usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurv
ePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _)) | 821 usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurv
ePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _)) |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
847 m_timing.timingFunction = m_linearTimingFunction.get(); | 856 m_timing.timingFunction = m_linearTimingFunction.get(); |
848 m_timing.iterationDuration = 2.0; | 857 m_timing.iterationDuration = 2.0; |
849 m_timing.iterationCount = 10; | 858 m_timing.iterationCount = 10; |
850 m_timing.direction = Timing::PlaybackDirectionAlternate; | 859 m_timing.direction = Timing::PlaybackDirectionAlternate; |
851 // -- | 860 // -- |
852 | 861 |
853 // Curve is created | 862 // Curve is created |
854 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock(); | 863 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock(); |
855 ExpectationSet usesMockCurve; | 864 ExpectationSet usesMockCurve; |
856 | 865 |
857 EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve()) | 866 EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve()) |
858 .WillOnce(Return(mockCurvePtr)); | 867 .WillOnce(Return(mockCurvePtr)); |
859 | 868 |
860 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeEase)); | 869 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeEase)); |
861 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.5, -1.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); | 870 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.5, -1.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); |
862 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 20.0),
1.0, 2.0, 3.0, 4.0)); | 871 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 20.0),
1.0, 2.0, 3.0, 4.0)); |
863 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(2.0, 5.0)))
; | 872 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(2.0, 5.0)))
; |
864 | 873 |
865 // KeyframeEffect is created | 874 // KeyframeEffect is created |
866 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); | 875 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); |
867 ExpectationSet usesMockAnimation; | 876 ExpectationSet usesMockAnimation; |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
905 | 914 |
906 m_timing.timingFunction = m_linearTimingFunction.get(); | 915 m_timing.timingFunction = m_linearTimingFunction.get(); |
907 m_timing.iterationCount = 10; | 916 m_timing.iterationCount = 10; |
908 m_timing.direction = Timing::PlaybackDirectionAlternateReverse; | 917 m_timing.direction = Timing::PlaybackDirectionAlternateReverse; |
909 // -- | 918 // -- |
910 | 919 |
911 // Curve is created | 920 // Curve is created |
912 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock(); | 921 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock(); |
913 ExpectationSet usesMockCurve; | 922 ExpectationSet usesMockCurve; |
914 | 923 |
915 EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve()) | 924 EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve()) |
916 .WillOnce(Return(mockCurvePtr)); | 925 .WillOnce(Return(mockCurvePtr)); |
917 | 926 |
918 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeEaseIn)); | 927 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeEaseIn)); |
919 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.25, -1.0)
, WebCompositorAnimationCurve::TimingFunctionTypeLinear)); | 928 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.25, -1.0)
, WebCompositorAnimationCurve::TimingFunctionTypeLinear)); |
920 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.5, 20.0),
0.0, 0.0, 0.0, 1.0)); | 929 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.5, 20.0),
0.0, 0.0, 0.0, 1.0)); |
921 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 5.0)))
; | 930 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 5.0)))
; |
922 | 931 |
923 // Create the animation | 932 // Create the animation |
924 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); | 933 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); |
925 ExpectationSet usesMockAnimation; | 934 ExpectationSet usesMockAnimation; |
(...skipping 29 matching lines...) Expand all Loading... |
955 | 964 |
956 m_timing.iterationCount = 5.0; | 965 m_timing.iterationCount = 5.0; |
957 m_timing.iterationDuration = 1.5; | 966 m_timing.iterationDuration = 1.5; |
958 m_timing.startDelay = -3; | 967 m_timing.startDelay = -3; |
959 m_timing.direction = Timing::PlaybackDirectionAlternateReverse; | 968 m_timing.direction = Timing::PlaybackDirectionAlternateReverse; |
960 // -- | 969 // -- |
961 | 970 |
962 // Curve is created | 971 // Curve is created |
963 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; | 972 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; |
964 ExpectationSet usesMockCurve; | 973 ExpectationSet usesMockCurve; |
965 EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve()) | 974 EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve()) |
966 .WillOnce(Return(mockCurvePtr)); | 975 .WillOnce(Return(mockCurvePtr)); |
967 | 976 |
968 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); | 977 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); |
969 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.5, 5.0)))
; | 978 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.5, 5.0)))
; |
970 | 979 |
971 // Create animation | 980 // Create animation |
972 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); | 981 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); |
973 ExpectationSet usesMockAnimation; | 982 ExpectationSet usesMockAnimation; |
974 | 983 |
975 usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurv
ePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _)) | 984 usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurv
ePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _)) |
(...skipping 24 matching lines...) Expand all Loading... |
1000 AnimatableValueKeyframeEffectModel* effect = createKeyframeEffectModel( | 1009 AnimatableValueKeyframeEffectModel* effect = createKeyframeEffectModel( |
1001 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(2.0
).get(), 0), | 1010 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(2.0
).get(), 0), |
1002 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(5.0
).get(), 1.0)); | 1011 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(5.0
).get(), 1.0)); |
1003 | 1012 |
1004 m_timing.playbackRate = 2; | 1013 m_timing.playbackRate = 2; |
1005 // -- | 1014 // -- |
1006 | 1015 |
1007 // Curve is created | 1016 // Curve is created |
1008 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; | 1017 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; |
1009 ExpectationSet usesMockCurve; | 1018 ExpectationSet usesMockCurve; |
1010 EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve()) | 1019 EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve()) |
1011 .WillOnce(Return(mockCurvePtr)); | 1020 .WillOnce(Return(mockCurvePtr)); |
1012 | 1021 |
1013 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); | 1022 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); |
1014 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 5.0)))
; | 1023 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 5.0)))
; |
1015 | 1024 |
1016 // Create animation | 1025 // Create animation |
1017 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); | 1026 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); |
1018 ExpectationSet usesMockAnimation; | 1027 ExpectationSet usesMockAnimation; |
1019 | 1028 |
1020 usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurv
ePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _)) | 1029 usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurv
ePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _)) |
(...skipping 24 matching lines...) Expand all Loading... |
1045 // KeyframeEffect to convert | 1054 // KeyframeEffect to convert |
1046 AnimatableValueKeyframeEffectModel* effect = createKeyframeEffectModel( | 1055 AnimatableValueKeyframeEffectModel* effect = createKeyframeEffectModel( |
1047 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(2.0
).get(), 0), | 1056 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(2.0
).get(), 0), |
1048 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(5.0
).get(), 1.0)); | 1057 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(5.0
).get(), 1.0)); |
1049 | 1058 |
1050 m_timing.fillMode = Timing::FillModeNone; | 1059 m_timing.fillMode = Timing::FillModeNone; |
1051 | 1060 |
1052 // Curve is created | 1061 // Curve is created |
1053 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; | 1062 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; |
1054 ExpectationSet usesMockCurve; | 1063 ExpectationSet usesMockCurve; |
1055 EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve()) | 1064 EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve()) |
1056 .WillOnce(Return(mockCurvePtr)); | 1065 .WillOnce(Return(mockCurvePtr)); |
1057 | 1066 |
1058 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); | 1067 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); |
1059 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 5.0)))
; | 1068 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 5.0)))
; |
1060 | 1069 |
1061 // Create animation | 1070 // Create animation |
1062 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); | 1071 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); |
1063 ExpectationSet usesMockAnimation; | 1072 ExpectationSet usesMockAnimation; |
1064 | 1073 |
1065 usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurv
ePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _)) | 1074 usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurv
ePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _)) |
(...skipping 24 matching lines...) Expand all Loading... |
1090 // KeyframeEffect to convert | 1099 // KeyframeEffect to convert |
1091 AnimatableValueKeyframeEffectModel* effect = createKeyframeEffectModel( | 1100 AnimatableValueKeyframeEffectModel* effect = createKeyframeEffectModel( |
1092 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(2.0
).get(), 0), | 1101 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(2.0
).get(), 0), |
1093 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(5.0
).get(), 1.0)); | 1102 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(5.0
).get(), 1.0)); |
1094 | 1103 |
1095 m_timing.fillMode = Timing::FillModeAuto; | 1104 m_timing.fillMode = Timing::FillModeAuto; |
1096 | 1105 |
1097 // Curve is created | 1106 // Curve is created |
1098 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; | 1107 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; |
1099 ExpectationSet usesMockCurve; | 1108 ExpectationSet usesMockCurve; |
1100 EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve()) | 1109 EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve()) |
1101 .WillOnce(Return(mockCurvePtr)); | 1110 .WillOnce(Return(mockCurvePtr)); |
1102 | 1111 |
1103 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); | 1112 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); |
1104 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 5.0)))
; | 1113 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 5.0)))
; |
1105 | 1114 |
1106 // Create animation | 1115 // Create animation |
1107 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); | 1116 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); |
1108 ExpectationSet usesMockAnimation; | 1117 ExpectationSet usesMockAnimation; |
1109 | 1118 |
1110 usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurv
ePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _)) | 1119 usesMockCurve += EXPECT_CALL(m_mockCompositor, createAnimation(Ref(*mockCurv
ePtr), WebCompositorAnimation::TargetPropertyOpacity, _, _)) |
(...skipping 24 matching lines...) Expand all Loading... |
1135 // KeyframeEffect to convert | 1144 // KeyframeEffect to convert |
1136 AnimatableValueKeyframeEffectModel* effect = createKeyframeEffectModel( | 1145 AnimatableValueKeyframeEffectModel* effect = createKeyframeEffectModel( |
1137 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(2.0
).get(), 0), | 1146 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(2.0
).get(), 0), |
1138 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(5.0
).get(), 1.0)); | 1147 createReplaceOpKeyframe(CSSPropertyOpacity, AnimatableDouble::create(5.0
).get(), 1.0)); |
1139 | 1148 |
1140 m_timing.timingFunction = m_cubicCustomTimingFunction; | 1149 m_timing.timingFunction = m_cubicCustomTimingFunction; |
1141 | 1150 |
1142 // Curve is created | 1151 // Curve is created |
1143 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; | 1152 WebFloatAnimationCurveMock* mockCurvePtr = new WebFloatAnimationCurveMock; |
1144 ExpectationSet usesMockCurve; | 1153 ExpectationSet usesMockCurve; |
1145 EXPECT_CALL(m_mockCompositor, createFloatAnimationCurve()) | 1154 EXPECT_CALL(*m_mockCompositorFactory, createFloatAnimationCurve()) |
1146 .WillOnce(Return(mockCurvePtr)); | 1155 .WillOnce(Return(mockCurvePtr)); |
1147 | 1156 |
1148 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); | 1157 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(0.0, 2.0),
WebCompositorAnimationCurve::TimingFunctionTypeLinear)); |
1149 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 5.0)))
; | 1158 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(WebFloatKeyframe(1.0, 5.0)))
; |
1150 usesMockCurve += EXPECT_CALL(*mockCurvePtr, setCubicBezierTimingFunction(1,
2, 3, 4)); | 1159 usesMockCurve += EXPECT_CALL(*mockCurvePtr, setCubicBezierTimingFunction(1,
2, 3, 4)); |
1151 | 1160 |
1152 // Create animation | 1161 // Create animation |
1153 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); | 1162 WebCompositorAnimationMock* mockAnimationPtr = new WebCompositorAnimationMoc
k(WebCompositorAnimation::TargetPropertyOpacity); |
1154 ExpectationSet usesMockAnimation; | 1163 ExpectationSet usesMockAnimation; |
1155 | 1164 |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1219 simulateFrame(1.); | 1228 simulateFrame(1.); |
1220 | 1229 |
1221 element->setLayoutObject(nullptr); | 1230 element->setLayoutObject(nullptr); |
1222 LayoutObjectProxy::dispose(layoutObject); | 1231 LayoutObjectProxy::dispose(layoutObject); |
1223 | 1232 |
1224 Heap::collectAllGarbage(); | 1233 Heap::collectAllGarbage(); |
1225 EXPECT_TRUE(element->elementAnimations()->animations().isEmpty()); | 1234 EXPECT_TRUE(element->elementAnimations()->animations().isEmpty()); |
1226 } | 1235 } |
1227 | 1236 |
1228 } // namespace blink | 1237 } // namespace blink |
OLD | NEW |