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

Unified Diff: Source/core/animation/AnimationClockTest.cpp

Issue 299723002: Revert of Web Animations: Timeline should not advance during task execution (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 7 months 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/core/animation/AnimationClock.cpp ('k') | Source/core/animation/DocumentAnimations.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/animation/AnimationClockTest.cpp
diff --git a/Source/core/animation/AnimationClockTest.cpp b/Source/core/animation/AnimationClockTest.cpp
index 89412585331072bc0e902da99d193b2fcdad4e71..7e54cde9876530b9e86b72f61c95ff99063dff96 100644
--- a/Source/core/animation/AnimationClockTest.cpp
+++ b/Source/core/animation/AnimationClockTest.cpp
@@ -39,15 +39,11 @@
namespace {
class AnimationAnimationClockTest : public ::testing::Test {
-public:
- AnimationAnimationClockTest()
- : animationClock(mockTimeFunction)
- { }
protected:
virtual void SetUp()
{
- mockTime = 0;
- animationClock.resetTimeForTesting();
+ animationClock = AnimationClock::create(mockTimeFunction);
+ mockTime = 200;
}
static double mockTimeFunction()
@@ -56,88 +52,36 @@
}
static double mockTime;
- AnimationClock animationClock;
+ OwnPtr<AnimationClock> animationClock;
};
double AnimationAnimationClockTest::mockTime;
-TEST_F(AnimationAnimationClockTest, TimeIsGreaterThanZeroForUnitTests)
+TEST_F(AnimationAnimationClockTest, CurrentTime)
{
- AnimationClock clock;
- // unit tests outside core/animation shouldn't need to do anything to get
- // a non-zero currentTime().
- EXPECT_GT(clock.currentTime(), 0);
+ // Current time should not advance until minTimeBeforeUnsynchronizedTick has elapsed
+ EXPECT_EQ(200, animationClock->currentTime());
+ mockTime = 200 + minTimeBeforeUnsynchronizedAnimationClockTick / 2.0;
+ EXPECT_EQ(200, animationClock->currentTime());
+
+ mockTime = 200 + minTimeBeforeUnsynchronizedAnimationClockTick;
+ EXPECT_EQ(mockTime, animationClock->currentTime());
}
-TEST_F(AnimationAnimationClockTest, TimeDoesNotChange)
+TEST_F(AnimationAnimationClockTest, UpdateTime)
{
- animationClock.updateTime(100);
- EXPECT_EQ(100, animationClock.currentTime());
- EXPECT_EQ(100, animationClock.currentTime());
-}
+ animationClock->updateTime(100);
+ EXPECT_EQ(100, animationClock->currentTime());
+ mockTime = 200;
+ EXPECT_EQ(100, animationClock->currentTime());
-TEST_F(AnimationAnimationClockTest, TimeAdvancesWhenUpdated)
-{
- animationClock.updateTime(100);
- EXPECT_EQ(100, animationClock.currentTime());
+ animationClock->unfreeze();
+ EXPECT_EQ(200, animationClock->currentTime());
- animationClock.updateTime(200);
- EXPECT_EQ(200, animationClock.currentTime());
-}
-
-TEST_F(AnimationAnimationClockTest, TimeAdvancesToTaskTime)
-{
- animationClock.updateTime(100);
- EXPECT_EQ(100, animationClock.currentTime());
-
- mockTime = 150;
- AnimationClock::notifyTaskStart();
- EXPECT_GE(animationClock.currentTime(), mockTime);
-}
-
-TEST_F(AnimationAnimationClockTest, TimeAdvancesToTaskTimeOnlyWhenRequired)
-{
- animationClock.updateTime(100);
- EXPECT_EQ(100, animationClock.currentTime());
-
- AnimationClock::notifyTaskStart();
- animationClock.updateTime(125);
- EXPECT_EQ(125, animationClock.currentTime());
-}
-
-TEST_F(AnimationAnimationClockTest, UpdateTimeIsMonotonic)
-{
- animationClock.updateTime(100);
- EXPECT_EQ(100, animationClock.currentTime());
-
- // Update can't go backwards.
- animationClock.updateTime(50);
- EXPECT_EQ(100, animationClock.currentTime());
-
- mockTime = 50;
- AnimationClock::notifyTaskStart();
- EXPECT_EQ(100, animationClock.currentTime());
-
- mockTime = 150;
- AnimationClock::notifyTaskStart();
- EXPECT_GE(animationClock.currentTime(), mockTime);
-
- // Update can't go backwards after advance to estimate.
- animationClock.updateTime(100);
- EXPECT_GE(animationClock.currentTime(), mockTime);
-}
-
-TEST_F(AnimationAnimationClockTest, CurrentTimeUpdatesTask)
-{
- animationClock.updateTime(100);
- EXPECT_EQ(100, animationClock.currentTime());
-
- mockTime = 100;
- AnimationClock::notifyTaskStart();
- EXPECT_EQ(100, animationClock.currentTime());
-
- mockTime = 150;
- EXPECT_EQ(100, animationClock.currentTime());
+ animationClock->updateTime(300);
+ EXPECT_EQ(300, animationClock->currentTime());
+ mockTime = 400;
+ EXPECT_EQ(300, animationClock->currentTime());
}
}
« no previous file with comments | « Source/core/animation/AnimationClock.cpp ('k') | Source/core/animation/DocumentAnimations.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698