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

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

Issue 196413030: Web animations: Supply CSS transition easing (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Use iteration duration when choosing accuracy during keyframe animation Created 6 years, 9 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/InterpolationEffectTest.cpp
diff --git a/Source/core/animation/InterpolationEffectTest.cpp b/Source/core/animation/InterpolationEffectTest.cpp
index 22a70b7c4ce28bd29a71e93c5b9a0d0846cc12fc..f8239819644654f3ed5222e6b297c1e39025aecd 100644
--- a/Source/core/animation/InterpolationEffectTest.cpp
+++ b/Source/core/animation/InterpolationEffectTest.cpp
@@ -7,6 +7,12 @@
#include <gtest/gtest.h>
+namespace {
+
+const double kDuration = 1.0;
shans 2014/03/21 04:41:41 'duration' is fine.
Eric Willigers 2014/03/21 04:52:30 Done.
+
+} // namespace
+
namespace WebCore {
class AnimationInterpolationEffectTest : public ::testing::Test {
@@ -28,22 +34,22 @@ TEST_F(AnimationInterpolationEffectTest, SingleInterpolation)
interpolationEffect->addInterpolation(Interpolation::create(InterpolableNumber::create(0), InterpolableNumber::create(10)),
RefPtr<TimingFunction>(), 0, 1, -1, 2);
- OwnPtr<Vector<RefPtr<Interpolation> > > activeInterpolations = interpolationEffect->getActiveInterpolations(-2);
+ OwnPtr<Vector<RefPtr<Interpolation> > > activeInterpolations = interpolationEffect->getActiveInterpolations(-2, kDuration);
EXPECT_EQ(0ul, activeInterpolations->size());
- activeInterpolations = interpolationEffect->getActiveInterpolations(-0.5);
+ activeInterpolations = interpolationEffect->getActiveInterpolations(-0.5, kDuration);
EXPECT_EQ(1ul, activeInterpolations->size());
EXPECT_EQ(-5, getInterpolableNumber(activeInterpolations->at(0)));
- activeInterpolations = interpolationEffect->getActiveInterpolations(0.5);
+ activeInterpolations = interpolationEffect->getActiveInterpolations(0.5, kDuration);
EXPECT_EQ(1ul, activeInterpolations->size());
EXPECT_FLOAT_EQ(5, getInterpolableNumber(activeInterpolations->at(0)));
- activeInterpolations = interpolationEffect->getActiveInterpolations(1.5);
+ activeInterpolations = interpolationEffect->getActiveInterpolations(1.5, kDuration);
EXPECT_EQ(1ul, activeInterpolations->size());
EXPECT_FLOAT_EQ(15, getInterpolableNumber(activeInterpolations->at(0)));
- activeInterpolations = interpolationEffect->getActiveInterpolations(3);
+ activeInterpolations = interpolationEffect->getActiveInterpolations(3, kDuration);
EXPECT_EQ(0ul, activeInterpolations->size());
}
@@ -57,28 +63,33 @@ TEST_F(AnimationInterpolationEffectTest, MultipleInterpolations)
interpolationEffect->addInterpolation(Interpolation::create(InterpolableNumber::create(1), InterpolableNumber::create(6)),
CubicBezierTimingFunction::preset(CubicBezierTimingFunction::Ease), 0.5, 1.5, 0.5, 1.5);
- OwnPtr<Vector<RefPtr<Interpolation> > > activeInterpolations = interpolationEffect->getActiveInterpolations(-0.5);
+ OwnPtr<Vector<RefPtr<Interpolation> > > activeInterpolations = interpolationEffect->getActiveInterpolations(-0.5, kDuration);
EXPECT_EQ(0ul, activeInterpolations->size());
- activeInterpolations = interpolationEffect->getActiveInterpolations(0);
+ activeInterpolations = interpolationEffect->getActiveInterpolations(0, kDuration);
EXPECT_EQ(1ul, activeInterpolations->size());
EXPECT_FLOAT_EQ(0, getInterpolableNumber(activeInterpolations->at(0)));
- activeInterpolations = interpolationEffect->getActiveInterpolations(0.5);
+ activeInterpolations = interpolationEffect->getActiveInterpolations(0.5, kDuration);
EXPECT_EQ(2ul, activeInterpolations->size());
EXPECT_FLOAT_EQ(0.5f, getInterpolableNumber(activeInterpolations->at(0)));
EXPECT_FLOAT_EQ(1, getInterpolableNumber(activeInterpolations->at(1)));
- activeInterpolations = interpolationEffect->getActiveInterpolations(1);
+ activeInterpolations = interpolationEffect->getActiveInterpolations(1, kDuration);
+ EXPECT_EQ(2ul, activeInterpolations->size());
+ EXPECT_FLOAT_EQ(10, getInterpolableNumber(activeInterpolations->at(0)));
+ EXPECT_FLOAT_EQ(5.0282884f, getInterpolableNumber(activeInterpolations->at(1)));
+
+ activeInterpolations = interpolationEffect->getActiveInterpolations(1, kDuration * 1000);
EXPECT_EQ(2ul, activeInterpolations->size());
EXPECT_FLOAT_EQ(10, getInterpolableNumber(activeInterpolations->at(0)));
EXPECT_FLOAT_EQ(5.0120168f, getInterpolableNumber(activeInterpolations->at(1)));
- activeInterpolations = interpolationEffect->getActiveInterpolations(1.5);
+ activeInterpolations = interpolationEffect->getActiveInterpolations(1.5, kDuration);
EXPECT_EQ(1ul, activeInterpolations->size());
EXPECT_FLOAT_EQ(12.5f, getInterpolableNumber(activeInterpolations->at(0)));
- activeInterpolations = interpolationEffect->getActiveInterpolations(2);
+ activeInterpolations = interpolationEffect->getActiveInterpolations(2, kDuration);
EXPECT_EQ(1ul, activeInterpolations->size());
EXPECT_FLOAT_EQ(15, getInterpolableNumber(activeInterpolations->at(0)));
}

Powered by Google App Engine
This is Rietveld 408576698