| Index: cc/animation/transform_operations_unittest.cc
|
| diff --git a/cc/animation/transform_operations_unittest.cc b/cc/animation/transform_operations_unittest.cc
|
| index 87dd69df1220b48dd841dd92162fd8eff7c95d49..208f81a7a62f9ccc4043179714b97fefccb27a16 100644
|
| --- a/cc/animation/transform_operations_unittest.cc
|
| +++ b/cc/animation/transform_operations_unittest.cc
|
| @@ -1402,131 +1402,83 @@ TEST(TransformOperationTest, IsTranslationWithMultipleOperations) {
|
| EXPECT_TRUE(operations2.IsTranslation());
|
| }
|
|
|
| -TEST(TransformOperationTest, MaximumScale) {
|
| - TransformOperations operations1;
|
| - operations1.AppendScale(3.f, 2.f, 5.f);
|
| - TransformOperations operations2;
|
| - operations2.AppendScale(6.f, 5.f, 2.f);
|
| -
|
| - float max_scale = 0.f;
|
| - EXPECT_TRUE(operations2.MaximumScale(operations1, 0.f, 1.f, &max_scale));
|
| - // x at progress 1.f
|
| - EXPECT_EQ(6.f, max_scale);
|
| -
|
| - EXPECT_TRUE(operations2.MaximumScale(operations1, -1.f, 1.f, &max_scale));
|
| - // z at progress -1.f
|
| - EXPECT_EQ(8.f, max_scale);
|
| -
|
| - EXPECT_TRUE(operations2.MaximumScale(operations1, 0.f, 2.f, &max_scale));
|
| - // x at progress 2.f
|
| - EXPECT_EQ(9.f, max_scale);
|
| -
|
| - TransformOperations operations3;
|
| - operations3.AppendScale(1.f, 4.f, 1.f);
|
| - TransformOperations operations4;
|
| -
|
| - EXPECT_TRUE(operations4.MaximumScale(operations3, 0.f, 1.f, &max_scale));
|
| - // y at progress 0.f
|
| - EXPECT_EQ(4.f, max_scale);
|
| +TEST(TransformOperationTest, ScaleComponent) {
|
| + gfx::Vector3dF scale;
|
|
|
| - EXPECT_TRUE(operations4.MaximumScale(operations3, -1.f, 1.f, &max_scale));
|
| - // y at progress -1.f
|
| - EXPECT_EQ(7.f, max_scale);
|
| -
|
| - EXPECT_TRUE(operations4.MaximumScale(operations3, 0.f, 2.f, &max_scale));
|
| - // y at progress 0.f
|
| - EXPECT_EQ(4.f, max_scale);
|
| + // Scale.
|
| + TransformOperations operations1;
|
| + operations1.AppendScale(-3.f, 2.f, 5.f);
|
| + EXPECT_TRUE(operations1.ScaleComponent(&scale));
|
| + EXPECT_EQ(gfx::Vector3dF(-3.f, 2.f, 5.f), scale);
|
|
|
| + // Translate + Scale.
|
| TransformOperations operations5;
|
| operations5.AppendTranslate(1.f, 2.f, 3.f);
|
| - operations5.AppendScale(1.f, 1.f, 4.f);
|
| + operations5.AppendScale(2.f, 5.f, 4.f);
|
| + EXPECT_TRUE(operations5.ScaleComponent(&scale));
|
| + EXPECT_EQ(gfx::Vector3dF(2.f, 5.f, 4.f), scale);
|
| +
|
| + // Translate + Scale + Matrix with translate.
|
| gfx::Transform translation_transform;
|
| translation_transform.Translate3d(1.f, 2.f, 3.f);
|
| operations5.AppendMatrix(translation_transform);
|
| - TransformOperations operations6;
|
| - operations6.AppendTranslate(2.f, 3.f, 4.f);
|
| - operations6.AppendScale(2.f, 5.f, 1.f);
|
| - operations6.AppendMatrix(translation_transform);
|
| -
|
| - EXPECT_TRUE(operations6.MaximumScale(operations5, 0.f, 1.f, &max_scale));
|
| - // y at progress 1.f
|
| - EXPECT_EQ(5.f, max_scale);
|
| -
|
| - EXPECT_TRUE(operations6.MaximumScale(operations5, -1.f, 1.f, &max_scale));
|
| - // z at progress -1.f
|
| - EXPECT_EQ(7.f, max_scale);
|
| -
|
| - EXPECT_TRUE(operations6.MaximumScale(operations5, 0.f, 2.f, &max_scale));
|
| - // y at progress 2.f
|
| - EXPECT_EQ(9.f, max_scale);
|
| + EXPECT_TRUE(operations5.ScaleComponent(&scale));
|
| + EXPECT_EQ(gfx::Vector3dF(2.f, 5.f, 4.f), scale);
|
| }
|
|
|
| -TEST(TransformOperationTest, MaximumScaleCannotBeComputed) {
|
| +TEST(TransformOperationTest, ScaleComponentCannotBeComputed) {
|
| + gfx::Vector3dF scale;
|
| +
|
| + // Scale can.
|
| TransformOperations operations1;
|
| operations1.AppendScale(2.f, 2.f, 2.f);
|
| + EXPECT_TRUE(operations1.ScaleComponent(&scale));
|
| + EXPECT_EQ(gfx::Vector3dF(2.f, 2.f, 2.f), scale);
|
| +
|
| + // Translate can.
|
| TransformOperations operations2;
|
| operations2.AppendTranslate(1.f, 2.f, 3.f);
|
| + EXPECT_TRUE(operations2.ScaleComponent(&scale));
|
| + EXPECT_EQ(gfx::Vector3dF(1.f, 1.f, 1.f), scale);
|
|
|
| - float max_scale = 0.f;
|
| -
|
| - // Non-matching operations.
|
| - EXPECT_FALSE(operations2.MaximumScale(operations1, 0.f, 1.f, &max_scale));
|
| -
|
| + // Scale + translate can.
|
| TransformOperations operations3;
|
| - operations3.AppendScale(2.f, 2.f, 2.f);
|
| + operations3.AppendScale(2.f, 3.f, 2.f);
|
| operations3.AppendTranslate(1.f, 2.f, 3.f);
|
| - operations3.AppendScale(3.f, 3.f, 3.f);
|
| - TransformOperations operations4;
|
| - operations4.AppendScale(4.f, 4.f, 4.f);
|
| - operations4.AppendTranslate(2.f, 3.f, 4.f);
|
| - operations4.AppendScale(5.f, 5.f, 5.f);
|
| + EXPECT_TRUE(operations3.ScaleComponent(&scale));
|
| + EXPECT_EQ(gfx::Vector3dF(2.f, 3.f, 2.f), scale);
|
|
|
| - // More that one scale operation in a sequence.
|
| - EXPECT_FALSE(operations4.MaximumScale(operations3, 0.f, 1.f, &max_scale));
|
| + // Two Scales can't.
|
| + TransformOperations operations4;
|
| + operations4.AppendScale(2.f, 3.f, 2.f);
|
| + operations4.AppendScale(3.f, 2.f, 3.f);
|
| + EXPECT_FALSE(operations4.ScaleComponent(&scale));
|
|
|
| + // Matrix can't.
|
| TransformOperations operations5;
|
| operations5.AppendScale(2.f, 2.f, 2.f);
|
| gfx::Transform scaling_transform;
|
| scaling_transform.Scale(2.f, 2.f);
|
| operations5.AppendMatrix(scaling_transform);
|
| - TransformOperations operations6;
|
| - operations6.AppendScale(3.f, 3.f, 3.f);
|
| - gfx::Transform translation_transform;
|
| - translation_transform.Translate3d(1.f, 2.f, 3.f);
|
| - operations6.AppendMatrix(translation_transform);
|
| -
|
| - // Non-translation matrix operation.
|
| - EXPECT_FALSE(operations6.MaximumScale(operations5, 0.f, 1.f, &max_scale));
|
| + EXPECT_FALSE(operations5.ScaleComponent(&scale));
|
|
|
| + // Scale + Rotate can't.
|
| TransformOperations operations7;
|
| operations7.AppendScale(2.f, 2.f, 2.f);
|
| operations7.AppendRotate(1.f, 2.f, 3.f, 4.f);
|
| - TransformOperations operations8;
|
| - operations8.AppendScale(3.f, 3.f, 3.f);
|
| - operations8.AppendRotate(3.f, 4.f, 5.f, 6.f);
|
| -
|
| - // Rotation operation.
|
| - EXPECT_FALSE(operations8.MaximumScale(operations7, 0.f, 1.f, &max_scale));
|
| + EXPECT_FALSE(operations7.ScaleComponent(&scale));
|
|
|
| + // Scale + Skew can't.
|
| TransformOperations operations9;
|
| operations9.AppendScale(2.f, 2.f, 2.f);
|
| operations9.AppendSkew(1.f, 2.f);
|
| - TransformOperations operations10;
|
| - operations10.AppendScale(3.f, 3.f, 3.f);
|
| - operations10.AppendSkew(3.f, 4.f);
|
| -
|
| - // Skew operation.
|
| - EXPECT_FALSE(operations10.MaximumScale(operations9, 0.f, 1.f, &max_scale));
|
| + EXPECT_FALSE(operations9.ScaleComponent(&scale));
|
|
|
| + // Scale + Perspective can't.
|
| TransformOperations operations11;
|
| operations11.AppendScale(2.f, 2.f, 2.f);
|
| operations11.AppendPerspective(1.f);
|
| - TransformOperations operations12;
|
| - operations12.AppendScale(3.f, 3.f, 3.f);
|
| - operations12.AppendPerspective(3.f);
|
| -
|
| - // Perspective operation.
|
| - EXPECT_FALSE(operations12.MaximumScale(operations11, 0.f, 1.f, &max_scale));
|
| + EXPECT_FALSE(operations11.ScaleComponent(&scale));
|
| }
|
|
|
| } // namespace
|
|
|