OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "core/page/scrolling/ScrollState.h" | 5 #include "core/page/scrolling/ScrollState.h" |
6 | 6 |
7 #include "core/dom/Document.h" | 7 #include "core/dom/Document.h" |
8 #include "core/dom/Element.h" | 8 #include "core/dom/Element.h" |
9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
10 | 10 |
11 namespace blink { | 11 namespace blink { |
12 | 12 |
| 13 namespace { |
| 14 |
| 15 PassRefPtrWillBeRawPtr<ScrollState> CreateScrollState(double deltaX, double delt
aY, bool beginning, bool ending) |
| 16 { |
| 17 return ScrollState::create(deltaX, deltaY, 0 /* startPositionX */, 0 /* star
tPositionY */, |
| 18 0 /* velocityX */, 0 /* velocityY */, beginning, false /* inInertialPhas
e */, ending); |
| 19 } |
| 20 |
13 class ScrollStateTest : public testing::Test { | 21 class ScrollStateTest : public testing::Test { |
14 }; | 22 }; |
15 | 23 |
16 TEST_F(ScrollStateTest, ConsumeDeltaNative) | 24 TEST_F(ScrollStateTest, ConsumeDeltaNative) |
17 { | 25 { |
18 const float deltaX = 12.3; | 26 const float deltaX = 12.3; |
19 const float deltaY = 3.9; | 27 const float deltaY = 3.9; |
20 | 28 |
21 const float deltaXToConsume = 1.2; | 29 const float deltaXToConsume = 1.2; |
22 const float deltaYToConsume = 2.3; | 30 const float deltaYToConsume = 2.3; |
23 | 31 |
24 RefPtrWillBeRawPtr<ScrollState> scrollState = ScrollState::create(deltaX, de
ltaY, 0, 0, 0, false, false); | 32 RefPtrWillBeRawPtr<ScrollState> scrollState = CreateScrollState(deltaX, delt
aY, false, false); |
25 EXPECT_FLOAT_EQ(deltaX, scrollState->deltaX()); | 33 EXPECT_FLOAT_EQ(deltaX, scrollState->deltaX()); |
26 EXPECT_FLOAT_EQ(deltaY, scrollState->deltaY()); | 34 EXPECT_FLOAT_EQ(deltaY, scrollState->deltaY()); |
27 EXPECT_FALSE(scrollState->deltaConsumedForScrollSequence()); | 35 EXPECT_FALSE(scrollState->deltaConsumedForScrollSequence()); |
28 EXPECT_FALSE(scrollState->fullyConsumed()); | 36 EXPECT_FALSE(scrollState->fullyConsumed()); |
29 | 37 |
30 scrollState->consumeDeltaNative(0, 0); | 38 scrollState->consumeDeltaNative(0, 0); |
31 EXPECT_FLOAT_EQ(deltaX, scrollState->deltaX()); | 39 EXPECT_FLOAT_EQ(deltaX, scrollState->deltaX()); |
32 EXPECT_FLOAT_EQ(deltaY, scrollState->deltaY()); | 40 EXPECT_FLOAT_EQ(deltaY, scrollState->deltaY()); |
33 EXPECT_FALSE(scrollState->deltaConsumedForScrollSequence()); | 41 EXPECT_FALSE(scrollState->deltaConsumedForScrollSequence()); |
34 EXPECT_FALSE(scrollState->fullyConsumed()); | 42 EXPECT_FALSE(scrollState->fullyConsumed()); |
(...skipping 10 matching lines...) Expand all Loading... |
45 EXPECT_TRUE(scrollState->deltaConsumedForScrollSequence()); | 53 EXPECT_TRUE(scrollState->deltaConsumedForScrollSequence()); |
46 EXPECT_FALSE(scrollState->fullyConsumed()); | 54 EXPECT_FALSE(scrollState->fullyConsumed()); |
47 | 55 |
48 scrollState->consumeDeltaNative(scrollState->deltaX(), scrollState->deltaY()
); | 56 scrollState->consumeDeltaNative(scrollState->deltaX(), scrollState->deltaY()
); |
49 EXPECT_TRUE(scrollState->deltaConsumedForScrollSequence()); | 57 EXPECT_TRUE(scrollState->deltaConsumedForScrollSequence()); |
50 EXPECT_TRUE(scrollState->fullyConsumed()); | 58 EXPECT_TRUE(scrollState->fullyConsumed()); |
51 } | 59 } |
52 | 60 |
53 TEST_F(ScrollStateTest, CurrentNativeScrollingElement) | 61 TEST_F(ScrollStateTest, CurrentNativeScrollingElement) |
54 { | 62 { |
55 RefPtrWillBeRawPtr<ScrollState> scrollState = | 63 RefPtrWillBeRawPtr<ScrollState> scrollState = CreateScrollState(0, 0, false,
false); |
56 ScrollState::create(0, 0, 0, 0, 0, false, false); | |
57 RefPtrWillBeRawPtr<Element> element = Element::create( | 64 RefPtrWillBeRawPtr<Element> element = Element::create( |
58 QualifiedName::null(), Document::create().get()); | 65 QualifiedName::null(), Document::create().get()); |
59 scrollState->setCurrentNativeScrollingElement(element.get()); | 66 scrollState->setCurrentNativeScrollingElement(element.get()); |
60 | 67 |
61 EXPECT_EQ(element, scrollState->currentNativeScrollingElement()); | 68 EXPECT_EQ(element, scrollState->currentNativeScrollingElement()); |
62 } | 69 } |
63 | 70 |
64 TEST_F(ScrollStateTest, FullyConsumed) | 71 TEST_F(ScrollStateTest, FullyConsumed) |
65 { | 72 { |
66 RefPtrWillBeRawPtr<ScrollState> scrollStateBegin = | 73 RefPtrWillBeRawPtr<ScrollState> scrollStateBegin = CreateScrollState(0, 0, t
rue, false); |
67 ScrollState::create(0, 0, 0, 0, 0, false, true, false); | 74 RefPtrWillBeRawPtr<ScrollState> scrollState = CreateScrollState(0, 0, false,
false); |
68 RefPtrWillBeRawPtr<ScrollState> scrollState = | 75 RefPtrWillBeRawPtr<ScrollState> scrollStateEnd = CreateScrollState(0, 0, fal
se, true); |
69 ScrollState::create(0, 0, 0, 0, 0, false, false, false); | |
70 RefPtrWillBeRawPtr<ScrollState> scrollStateEnd = | |
71 ScrollState::create(0, 0, 0, 0, 0, false, false, true); | |
72 EXPECT_FALSE(scrollStateBegin->fullyConsumed()); | 76 EXPECT_FALSE(scrollStateBegin->fullyConsumed()); |
73 EXPECT_TRUE(scrollState->fullyConsumed()); | 77 EXPECT_TRUE(scrollState->fullyConsumed()); |
74 EXPECT_FALSE(scrollStateEnd->fullyConsumed()); | 78 EXPECT_FALSE(scrollStateEnd->fullyConsumed()); |
75 } | 79 } |
76 | 80 |
| 81 } // namespace |
| 82 |
77 } // namespace blink | 83 } // namespace blink |
OLD | NEW |