Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(83)

Side by Side Diff: Source/core/animation/CompositorAnimationsTest.cpp

Issue 96093002: Web Animations CSS: Fixing startDelay for compositor translation. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@origin-master
Patch Set: Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « Source/core/animation/CompositorAnimations.cpp ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 347 matching lines...) Expand 10 before | Expand all | Expand 10 after
358 358
359 TEST_F(AnimationCompositorAnimationsTest, ConvertTimingForCompositorStartDelay) 359 TEST_F(AnimationCompositorAnimationsTest, ConvertTimingForCompositorStartDelay)
360 { 360 {
361 m_timing.iterationDuration = 20.0; 361 m_timing.iterationDuration = 20.0;
362 362
363 m_timing.startDelay = 2.0; 363 m_timing.startDelay = 2.0;
364 EXPECT_FALSE(convertTimingForCompositor(m_timing, m_compositorTiming)); 364 EXPECT_FALSE(convertTimingForCompositor(m_timing, m_compositorTiming));
365 365
366 m_timing.startDelay = -2.0; 366 m_timing.startDelay = -2.0;
367 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming)); 367 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming));
368 EXPECT_DOUBLE_EQ(-2.0, m_compositorTiming.scaledTimeOffset); 368 EXPECT_DOUBLE_EQ(2.0, m_compositorTiming.scaledTimeOffset);
369 } 369 }
370 370
371 TEST_F(AnimationCompositorAnimationsTest, ConvertTimingForCompositorIterationSta rt) 371 TEST_F(AnimationCompositorAnimationsTest, ConvertTimingForCompositorIterationSta rt)
372 { 372 {
373 m_timing.iterationStart = 2.2; 373 m_timing.iterationStart = 2.2;
374 EXPECT_FALSE(convertTimingForCompositor(m_timing, m_compositorTiming)); 374 EXPECT_FALSE(convertTimingForCompositor(m_timing, m_compositorTiming));
375 } 375 }
376 376
377 TEST_F(AnimationCompositorAnimationsTest, ConvertTimingForCompositorIterationCou nt) 377 TEST_F(AnimationCompositorAnimationsTest, ConvertTimingForCompositorIterationCou nt)
378 { 378 {
(...skipping 12 matching lines...) Expand all
391 #endif 391 #endif
392 392
393 m_timing.iterationCount = std::numeric_limits<double>::infinity(); 393 m_timing.iterationCount = std::numeric_limits<double>::infinity();
394 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming)); 394 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming));
395 EXPECT_EQ(-1, m_compositorTiming.adjustedIterationCount); 395 EXPECT_EQ(-1, m_compositorTiming.adjustedIterationCount);
396 396
397 m_timing.iterationCount = std::numeric_limits<double>::infinity(); 397 m_timing.iterationCount = std::numeric_limits<double>::infinity();
398 m_timing.iterationDuration = 5.0; 398 m_timing.iterationDuration = 5.0;
399 m_timing.startDelay = -6.0; 399 m_timing.startDelay = -6.0;
400 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming)); 400 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming));
401 EXPECT_DOUBLE_EQ(-1.0, m_compositorTiming.scaledTimeOffset); 401 EXPECT_DOUBLE_EQ(1.0, m_compositorTiming.scaledTimeOffset);
402 EXPECT_EQ(-1, m_compositorTiming.adjustedIterationCount); 402 EXPECT_EQ(-1, m_compositorTiming.adjustedIterationCount);
403 } 403 }
404 404
405 TEST_F(AnimationCompositorAnimationsTest, ConvertTimingForCompositorIterationsAn dStartDelay) 405 TEST_F(AnimationCompositorAnimationsTest, ConvertTimingForCompositorIterationsAn dStartDelay)
406 { 406 {
407 m_timing.iterationCount = 4.0; 407 m_timing.iterationCount = 4.0;
408 m_timing.iterationDuration = 5.0; 408 m_timing.iterationDuration = 5.0;
409 409
410 m_timing.startDelay = -6.0; 410 m_timing.startDelay = -6.0;
411 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming)); 411 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming));
412 EXPECT_DOUBLE_EQ(-1.0, m_compositorTiming.scaledTimeOffset); 412 EXPECT_DOUBLE_EQ(1.0, m_compositorTiming.scaledTimeOffset);
413 EXPECT_DOUBLE_EQ(3.0, m_compositorTiming.adjustedIterationCount); 413 EXPECT_DOUBLE_EQ(3.0, m_compositorTiming.adjustedIterationCount);
414 EXPECT_FALSE(m_compositorTiming.reverse); 414 EXPECT_FALSE(m_compositorTiming.reverse);
415 415
416 m_timing.iterationCount = 1.0; 416 m_timing.iterationCount = 1.0;
417 m_timing.iterationDuration = 5.0; 417 m_timing.iterationDuration = 5.0;
418 m_timing.startDelay = -6.0; 418 m_timing.startDelay = -6.0;
419 EXPECT_FALSE(convertTimingForCompositor(m_timing, m_compositorTiming)); 419 EXPECT_FALSE(convertTimingForCompositor(m_timing, m_compositorTiming));
420 420
421 m_timing.iterationCount = 5.0; 421 m_timing.iterationCount = 5.0;
422 m_timing.iterationDuration = 1.0; 422 m_timing.iterationDuration = 1.0;
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
454 EXPECT_TRUE(m_compositorTiming.reverse); 454 EXPECT_TRUE(m_compositorTiming.reverse);
455 } 455 }
456 456
457 TEST_F(AnimationCompositorAnimationsTest, ConvertTimingForCompositorDirectionIte rationsAndStartDelay) 457 TEST_F(AnimationCompositorAnimationsTest, ConvertTimingForCompositorDirectionIte rationsAndStartDelay)
458 { 458 {
459 m_timing.direction = Timing::PlaybackDirectionAlternate; 459 m_timing.direction = Timing::PlaybackDirectionAlternate;
460 m_timing.iterationCount = 4.0; 460 m_timing.iterationCount = 4.0;
461 m_timing.iterationDuration = 5.0; 461 m_timing.iterationDuration = 5.0;
462 m_timing.startDelay = -6.0; 462 m_timing.startDelay = -6.0;
463 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming)); 463 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming));
464 EXPECT_DOUBLE_EQ(-1.0, m_compositorTiming.scaledTimeOffset); 464 EXPECT_DOUBLE_EQ(1.0, m_compositorTiming.scaledTimeOffset);
465 EXPECT_EQ(3, m_compositorTiming.adjustedIterationCount); 465 EXPECT_EQ(3, m_compositorTiming.adjustedIterationCount);
466 EXPECT_TRUE(m_compositorTiming.alternate); 466 EXPECT_TRUE(m_compositorTiming.alternate);
467 EXPECT_TRUE(m_compositorTiming.reverse); 467 EXPECT_TRUE(m_compositorTiming.reverse);
468 468
469 m_timing.direction = Timing::PlaybackDirectionAlternate; 469 m_timing.direction = Timing::PlaybackDirectionAlternate;
470 m_timing.iterationCount = 4.0; 470 m_timing.iterationCount = 4.0;
471 m_timing.iterationDuration = 5.0; 471 m_timing.iterationDuration = 5.0;
472 m_timing.startDelay = -11.0; 472 m_timing.startDelay = -11.0;
473 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming)); 473 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming));
474 EXPECT_DOUBLE_EQ(-1.0, m_compositorTiming.scaledTimeOffset); 474 EXPECT_DOUBLE_EQ(1.0, m_compositorTiming.scaledTimeOffset);
475 EXPECT_EQ(2, m_compositorTiming.adjustedIterationCount); 475 EXPECT_EQ(2, m_compositorTiming.adjustedIterationCount);
476 EXPECT_TRUE(m_compositorTiming.alternate); 476 EXPECT_TRUE(m_compositorTiming.alternate);
477 EXPECT_FALSE(m_compositorTiming.reverse); 477 EXPECT_FALSE(m_compositorTiming.reverse);
478 478
479 m_timing.direction = Timing::PlaybackDirectionAlternateReverse; 479 m_timing.direction = Timing::PlaybackDirectionAlternateReverse;
480 m_timing.iterationCount = 4.0; 480 m_timing.iterationCount = 4.0;
481 m_timing.iterationDuration = 5.0; 481 m_timing.iterationDuration = 5.0;
482 m_timing.startDelay = -6.0; 482 m_timing.startDelay = -6.0;
483 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming)); 483 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming));
484 EXPECT_DOUBLE_EQ(-1.0, m_compositorTiming.scaledTimeOffset); 484 EXPECT_DOUBLE_EQ(1.0, m_compositorTiming.scaledTimeOffset);
485 EXPECT_EQ(3, m_compositorTiming.adjustedIterationCount); 485 EXPECT_EQ(3, m_compositorTiming.adjustedIterationCount);
486 EXPECT_TRUE(m_compositorTiming.alternate); 486 EXPECT_TRUE(m_compositorTiming.alternate);
487 EXPECT_FALSE(m_compositorTiming.reverse); 487 EXPECT_FALSE(m_compositorTiming.reverse);
488 488
489 m_timing.direction = Timing::PlaybackDirectionAlternateReverse; 489 m_timing.direction = Timing::PlaybackDirectionAlternateReverse;
490 m_timing.iterationCount = 4.0; 490 m_timing.iterationCount = 4.0;
491 m_timing.iterationDuration = 5.0; 491 m_timing.iterationDuration = 5.0;
492 m_timing.startDelay = -11.0; 492 m_timing.startDelay = -11.0;
493 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming)); 493 EXPECT_TRUE(convertTimingForCompositor(m_timing, m_compositorTiming));
494 EXPECT_DOUBLE_EQ(-1.0, m_compositorTiming.scaledTimeOffset); 494 EXPECT_DOUBLE_EQ(1.0, m_compositorTiming.scaledTimeOffset);
495 EXPECT_EQ(2, m_compositorTiming.adjustedIterationCount); 495 EXPECT_EQ(2, m_compositorTiming.adjustedIterationCount);
496 EXPECT_TRUE(m_compositorTiming.alternate); 496 EXPECT_TRUE(m_compositorTiming.alternate);
497 EXPECT_TRUE(m_compositorTiming.reverse); 497 EXPECT_TRUE(m_compositorTiming.reverse);
498 } 498 }
499 499
500 TEST_F(AnimationCompositorAnimationsTest, isCandidateForCompositorTiming) 500 TEST_F(AnimationCompositorAnimationsTest, isCandidateForCompositorTiming)
501 { 501 {
502 EXPECT_TRUE(isCandidateForCompositor(m_timing, m_keyframeVector2)); 502 EXPECT_TRUE(isCandidateForCompositor(m_timing, m_keyframeVector2));
503 503
504 m_timing.startDelay = 2.0; 504 m_timing.startDelay = 2.0;
(...skipping 402 matching lines...) Expand 10 before | Expand all | Expand 10 after
907 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(blink::WebFloatKeyframe(1.75 , 5.0))); 907 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(blink::WebFloatKeyframe(1.75 , 5.0)));
908 908
909 // Create animation 909 // Create animation
910 blink::WebAnimationMock* mockAnimationPtr = new blink::WebAnimationMock(blin k::WebAnimation::TargetPropertyOpacity); 910 blink::WebAnimationMock* mockAnimationPtr = new blink::WebAnimationMock(blin k::WebAnimation::TargetPropertyOpacity);
911 ExpectationSet usesMockAnimation; 911 ExpectationSet usesMockAnimation;
912 912
913 usesMockCurve += EXPECT_CALL(mockCompositor, createAnimation(Ref(*mockCurveP tr), blink::WebAnimation::TargetPropertyOpacity, _)) 913 usesMockCurve += EXPECT_CALL(mockCompositor, createAnimation(Ref(*mockCurveP tr), blink::WebAnimation::TargetPropertyOpacity, _))
914 .WillOnce(Return(mockAnimationPtr)); 914 .WillOnce(Return(mockAnimationPtr));
915 915
916 usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setIterations(4)); 916 usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setIterations(4));
917 usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setTimeOffset(-1.5)); 917 usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setTimeOffset(1.5));
918 usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setAlternatesDirection(f alse)); 918 usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setAlternatesDirection(f alse));
919 919
920 EXPECT_CALL(*mockAnimationPtr, delete_()) 920 EXPECT_CALL(*mockAnimationPtr, delete_())
921 .Times(1) 921 .Times(1)
922 .After(usesMockAnimation); 922 .After(usesMockAnimation);
923 EXPECT_CALL(*mockCurvePtr, delete_()) 923 EXPECT_CALL(*mockCurvePtr, delete_())
924 .Times(1) 924 .Times(1)
925 .After(usesMockCurve); 925 .After(usesMockCurve);
926 926
927 // Go! 927 // Go!
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
1077 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(blink::WebFloatKeyframe(2.0, 5.0))); 1077 usesMockCurve += EXPECT_CALL(*mockCurvePtr, add(blink::WebFloatKeyframe(2.0, 5.0)));
1078 1078
1079 // Create animation 1079 // Create animation
1080 blink::WebAnimationMock* mockAnimationPtr = new blink::WebAnimationMock(blin k::WebAnimation::TargetPropertyOpacity); 1080 blink::WebAnimationMock* mockAnimationPtr = new blink::WebAnimationMock(blin k::WebAnimation::TargetPropertyOpacity);
1081 ExpectationSet usesMockAnimation; 1081 ExpectationSet usesMockAnimation;
1082 1082
1083 usesMockCurve += EXPECT_CALL(mockCompositor, createAnimation(Ref(*mockCurveP tr), blink::WebAnimation::TargetPropertyOpacity, _)) 1083 usesMockCurve += EXPECT_CALL(mockCompositor, createAnimation(Ref(*mockCurveP tr), blink::WebAnimation::TargetPropertyOpacity, _))
1084 .WillOnce(Return(mockAnimationPtr)); 1084 .WillOnce(Return(mockAnimationPtr));
1085 1085
1086 usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setIterations(4)); 1086 usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setIterations(4));
1087 usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setTimeOffset(-1.0)); 1087 usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setTimeOffset(1.0));
1088 usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setAlternatesDirection(t rue)); 1088 usesMockAnimation += EXPECT_CALL(*mockAnimationPtr, setAlternatesDirection(t rue));
1089 1089
1090 EXPECT_CALL(*mockAnimationPtr, delete_()) 1090 EXPECT_CALL(*mockAnimationPtr, delete_())
1091 .Times(1) 1091 .Times(1)
1092 .After(usesMockAnimation); 1092 .After(usesMockAnimation);
1093 EXPECT_CALL(*mockCurvePtr, delete_()) 1093 EXPECT_CALL(*mockCurvePtr, delete_())
1094 .Times(1) 1094 .Times(1)
1095 .After(usesMockCurve); 1095 .After(usesMockCurve);
1096 1096
1097 // Go! 1097 // Go!
1098 setCompositorForTesting(mockCompositor); 1098 setCompositorForTesting(mockCompositor);
1099 Vector<OwnPtr<blink::WebAnimation> > result; 1099 Vector<OwnPtr<blink::WebAnimation> > result;
1100 getAnimationOnCompositor(m_timing, *effect.get(), result); 1100 getAnimationOnCompositor(m_timing, *effect.get(), result);
1101 EXPECT_EQ(1U, result.size()); 1101 EXPECT_EQ(1U, result.size());
1102 result[0].clear(); 1102 result[0].clear();
1103 } 1103 }
1104 1104
1105 1105
1106 } // namespace WebCore 1106 } // namespace WebCore
OLDNEW
« no previous file with comments | « Source/core/animation/CompositorAnimations.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698