| Index: cc/animation/layer_animation_controller_unittest.cc
|
| diff --git a/cc/animation/layer_animation_controller_unittest.cc b/cc/animation/layer_animation_controller_unittest.cc
|
| index de2176207f95157e89d5abc59a278f1c25df7088..6d2f0c0b9048f67fc3a2a719c55fac8ce361a820 100644
|
| --- a/cc/animation/layer_animation_controller_unittest.cc
|
| +++ b/cc/animation/layer_animation_controller_unittest.cc
|
| @@ -1890,12 +1890,12 @@ TEST(LayerAnimationControllerTest, HasOnlyTranslationTransforms) {
|
| EXPECT_TRUE(controller_impl->HasOnlyTranslationTransforms());
|
| }
|
|
|
| -TEST(LayerAnimationControllerTest, MaximumScale) {
|
| +TEST(LayerAnimationControllerTest, MaximumTargetScale) {
|
| scoped_refptr<LayerAnimationController> controller_impl(
|
| LayerAnimationController::Create(0));
|
|
|
| float max_scale = 0.f;
|
| - EXPECT_TRUE(controller_impl->MaximumScale(&max_scale));
|
| + EXPECT_TRUE(controller_impl->MaximumTargetScale(&max_scale));
|
| EXPECT_EQ(0.f, max_scale);
|
|
|
| scoped_ptr<KeyframedTransformAnimationCurve> curve1(
|
| @@ -1912,7 +1912,7 @@ TEST(LayerAnimationControllerTest, MaximumScale) {
|
| Animation::Create(curve1.Pass(), 1, 1, Animation::Transform));
|
| controller_impl->AddAnimation(animation.Pass());
|
|
|
| - EXPECT_TRUE(controller_impl->MaximumScale(&max_scale));
|
| + EXPECT_TRUE(controller_impl->MaximumTargetScale(&max_scale));
|
| EXPECT_EQ(4.f, max_scale);
|
|
|
| scoped_ptr<KeyframedTransformAnimationCurve> curve2(
|
| @@ -1928,7 +1928,7 @@ TEST(LayerAnimationControllerTest, MaximumScale) {
|
| animation = Animation::Create(curve2.Pass(), 2, 2, Animation::Transform);
|
| controller_impl->AddAnimation(animation.Pass());
|
|
|
| - EXPECT_TRUE(controller_impl->MaximumScale(&max_scale));
|
| + EXPECT_TRUE(controller_impl->MaximumTargetScale(&max_scale));
|
| EXPECT_EQ(6.f, max_scale);
|
|
|
| scoped_ptr<KeyframedTransformAnimationCurve> curve3(
|
| @@ -1944,7 +1944,7 @@ TEST(LayerAnimationControllerTest, MaximumScale) {
|
| animation = Animation::Create(curve3.Pass(), 3, 3, Animation::Transform);
|
| controller_impl->AddAnimation(animation.Pass());
|
|
|
| - EXPECT_FALSE(controller_impl->MaximumScale(&max_scale));
|
| + EXPECT_FALSE(controller_impl->MaximumTargetScale(&max_scale));
|
|
|
| controller_impl->GetAnimation(3, Animation::Transform)
|
| ->SetRunState(Animation::Finished, TicksFromSecondsF(0.0));
|
| @@ -1952,11 +1952,78 @@ TEST(LayerAnimationControllerTest, MaximumScale) {
|
| ->SetRunState(Animation::Finished, TicksFromSecondsF(0.0));
|
|
|
| // Only unfinished animations should be considered by
|
| - // MaximumScale.
|
| - EXPECT_TRUE(controller_impl->MaximumScale(&max_scale));
|
| + // MaximumTargetScale.
|
| + EXPECT_TRUE(controller_impl->MaximumTargetScale(&max_scale));
|
| EXPECT_EQ(4.f, max_scale);
|
| }
|
|
|
| +TEST(LayerAnimationControllerTest, MaximumTargetScaleWithDirection) {
|
| + scoped_refptr<LayerAnimationController> controller_impl(
|
| + LayerAnimationController::Create(0));
|
| +
|
| + scoped_ptr<KeyframedTransformAnimationCurve> curve1(
|
| + KeyframedTransformAnimationCurve::Create());
|
| + TransformOperations operations1;
|
| + operations1.AppendScale(1.0, 2.0, 3.0);
|
| + curve1->AddKeyframe(TransformKeyframe::Create(
|
| + 0.0, operations1, scoped_ptr<TimingFunction>()));
|
| + TransformOperations operations2;
|
| + operations2.AppendScale(4.0, 5.0, 6.0);
|
| + curve1->AddKeyframe(TransformKeyframe::Create(
|
| + 1.0, operations2, scoped_ptr<TimingFunction>()));
|
| +
|
| + scoped_ptr<Animation> animation_owned(
|
| + Animation::Create(curve1.Pass(), 1, 1, Animation::Transform));
|
| + Animation* animation = animation_owned.get();
|
| + controller_impl->AddAnimation(animation_owned.Pass());
|
| +
|
| + float max_scale = 0.f;
|
| +
|
| + EXPECT_GT(animation->playback_rate(), 0.0);
|
| +
|
| + // Normal direction with positive playback rate.
|
| + animation->set_direction(Animation::Normal);
|
| + EXPECT_TRUE(controller_impl->MaximumTargetScale(&max_scale));
|
| + EXPECT_EQ(6.f, max_scale);
|
| +
|
| + // Alternate direction with positive playback rate.
|
| + animation->set_direction(Animation::Alternate);
|
| + EXPECT_TRUE(controller_impl->MaximumTargetScale(&max_scale));
|
| + EXPECT_EQ(6.f, max_scale);
|
| +
|
| + // Reverse direction with positive playback rate.
|
| + animation->set_direction(Animation::Reverse);
|
| + EXPECT_TRUE(controller_impl->MaximumTargetScale(&max_scale));
|
| + EXPECT_EQ(3.f, max_scale);
|
| +
|
| + // Alternate reverse direction.
|
| + animation->set_direction(Animation::Reverse);
|
| + EXPECT_TRUE(controller_impl->MaximumTargetScale(&max_scale));
|
| + EXPECT_EQ(3.f, max_scale);
|
| +
|
| + animation->set_playback_rate(-1.0);
|
| +
|
| + // Normal direction with negative playback rate.
|
| + animation->set_direction(Animation::Normal);
|
| + EXPECT_TRUE(controller_impl->MaximumTargetScale(&max_scale));
|
| + EXPECT_EQ(3.f, max_scale);
|
| +
|
| + // Alternate direction with negative playback rate.
|
| + animation->set_direction(Animation::Alternate);
|
| + EXPECT_TRUE(controller_impl->MaximumTargetScale(&max_scale));
|
| + EXPECT_EQ(3.f, max_scale);
|
| +
|
| + // Reverse direction with negative playback rate.
|
| + animation->set_direction(Animation::Reverse);
|
| + EXPECT_TRUE(controller_impl->MaximumTargetScale(&max_scale));
|
| + EXPECT_EQ(6.f, max_scale);
|
| +
|
| + // Alternate reverse direction with negative playback rate.
|
| + animation->set_direction(Animation::Reverse);
|
| + EXPECT_TRUE(controller_impl->MaximumTargetScale(&max_scale));
|
| + EXPECT_EQ(6.f, max_scale);
|
| +}
|
| +
|
| TEST(LayerAnimationControllerTest, NewlyPushedAnimationWaitsForActivation) {
|
| scoped_ptr<AnimationEventsVector> events(
|
| make_scoped_ptr(new AnimationEventsVector));
|
|
|