| Index: third_party/WebKit/Source/platform/animation/TimingFunctionTest.cpp
|
| diff --git a/third_party/WebKit/Source/platform/animation/TimingFunctionTest.cpp b/third_party/WebKit/Source/platform/animation/TimingFunctionTest.cpp
|
| index 66d08552db17091826b8c4068f34f7389d09e99d..44f6c43a089c01581d645cbe9bfff864004d21bb 100644
|
| --- a/third_party/WebKit/Source/platform/animation/TimingFunctionTest.cpp
|
| +++ b/third_party/WebKit/Source/platform/animation/TimingFunctionTest.cpp
|
| @@ -115,6 +115,11 @@ TEST_F(TimingFunctionTest, StepToString) {
|
| EXPECT_EQ("steps(5)", stepTimingCustomEnd->toString());
|
| }
|
|
|
| +TEST_F(TimingFunctionTest, FrameToString) {
|
| + RefPtr<TimingFunction> frameTiming = FramesTimingFunction::create(3);
|
| + EXPECT_EQ("frames(3)", frameTiming->toString());
|
| +}
|
| +
|
| TEST_F(TimingFunctionTest, BaseOperatorEq) {
|
| RefPtr<TimingFunction> linearTiming = LinearTimingFunction::shared();
|
| RefPtr<TimingFunction> cubicTiming1 = CubicBezierTimingFunction::preset(
|
| @@ -125,6 +130,7 @@ TEST_F(TimingFunctionTest, BaseOperatorEq) {
|
| StepsTimingFunction::preset(StepsTimingFunction::StepPosition::END);
|
| RefPtr<TimingFunction> stepsTiming2 =
|
| StepsTimingFunction::create(5, StepsTimingFunction::StepPosition::START);
|
| + RefPtr<TimingFunction> framesTiming = FramesTimingFunction::create(5);
|
|
|
| Vector<std::pair<std::string, RefPtr<TimingFunction>>> v;
|
| v.push_back(std::make_pair("linearTiming", linearTiming));
|
| @@ -132,6 +138,7 @@ TEST_F(TimingFunctionTest, BaseOperatorEq) {
|
| v.push_back(std::make_pair("cubicTiming2", cubicTiming2));
|
| v.push_back(std::make_pair("stepsTiming1", stepsTiming1));
|
| v.push_back(std::make_pair("stepsTiming2", stepsTiming2));
|
| + v.push_back(std::make_pair("framesTiming", framesTiming));
|
| notEqualHelperLoop(v);
|
| }
|
|
|
| @@ -248,6 +255,19 @@ TEST_F(TimingFunctionTest, StepsOperatorEqPreset) {
|
| EXPECT_EQ(*stepsB, *stepsA);
|
| }
|
|
|
| +TEST_F(TimingFunctionTest, FramesOperatorEq) {
|
| + RefPtr<TimingFunction> framesTiming1 = FramesTimingFunction::create(5);
|
| + RefPtr<TimingFunction> framesTiming2 = FramesTimingFunction::create(7);
|
| +
|
| + EXPECT_EQ(*FramesTimingFunction::create(5), *framesTiming1);
|
| + EXPECT_EQ(*FramesTimingFunction::create(7), *framesTiming2);
|
| +
|
| + Vector<std::pair<std::string, RefPtr<TimingFunction>>> v;
|
| + v.push_back(std::make_pair("framesTiming1", framesTiming1));
|
| + v.push_back(std::make_pair("framesTiming2", framesTiming2));
|
| + notEqualHelperLoop(v);
|
| +}
|
| +
|
| TEST_F(TimingFunctionTest, LinearEvaluate) {
|
| RefPtr<TimingFunction> linearTiming = LinearTimingFunction::shared();
|
| EXPECT_EQ(0.2, linearTiming->evaluate(0.2, 0));
|
| @@ -286,6 +306,21 @@ TEST_F(TimingFunctionTest, StepRange) {
|
| EXPECT_NEAR(1, end, 0.01);
|
| }
|
|
|
| +TEST_F(TimingFunctionTest, FrameRange) {
|
| + double start = 0;
|
| + double end = 1;
|
| + RefPtr<TimingFunction> frames = FramesTimingFunction::create(4);
|
| + frames->range(&start, &end);
|
| + EXPECT_NEAR(0, start, 0.01);
|
| + EXPECT_NEAR(1, end, 0.01);
|
| +
|
| + start = -1;
|
| + end = 10;
|
| + frames->range(&start, &end);
|
| + EXPECT_NEAR(0, start, 0.01);
|
| + EXPECT_NEAR(1, end, 0.01);
|
| +}
|
| +
|
| TEST_F(TimingFunctionTest, CubicRange) {
|
| double start = 0;
|
| double end = 1;
|
| @@ -467,6 +502,22 @@ TEST_F(TimingFunctionTest, StepsEvaluate) {
|
| EXPECT_EQ(1.00, stepsTimingCustomEnd->evaluate(2.00, 0));
|
| }
|
|
|
| +TEST_F(TimingFunctionTest, FramesEvaluate) {
|
| + RefPtr<TimingFunction> framesTiming = FramesTimingFunction::create(5);
|
| + EXPECT_EQ(0.00, framesTiming->evaluate(-2.00, 0));
|
| + EXPECT_EQ(0.00, framesTiming->evaluate(0.00, 0));
|
| + EXPECT_EQ(0.00, framesTiming->evaluate(0.19, 0));
|
| + EXPECT_EQ(0.25, framesTiming->evaluate(0.20, 0));
|
| + EXPECT_EQ(0.25, framesTiming->evaluate(0.39, 0));
|
| + EXPECT_EQ(0.50, framesTiming->evaluate(0.40, 0));
|
| + EXPECT_EQ(0.50, framesTiming->evaluate(0.59, 0));
|
| + EXPECT_EQ(0.75, framesTiming->evaluate(0.60, 0));
|
| + EXPECT_EQ(0.75, framesTiming->evaluate(0.79, 0));
|
| + EXPECT_EQ(1.00, framesTiming->evaluate(0.80, 0));
|
| + EXPECT_EQ(1.00, framesTiming->evaluate(1.00, 0));
|
| + EXPECT_EQ(1.00, framesTiming->evaluate(3.00, 0));
|
| +}
|
| +
|
| } // namespace
|
|
|
| } // namespace blink
|
|
|