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

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

Issue 369793003: Make the web-animations engine use the passed in blink::WebFrameTime values. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Patch to run on try bots. Created 6 years, 6 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
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));
+ }, "");
}
}

Powered by Google App Engine
This is Rietveld 408576698