| OLD | NEW |
| 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 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 110 | 110 |
| 111 RefPtr<TimingFunction> step_timing_custom_middle = | 111 RefPtr<TimingFunction> step_timing_custom_middle = |
| 112 StepsTimingFunction::Create(4, StepsTimingFunction::StepPosition::MIDDLE); | 112 StepsTimingFunction::Create(4, StepsTimingFunction::StepPosition::MIDDLE); |
| 113 EXPECT_EQ("steps(4, middle)", step_timing_custom_middle->ToString()); | 113 EXPECT_EQ("steps(4, middle)", step_timing_custom_middle->ToString()); |
| 114 | 114 |
| 115 RefPtr<TimingFunction> step_timing_custom_end = | 115 RefPtr<TimingFunction> step_timing_custom_end = |
| 116 StepsTimingFunction::Create(5, StepsTimingFunction::StepPosition::END); | 116 StepsTimingFunction::Create(5, StepsTimingFunction::StepPosition::END); |
| 117 EXPECT_EQ("steps(5)", step_timing_custom_end->ToString()); | 117 EXPECT_EQ("steps(5)", step_timing_custom_end->ToString()); |
| 118 } | 118 } |
| 119 | 119 |
| 120 TEST_F(TimingFunctionTest, FrameToString) { |
| 121 RefPtr<TimingFunction> frame_timing = FramesTimingFunction::Create(3); |
| 122 EXPECT_EQ("frames(3)", frame_timing->ToString()); |
| 123 } |
| 124 |
| 120 TEST_F(TimingFunctionTest, BaseOperatorEq) { | 125 TEST_F(TimingFunctionTest, BaseOperatorEq) { |
| 121 RefPtr<TimingFunction> linear_timing = LinearTimingFunction::Shared(); | 126 RefPtr<TimingFunction> linear_timing = LinearTimingFunction::Shared(); |
| 122 RefPtr<TimingFunction> cubic_timing1 = CubicBezierTimingFunction::Preset( | 127 RefPtr<TimingFunction> cubic_timing1 = CubicBezierTimingFunction::Preset( |
| 123 CubicBezierTimingFunction::EaseType::EASE_IN); | 128 CubicBezierTimingFunction::EaseType::EASE_IN); |
| 124 RefPtr<TimingFunction> cubic_timing2 = | 129 RefPtr<TimingFunction> cubic_timing2 = |
| 125 CubicBezierTimingFunction::Create(0.17, 0.67, 1, -1.73); | 130 CubicBezierTimingFunction::Create(0.17, 0.67, 1, -1.73); |
| 126 RefPtr<TimingFunction> steps_timing1 = | 131 RefPtr<TimingFunction> steps_timing1 = |
| 127 StepsTimingFunction::Preset(StepsTimingFunction::StepPosition::END); | 132 StepsTimingFunction::Preset(StepsTimingFunction::StepPosition::END); |
| 128 RefPtr<TimingFunction> steps_timing2 = | 133 RefPtr<TimingFunction> steps_timing2 = |
| 129 StepsTimingFunction::Create(5, StepsTimingFunction::StepPosition::START); | 134 StepsTimingFunction::Create(5, StepsTimingFunction::StepPosition::START); |
| 135 RefPtr<TimingFunction> frames_timing = FramesTimingFunction::Create(5); |
| 130 | 136 |
| 131 Vector<std::pair<std::string, RefPtr<TimingFunction>>> v; | 137 Vector<std::pair<std::string, RefPtr<TimingFunction>>> v; |
| 132 v.push_back(std::make_pair("linearTiming", linear_timing)); | 138 v.push_back(std::make_pair("linearTiming", linear_timing)); |
| 133 v.push_back(std::make_pair("cubicTiming1", cubic_timing1)); | 139 v.push_back(std::make_pair("cubicTiming1", cubic_timing1)); |
| 134 v.push_back(std::make_pair("cubicTiming2", cubic_timing2)); | 140 v.push_back(std::make_pair("cubicTiming2", cubic_timing2)); |
| 135 v.push_back(std::make_pair("stepsTiming1", steps_timing1)); | 141 v.push_back(std::make_pair("stepsTiming1", steps_timing1)); |
| 136 v.push_back(std::make_pair("stepsTiming2", steps_timing2)); | 142 v.push_back(std::make_pair("stepsTiming2", steps_timing2)); |
| 143 v.push_back(std::make_pair("framesTiming", frames_timing)); |
| 137 NotEqualHelperLoop(v); | 144 NotEqualHelperLoop(v); |
| 138 } | 145 } |
| 139 | 146 |
| 140 TEST_F(TimingFunctionTest, LinearOperatorEq) { | 147 TEST_F(TimingFunctionTest, LinearOperatorEq) { |
| 141 RefPtr<TimingFunction> linear_timing1 = LinearTimingFunction::Shared(); | 148 RefPtr<TimingFunction> linear_timing1 = LinearTimingFunction::Shared(); |
| 142 RefPtr<TimingFunction> linear_timing2 = LinearTimingFunction::Shared(); | 149 RefPtr<TimingFunction> linear_timing2 = LinearTimingFunction::Shared(); |
| 143 EXPECT_EQ(*linear_timing1, *linear_timing1); | 150 EXPECT_EQ(*linear_timing1, *linear_timing1); |
| 144 EXPECT_EQ(*linear_timing1, *linear_timing2); | 151 EXPECT_EQ(*linear_timing1, *linear_timing2); |
| 145 } | 152 } |
| 146 | 153 |
| (...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 246 | 253 |
| 247 TEST_F(TimingFunctionTest, StepsOperatorEqPreset) { | 254 TEST_F(TimingFunctionTest, StepsOperatorEqPreset) { |
| 248 RefPtr<TimingFunction> steps_a = | 255 RefPtr<TimingFunction> steps_a = |
| 249 StepsTimingFunction::Preset(StepsTimingFunction::StepPosition::START); | 256 StepsTimingFunction::Preset(StepsTimingFunction::StepPosition::START); |
| 250 RefPtr<TimingFunction> steps_b = | 257 RefPtr<TimingFunction> steps_b = |
| 251 StepsTimingFunction::Create(1, StepsTimingFunction::StepPosition::START); | 258 StepsTimingFunction::Create(1, StepsTimingFunction::StepPosition::START); |
| 252 EXPECT_EQ(*steps_a, *steps_b); | 259 EXPECT_EQ(*steps_a, *steps_b); |
| 253 EXPECT_EQ(*steps_b, *steps_a); | 260 EXPECT_EQ(*steps_b, *steps_a); |
| 254 } | 261 } |
| 255 | 262 |
| 263 TEST_F(TimingFunctionTest, FramesOperatorEq) { |
| 264 RefPtr<TimingFunction> frames_timing1 = FramesTimingFunction::Create(5); |
| 265 RefPtr<TimingFunction> frames_timing2 = FramesTimingFunction::Create(7); |
| 266 |
| 267 EXPECT_EQ(*FramesTimingFunction::Create(5), *frames_timing1); |
| 268 EXPECT_EQ(*FramesTimingFunction::Create(7), *frames_timing2); |
| 269 |
| 270 Vector<std::pair<std::string, RefPtr<TimingFunction>>> v; |
| 271 v.push_back(std::make_pair("framesTiming1", frames_timing1)); |
| 272 v.push_back(std::make_pair("framesTiming2", frames_timing2)); |
| 273 NotEqualHelperLoop(v); |
| 274 } |
| 275 |
| 256 TEST_F(TimingFunctionTest, LinearEvaluate) { | 276 TEST_F(TimingFunctionTest, LinearEvaluate) { |
| 257 RefPtr<TimingFunction> linear_timing = LinearTimingFunction::Shared(); | 277 RefPtr<TimingFunction> linear_timing = LinearTimingFunction::Shared(); |
| 258 EXPECT_EQ(0.2, linear_timing->Evaluate(0.2, 0)); | 278 EXPECT_EQ(0.2, linear_timing->Evaluate(0.2, 0)); |
| 259 EXPECT_EQ(0.6, linear_timing->Evaluate(0.6, 0)); | 279 EXPECT_EQ(0.6, linear_timing->Evaluate(0.6, 0)); |
| 260 EXPECT_EQ(-0.2, linear_timing->Evaluate(-0.2, 0)); | 280 EXPECT_EQ(-0.2, linear_timing->Evaluate(-0.2, 0)); |
| 261 EXPECT_EQ(1.6, linear_timing->Evaluate(1.6, 0)); | 281 EXPECT_EQ(1.6, linear_timing->Evaluate(1.6, 0)); |
| 262 } | 282 } |
| 263 | 283 |
| 264 TEST_F(TimingFunctionTest, LinearRange) { | 284 TEST_F(TimingFunctionTest, LinearRange) { |
| 265 double start = 0; | 285 double start = 0; |
| (...skipping 18 matching lines...) Expand all Loading... |
| 284 EXPECT_NEAR(0, start, 0.01); | 304 EXPECT_NEAR(0, start, 0.01); |
| 285 EXPECT_NEAR(1, end, 0.01); | 305 EXPECT_NEAR(1, end, 0.01); |
| 286 | 306 |
| 287 start = -1; | 307 start = -1; |
| 288 end = 10; | 308 end = 10; |
| 289 steps->Range(&start, &end); | 309 steps->Range(&start, &end); |
| 290 EXPECT_NEAR(0, start, 0.01); | 310 EXPECT_NEAR(0, start, 0.01); |
| 291 EXPECT_NEAR(1, end, 0.01); | 311 EXPECT_NEAR(1, end, 0.01); |
| 292 } | 312 } |
| 293 | 313 |
| 314 TEST_F(TimingFunctionTest, FrameRange) { |
| 315 double start = 0; |
| 316 double end = 1; |
| 317 RefPtr<TimingFunction> frames = FramesTimingFunction::Create(4); |
| 318 frames->Range(&start, &end); |
| 319 EXPECT_NEAR(0, start, 0.01); |
| 320 EXPECT_NEAR(1, end, 0.01); |
| 321 |
| 322 start = -1; |
| 323 end = 10; |
| 324 frames->Range(&start, &end); |
| 325 EXPECT_NEAR(0, start, 0.01); |
| 326 EXPECT_NEAR(1, end, 0.01); |
| 327 } |
| 328 |
| 294 TEST_F(TimingFunctionTest, CubicRange) { | 329 TEST_F(TimingFunctionTest, CubicRange) { |
| 295 double start = 0; | 330 double start = 0; |
| 296 double end = 1; | 331 double end = 1; |
| 297 | 332 |
| 298 RefPtr<TimingFunction> cubic_ease_timing = CubicBezierTimingFunction::Preset( | 333 RefPtr<TimingFunction> cubic_ease_timing = CubicBezierTimingFunction::Preset( |
| 299 CubicBezierTimingFunction::EaseType::EASE); | 334 CubicBezierTimingFunction::EaseType::EASE); |
| 300 start = 0; | 335 start = 0; |
| 301 end = 1; | 336 end = 1; |
| 302 cubic_ease_timing->Range(&start, &end); | 337 cubic_ease_timing->Range(&start, &end); |
| 303 EXPECT_NEAR(0, start, 0.01); | 338 EXPECT_NEAR(0, start, 0.01); |
| (...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 477 EXPECT_EQ(0.25, steps_timing_custom_end->Evaluate(0.25, 0)); | 512 EXPECT_EQ(0.25, steps_timing_custom_end->Evaluate(0.25, 0)); |
| 478 EXPECT_EQ(0.25, steps_timing_custom_end->Evaluate(0.49, 0)); | 513 EXPECT_EQ(0.25, steps_timing_custom_end->Evaluate(0.49, 0)); |
| 479 EXPECT_EQ(0.50, steps_timing_custom_end->Evaluate(0.50, 0)); | 514 EXPECT_EQ(0.50, steps_timing_custom_end->Evaluate(0.50, 0)); |
| 480 EXPECT_EQ(0.50, steps_timing_custom_end->Evaluate(0.74, 0)); | 515 EXPECT_EQ(0.50, steps_timing_custom_end->Evaluate(0.74, 0)); |
| 481 EXPECT_EQ(0.75, steps_timing_custom_end->Evaluate(0.75, 0)); | 516 EXPECT_EQ(0.75, steps_timing_custom_end->Evaluate(0.75, 0)); |
| 482 EXPECT_EQ(0.75, steps_timing_custom_end->Evaluate(0.99, 0)); | 517 EXPECT_EQ(0.75, steps_timing_custom_end->Evaluate(0.99, 0)); |
| 483 EXPECT_EQ(1.00, steps_timing_custom_end->Evaluate(1.00, 0)); | 518 EXPECT_EQ(1.00, steps_timing_custom_end->Evaluate(1.00, 0)); |
| 484 EXPECT_EQ(2.00, steps_timing_custom_end->Evaluate(2.00, 0)); | 519 EXPECT_EQ(2.00, steps_timing_custom_end->Evaluate(2.00, 0)); |
| 485 } | 520 } |
| 486 | 521 |
| 522 TEST_F(TimingFunctionTest, FramesEvaluate) { |
| 523 RefPtr<TimingFunction> frames_timing = FramesTimingFunction::Create(5); |
| 524 EXPECT_EQ(-2.50, frames_timing->Evaluate(-2.00, 0)); |
| 525 EXPECT_EQ(0.00, frames_timing->Evaluate(0.00, 0)); |
| 526 EXPECT_EQ(0.00, frames_timing->Evaluate(0.19, 0)); |
| 527 EXPECT_EQ(0.25, frames_timing->Evaluate(0.20, 0)); |
| 528 EXPECT_EQ(0.25, frames_timing->Evaluate(0.39, 0)); |
| 529 EXPECT_EQ(0.50, frames_timing->Evaluate(0.40, 0)); |
| 530 EXPECT_EQ(0.50, frames_timing->Evaluate(0.59, 0)); |
| 531 EXPECT_EQ(0.75, frames_timing->Evaluate(0.60, 0)); |
| 532 EXPECT_EQ(0.75, frames_timing->Evaluate(0.79, 0)); |
| 533 EXPECT_EQ(1.00, frames_timing->Evaluate(0.80, 0)); |
| 534 EXPECT_EQ(1.00, frames_timing->Evaluate(1.00, 0)); |
| 535 EXPECT_EQ(3.75, frames_timing->Evaluate(3.00, 0)); |
| 536 } |
| 537 |
| 487 } // namespace | 538 } // namespace |
| 488 | 539 |
| 489 } // namespace blink | 540 } // namespace blink |
| OLD | NEW |