| 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 { | 13 namespace { |
| 14 | 14 |
| 15 PassRefPtrWillBeRawPtr<ScrollState> CreateScrollState(double deltaX, double delt
aY, bool beginning, bool ending) | 15 RawPtr<ScrollState> CreateScrollState(double deltaX, double deltaY, bool beginni
ng, bool ending) |
| 16 { | 16 { |
| 17 OwnPtr<ScrollStateData> scrollStateData = adoptPtr(new ScrollStateData()); | 17 OwnPtr<ScrollStateData> scrollStateData = adoptPtr(new ScrollStateData()); |
| 18 scrollStateData->delta_x = deltaX; | 18 scrollStateData->delta_x = deltaX; |
| 19 scrollStateData->delta_y = deltaY; | 19 scrollStateData->delta_y = deltaY; |
| 20 scrollStateData->is_beginning = beginning; | 20 scrollStateData->is_beginning = beginning; |
| 21 scrollStateData->is_ending = ending; | 21 scrollStateData->is_ending = ending; |
| 22 return ScrollState::create(scrollStateData.release()); | 22 return ScrollState::create(scrollStateData.release()); |
| 23 } | 23 } |
| 24 | 24 |
| 25 class ScrollStateTest : public testing::Test { | 25 class ScrollStateTest : public testing::Test { |
| 26 }; | 26 }; |
| 27 | 27 |
| 28 TEST_F(ScrollStateTest, ConsumeDeltaNative) | 28 TEST_F(ScrollStateTest, ConsumeDeltaNative) |
| 29 { | 29 { |
| 30 const float deltaX = 12.3; | 30 const float deltaX = 12.3; |
| 31 const float deltaY = 3.9; | 31 const float deltaY = 3.9; |
| 32 | 32 |
| 33 const float deltaXToConsume = 1.2; | 33 const float deltaXToConsume = 1.2; |
| 34 const float deltaYToConsume = 2.3; | 34 const float deltaYToConsume = 2.3; |
| 35 | 35 |
| 36 RefPtrWillBeRawPtr<ScrollState> scrollState = CreateScrollState(deltaX, delt
aY, false, false); | 36 RawPtr<ScrollState> scrollState = CreateScrollState(deltaX, deltaY, false, f
alse); |
| 37 EXPECT_FLOAT_EQ(deltaX, scrollState->deltaX()); | 37 EXPECT_FLOAT_EQ(deltaX, scrollState->deltaX()); |
| 38 EXPECT_FLOAT_EQ(deltaY, scrollState->deltaY()); | 38 EXPECT_FLOAT_EQ(deltaY, scrollState->deltaY()); |
| 39 EXPECT_FALSE(scrollState->deltaConsumedForScrollSequence()); | 39 EXPECT_FALSE(scrollState->deltaConsumedForScrollSequence()); |
| 40 EXPECT_FALSE(scrollState->fullyConsumed()); | 40 EXPECT_FALSE(scrollState->fullyConsumed()); |
| 41 | 41 |
| 42 scrollState->consumeDeltaNative(0, 0); | 42 scrollState->consumeDeltaNative(0, 0); |
| 43 EXPECT_FLOAT_EQ(deltaX, scrollState->deltaX()); | 43 EXPECT_FLOAT_EQ(deltaX, scrollState->deltaX()); |
| 44 EXPECT_FLOAT_EQ(deltaY, scrollState->deltaY()); | 44 EXPECT_FLOAT_EQ(deltaY, scrollState->deltaY()); |
| 45 EXPECT_FALSE(scrollState->deltaConsumedForScrollSequence()); | 45 EXPECT_FALSE(scrollState->deltaConsumedForScrollSequence()); |
| 46 EXPECT_FALSE(scrollState->fullyConsumed()); | 46 EXPECT_FALSE(scrollState->fullyConsumed()); |
| (...skipping 10 matching lines...) Expand all Loading... |
| 57 EXPECT_TRUE(scrollState->deltaConsumedForScrollSequence()); | 57 EXPECT_TRUE(scrollState->deltaConsumedForScrollSequence()); |
| 58 EXPECT_FALSE(scrollState->fullyConsumed()); | 58 EXPECT_FALSE(scrollState->fullyConsumed()); |
| 59 | 59 |
| 60 scrollState->consumeDeltaNative(scrollState->deltaX(), scrollState->deltaY()
); | 60 scrollState->consumeDeltaNative(scrollState->deltaX(), scrollState->deltaY()
); |
| 61 EXPECT_TRUE(scrollState->deltaConsumedForScrollSequence()); | 61 EXPECT_TRUE(scrollState->deltaConsumedForScrollSequence()); |
| 62 EXPECT_TRUE(scrollState->fullyConsumed()); | 62 EXPECT_TRUE(scrollState->fullyConsumed()); |
| 63 } | 63 } |
| 64 | 64 |
| 65 TEST_F(ScrollStateTest, CurrentNativeScrollingElement) | 65 TEST_F(ScrollStateTest, CurrentNativeScrollingElement) |
| 66 { | 66 { |
| 67 RefPtrWillBeRawPtr<ScrollState> scrollState = CreateScrollState(0, 0, false,
false); | 67 RawPtr<ScrollState> scrollState = CreateScrollState(0, 0, false, false); |
| 68 RefPtrWillBeRawPtr<Element> element = Element::create( | 68 RawPtr<Element> element = Element::create( |
| 69 QualifiedName::null(), Document::create().get()); | 69 QualifiedName::null(), Document::create().get()); |
| 70 scrollState->setCurrentNativeScrollingElement(element.get()); | 70 scrollState->setCurrentNativeScrollingElement(element.get()); |
| 71 | 71 |
| 72 EXPECT_EQ(element, scrollState->currentNativeScrollingElement()); | 72 EXPECT_EQ(element, scrollState->currentNativeScrollingElement()); |
| 73 } | 73 } |
| 74 | 74 |
| 75 TEST_F(ScrollStateTest, FullyConsumed) | 75 TEST_F(ScrollStateTest, FullyConsumed) |
| 76 { | 76 { |
| 77 RefPtrWillBeRawPtr<ScrollState> scrollStateBegin = CreateScrollState(0, 0, t
rue, false); | 77 RawPtr<ScrollState> scrollStateBegin = CreateScrollState(0, 0, true, false); |
| 78 RefPtrWillBeRawPtr<ScrollState> scrollState = CreateScrollState(0, 0, false,
false); | 78 RawPtr<ScrollState> scrollState = CreateScrollState(0, 0, false, false); |
| 79 RefPtrWillBeRawPtr<ScrollState> scrollStateEnd = CreateScrollState(0, 0, fal
se, true); | 79 RawPtr<ScrollState> scrollStateEnd = CreateScrollState(0, 0, false, true); |
| 80 EXPECT_FALSE(scrollStateBegin->fullyConsumed()); | 80 EXPECT_FALSE(scrollStateBegin->fullyConsumed()); |
| 81 EXPECT_TRUE(scrollState->fullyConsumed()); | 81 EXPECT_TRUE(scrollState->fullyConsumed()); |
| 82 EXPECT_FALSE(scrollStateEnd->fullyConsumed()); | 82 EXPECT_FALSE(scrollStateEnd->fullyConsumed()); |
| 83 } | 83 } |
| 84 | 84 |
| 85 } // namespace | 85 } // namespace |
| 86 | 86 |
| 87 } // namespace blink | 87 } // namespace blink |
| OLD | NEW |