| Index: ui/gfx/geometry/cubic_bezier_unittest.cc
|
| diff --git a/ui/gfx/geometry/cubic_bezier_unittest.cc b/ui/gfx/geometry/cubic_bezier_unittest.cc
|
| index 168817c6449ec9caf4f02705092b9080e3904fbe..9ade0daf42fca709bf8acaeb99e1f658ebbfb83c 100644
|
| --- a/ui/gfx/geometry/cubic_bezier_unittest.cc
|
| +++ b/ui/gfx/geometry/cubic_bezier_unittest.cc
|
| @@ -164,5 +164,32 @@ TEST(CubicBezierTest, Slope) {
|
| EXPECT_NEAR(function.Slope(1), 0, epsilon);
|
| }
|
|
|
| +TEST(CubicBezierTest, InputOutOfRange) {
|
| + CubicBezier simple(0.5, 1.0, 0.5, 1.0);
|
| + EXPECT_EQ(-2.0, simple.Solve(-1.0));
|
| + EXPECT_EQ(1.0, simple.Solve(2.0));
|
| +
|
| + CubicBezier coincidentEndpoints(0.0, 0.0, 1.0, 1.0);
|
| + EXPECT_EQ(-1.0, coincidentEndpoints.Solve(-1.0));
|
| + EXPECT_EQ(2.0, coincidentEndpoints.Solve(2.0));
|
| +
|
| + CubicBezier verticalGradient(0.0, 1.0, 1.0, 0.0);
|
| + EXPECT_EQ(0.0, verticalGradient.Solve(-1.0));
|
| + EXPECT_EQ(1.0, verticalGradient.Solve(2.0));
|
| +
|
| + CubicBezier distinctEndpoints(0.1, 0.2, 0.8, 0.8);
|
| + EXPECT_EQ(-2.0, distinctEndpoints.Solve(-1.0));
|
| + EXPECT_EQ(2.0, distinctEndpoints.Solve(2.0));
|
| +
|
| + CubicBezier coincidentEndpoint(0.0, 0.0, 0.8, 0.8);
|
| + EXPECT_EQ(-1.0, coincidentEndpoint.Solve(-1.0));
|
| + EXPECT_EQ(2.0, coincidentEndpoint.Solve(2.0));
|
| +
|
| + CubicBezier threeCoincidentPoints(0.0, 0.0, 0.0, 0.0);
|
| + EXPECT_EQ(0, threeCoincidentPoints.Solve(-1.0));
|
| + EXPECT_EQ(2.0, threeCoincidentPoints.Solve(2.0));
|
| +
|
| +}
|
| +
|
| } // namespace
|
| } // namespace gfx
|
|
|