Chromium Code Reviews| Index: Source/core/animation/AnimationClockTest.cpp |
| diff --git a/Source/core/animation/AnimationClockTest.cpp b/Source/core/animation/AnimationClockTest.cpp |
| index 89412585331072bc0e902da99d193b2fcdad4e71..6bb9d6738dcb5cbe16de668f339a2208ccff987a 100644 |
| --- a/Source/core/animation/AnimationClockTest.cpp |
| +++ b/Source/core/animation/AnimationClockTest.cpp |
| @@ -41,103 +41,72 @@ namespace { |
| class AnimationAnimationClockTest : public ::testing::Test { |
| public: |
| AnimationAnimationClockTest() |
| - : animationClock(mockTimeFunction) |
| + : animationClock() |
| { } |
| protected: |
| virtual void SetUp() |
| { |
| - mockTime = 0; |
| - animationClock.resetTimeForTesting(); |
| + animationClock.clearTimeForTesting(); |
| + animationClock.updateTime(blink::WebFrameTime(-1, -1, 0, 0)); |
|
eseidel
2014/07/07 16:31:50
This is extremely opaque. Can we have a helper?
W
mithro-old
2014/07/07 17:47:15
As you said below, this type of creation only happ
|
| } |
| - static double mockTimeFunction() |
| - { |
| - return mockTime; |
| - } |
| - |
| - static double mockTime; |
| AnimationClock animationClock; |
| }; |
| -double AnimationAnimationClockTest::mockTime; |
| - |
| TEST_F(AnimationAnimationClockTest, TimeIsGreaterThanZeroForUnitTests) |
| { |
| AnimationClock clock; |
| + clock.resetTimeForTesting(); |
| + |
| // unit tests outside core/animation shouldn't need to do anything to get |
| // a non-zero currentTime(). |
| + double lastTime = clock.currentTime(); |
| EXPECT_GT(clock.currentTime(), 0); |
| + |
| + clock.tickTimeForTesting(); |
| + EXPECT_GT(clock.currentTime(), lastTime); |
| } |
| TEST_F(AnimationAnimationClockTest, TimeDoesNotChange) |
| { |
| - animationClock.updateTime(100); |
| + animationClock.updateTime(blink::WebFrameTime(-1, -1, 100, 200)); |
|
eseidel
2014/07/07 16:31:50
Or if these are only used in unittests at least a
mithro-old
2014/07/07 17:47:15
The only code which should be creating blink::WebF
|
| EXPECT_EQ(100, animationClock.currentTime()); |
| EXPECT_EQ(100, animationClock.currentTime()); |
| } |
| TEST_F(AnimationAnimationClockTest, TimeAdvancesWhenUpdated) |
| { |
| - animationClock.updateTime(100); |
| + animationClock.updateTime(blink::WebFrameTime(-1, -1, 100, 200)); |
| EXPECT_EQ(100, animationClock.currentTime()); |
| - animationClock.updateTime(200); |
| + animationClock.updateTime(blink::WebFrameTime(-1, -1, 200, 300)); |
| EXPECT_EQ(200, animationClock.currentTime()); |
| } |
| TEST_F(AnimationAnimationClockTest, TimeAdvancesToTaskTime) |
| { |
| - animationClock.updateTime(100); |
| + animationClock.updateTime(blink::WebFrameTime(-1, -1, 100, 150)); |
| 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()); |
| + EXPECT_EQ(animationClock.currentTime(), 150); |
| AnimationClock::notifyTaskStart(); |
| - animationClock.updateTime(125); |
| - EXPECT_EQ(125, animationClock.currentTime()); |
| + EXPECT_EQ(animationClock.currentTime(), 150); |
| } |
| TEST_F(AnimationAnimationClockTest, UpdateTimeIsMonotonic) |
| { |
| - animationClock.updateTime(100); |
| + animationClock.updateTime(blink::WebFrameTime(-1, -1, 100, 150)); |
| EXPECT_EQ(100, animationClock.currentTime()); |
| + EXPECT_DEATH({ |
| + animationClock.updateTime(blink::WebFrameTime(-1, -1, 50, 150)); |
| + }, ""); |
| - // 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()); |
| + EXPECT_DEATH({ |
| + animationClock.updateTime(blink::WebFrameTime(-1, -1, 149, 150)); |
| + }, ""); |
| } |
| } |