Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(165)

Side by Side Diff: third_party/WebKit/Source/core/animation/CompositorAnimationsTest.cpp

Issue 1616653002: CC Animation: Move files from cc_blink to Source/platform/animation (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Update GN. Port CompositorAnimationsTest to use CompositorFactoryMock. Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698