| Index: third_party/WebKit/Source/platform/scroll/ScrollableAreaTest.cpp
|
| diff --git a/third_party/WebKit/Source/platform/scroll/ScrollableAreaTest.cpp b/third_party/WebKit/Source/platform/scroll/ScrollableAreaTest.cpp
|
| index 4c1e682fc9232538067494d2628e20f204b85d21..8d079f6f34083282fec2d59fe6c859b675af797f 100644
|
| --- a/third_party/WebKit/Source/platform/scroll/ScrollableAreaTest.cpp
|
| +++ b/third_party/WebKit/Source/platform/scroll/ScrollableAreaTest.cpp
|
| @@ -6,6 +6,7 @@
|
|
|
| #include "platform/graphics/Color.h"
|
| #include "platform/graphics/GraphicsLayer.h"
|
| +#include "platform/scroll/ScrollbarTestSuite.h"
|
| #include "platform/scroll/ScrollbarTheme.h"
|
| #include "platform/scroll/ScrollbarThemeMock.h"
|
| #include "platform/testing/FakeGraphicsLayer.h"
|
| @@ -22,78 +23,15 @@ namespace {
|
| using testing::_;
|
| using testing::Return;
|
|
|
| -class MockScrollableArea : public GarbageCollectedFinalized<MockScrollableArea>, public ScrollableArea {
|
| - USING_GARBAGE_COLLECTED_MIXIN(MockScrollableArea);
|
| +class ScrollbarThemeWithMockInvalidation : public ScrollbarThemeMock {
|
| public:
|
| - static MockScrollableArea* create(const IntPoint& maximumScrollPosition)
|
| - {
|
| - return new MockScrollableArea(maximumScrollPosition);
|
| - }
|
| -
|
| - MOCK_CONST_METHOD0(visualRectForScrollbarParts, LayoutRect());
|
| - MOCK_CONST_METHOD0(isActive, bool());
|
| - MOCK_CONST_METHOD1(scrollSize, int(ScrollbarOrientation));
|
| - MOCK_CONST_METHOD0(isScrollCornerVisible, bool());
|
| - MOCK_CONST_METHOD0(scrollCornerRect, IntRect());
|
| - MOCK_CONST_METHOD0(horizontalScrollbar, Scrollbar*());
|
| - MOCK_CONST_METHOD0(verticalScrollbar, Scrollbar*());
|
| - MOCK_METHOD0(scrollControlWasSetNeedsPaintInvalidation, void());
|
| - MOCK_CONST_METHOD0(enclosingScrollableArea, ScrollableArea*());
|
| - MOCK_CONST_METHOD1(visibleContentRect, IntRect(IncludeScrollbarsInRect));
|
| - MOCK_CONST_METHOD0(contentsSize, IntSize());
|
| - MOCK_CONST_METHOD0(scrollableAreaBoundingBox, IntRect());
|
| - MOCK_CONST_METHOD0(layerForHorizontalScrollbar, GraphicsLayer*());
|
| - MOCK_CONST_METHOD0(layerForVerticalScrollbar, GraphicsLayer*());
|
| -
|
| - bool userInputScrollable(ScrollbarOrientation) const override { return true; }
|
| - bool scrollbarsCanBeActive () const override { return true; }
|
| - bool shouldPlaceVerticalScrollbarOnLeft() const override { return false; }
|
| - void setScrollOffset(const DoublePoint& offset, ScrollType) override { m_scrollPosition = flooredIntPoint(offset).shrunkTo(m_maximumScrollPosition); }
|
| - IntPoint scrollPosition() const override { return m_scrollPosition; }
|
| - IntPoint minimumScrollPosition() const override { return IntPoint(); }
|
| - IntPoint maximumScrollPosition() const override { return m_maximumScrollPosition; }
|
| - int visibleHeight() const override { return 768; }
|
| - int visibleWidth() const override { return 1024; }
|
| - bool scrollAnimatorEnabled() const override { return false; }
|
| - int pageStep(ScrollbarOrientation) const override { return 0; }
|
| -
|
| - using ScrollableArea::horizontalScrollbarNeedsPaintInvalidation;
|
| - using ScrollableArea::verticalScrollbarNeedsPaintInvalidation;
|
| - using ScrollableArea::clearNeedsPaintInvalidationForScrollControls;
|
| -
|
| - DEFINE_INLINE_VIRTUAL_TRACE()
|
| - {
|
| - ScrollableArea::trace(visitor);
|
| - }
|
| -
|
| -private:
|
| - explicit MockScrollableArea(const IntPoint& maximumScrollPosition)
|
| - : m_maximumScrollPosition(maximumScrollPosition) { }
|
| -
|
| - IntPoint m_scrollPosition;
|
| - IntPoint m_maximumScrollPosition;
|
| + MOCK_CONST_METHOD0(shouldRepaintAllPartsOnInvalidation, bool());
|
| + MOCK_CONST_METHOD3(invalidateOnThumbPositionChange, ScrollbarPart(const ScrollbarThemeClient&, float, float));
|
| };
|
|
|
| } // namespace
|
|
|
| -class ScrollableAreaTest : public testing::Test {
|
| -public:
|
| - ScrollableAreaTest() { }
|
| -
|
| - void SetUp() override
|
| - {
|
| - TestingPlatformSupport::Config config;
|
| - config.compositorSupport = Platform::current()->compositorSupport();
|
| - m_fakePlatform = adoptPtr(new TestingPlatformSupportWithMockScheduler(config));
|
| - }
|
| -
|
| - void TearDown() override
|
| - {
|
| - m_fakePlatform = nullptr;
|
| - }
|
| -
|
| -private:
|
| - OwnPtr<TestingPlatformSupportWithMockScheduler> m_fakePlatform;
|
| +class ScrollableAreaTest : public ScrollbarTestSuite {
|
| };
|
|
|
| TEST_F(ScrollableAreaTest, ScrollAnimatorCurrentPositionShouldBeSync)
|
| @@ -103,16 +41,6 @@ TEST_F(ScrollableAreaTest, ScrollAnimatorCurrentPositionShouldBeSync)
|
| EXPECT_EQ(100.0, scrollableArea->scrollAnimator().currentPosition().y());
|
| }
|
|
|
| -namespace {
|
| -
|
| -class ScrollbarThemeWithMockInvalidation : public ScrollbarThemeMock {
|
| -public:
|
| - MOCK_CONST_METHOD0(shouldRepaintAllPartsOnInvalidation, bool());
|
| - MOCK_CONST_METHOD3(invalidateOnThumbPositionChange, ScrollbarPart(const ScrollbarThemeClient&, float, float));
|
| -};
|
| -
|
| -} // namespace
|
| -
|
| TEST_F(ScrollableAreaTest, ScrollbarTrackAndThumbRepaint)
|
| {
|
| ScrollbarThemeWithMockInvalidation theme;
|
|
|