#include "bindings/core/v8/Dictionary.h"
#include "bindings/core/v8/Nullable.h"
#include "core/animation/AnimationClock.h"
-#include "core/animation/AnimationHelpers.h"
#include "core/animation/AnimationNodeTiming.h"
#include "core/animation/AnimationTestHelper.h"
#include "core/animation/AnimationTimeline.h"
#include "core/animation/KeyframeEffectModel.h"
#include "core/animation/Timing.h"
#include "core/dom/Document.h"
+#include "core/testing/DummyPageHolder.h"
#include <gtest/gtest.h>
#include <v8.h>
class AnimationAnimationTest : public ::testing::Test {
protected:
AnimationAnimationTest()
- : document(Document::create())
- , element(document->createElement("foo", ASSERT_NO_EXCEPTION))
+ : pageHolder(DummyPageHolder::create())
+ , document(pageHolder->document())
+ , element(document.createElement("foo", ASSERT_NO_EXCEPTION))
{
- document->animationClock().resetTimeForTesting();
- EXPECT_EQ(0, document->timeline().currentTime());
+ document.animationClock().resetTimeForTesting(document.timeline().zeroTime());
+ EXPECT_EQ(0, document.timeline().currentTime());
}
- RefPtrWillBePersistent<Document> document;
+ OwnPtr<DummyPageHolder> pageHolder;
+ Document& document;
RefPtrWillBePersistent<Element> element;
TrackExceptionState exceptionState;
};
EXPECT_EQ("100px", keyframe1Width->cssText());
EXPECT_EQ("0px", keyframe2Width->cssText());
- EXPECT_EQ(*(CubicBezierTimingFunction::preset(CubicBezierTimingFunction::EaseInOut)), *keyframes[0]->easing());
- EXPECT_EQ(*(CubicBezierTimingFunction::create(1, 1, 0.3, 0.3).get()), *keyframes[1]->easing());
+ EXPECT_EQ(*(CubicBezierTimingFunction::preset(CubicBezierTimingFunction::EaseInOut)), keyframes[0]->easing());
+ EXPECT_EQ(*(CubicBezierTimingFunction::create(1, 1, 0.3, 0.3).get()), keyframes[1]->easing());
}
TEST_F(AnimationAnimationV8Test, CanSetDuration)
timing.endDelay = 100;
timing.fillMode = Timing::FillModeNone;
RefPtrWillBeRawPtr<Animation> animation = Animation::create(0, nullptr, timing);
- RefPtrWillBeRawPtr<AnimationPlayer> player = document->timeline().play(animation.get());
+ RefPtrWillBeRawPtr<AnimationPlayer> player = document.timeline().play(animation.get());
double inf = std::numeric_limits<double>::infinity();
EXPECT_EQ(100, animation->timeToForwardsEffectChange());
timing.playbackRate = 2;
timing.fillMode = Timing::FillModeNone;
RefPtrWillBeRawPtr<Animation> animation = Animation::create(0, nullptr, timing);
- RefPtrWillBeRawPtr<AnimationPlayer> player = document->timeline().play(animation.get());
+ RefPtrWillBeRawPtr<AnimationPlayer> player = document.timeline().play(animation.get());
double inf = std::numeric_limits<double>::infinity();
EXPECT_EQ(100, animation->timeToForwardsEffectChange());
timing.playbackRate = -2;
timing.fillMode = Timing::FillModeNone;
RefPtrWillBeRawPtr<Animation> animation = Animation::create(0, nullptr, timing);
- RefPtrWillBeRawPtr<AnimationPlayer> player = document->timeline().play(animation.get());
+ RefPtrWillBeRawPtr<AnimationPlayer> player = document.timeline().play(animation.get());
double inf = std::numeric_limits<double>::infinity();
EXPECT_EQ(100, animation->timeToForwardsEffectChange());
timing.iterationDuration = 5;
RefPtrWillBeRawPtr<Animation> animation = Animation::create(element.get(), nullptr, timing);
EXPECT_EQ(element.get(), animation->target());
- document->timeline().play(animation.get());
- document.clear();
+ document.timeline().play(animation.get());
+ pageHolder.clear();
element.clear();
#if !ENABLE(OILPAN)
EXPECT_EQ(0, animation->target());