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

Side by Side Diff: Source/WebKit/chromium/tests/ScrollAnimatorNoneTest.cpp

Issue 7604015: Merge 92639 - Scroll animator changes to nail the framerate (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/835/
Patch Set: Created 9 years, 4 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 unified diff | Download patch
« no previous file with comments | « Source/WebCore/platform/ScrollAnimatorNone.cpp ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2010 Google Inc. All rights reserved. 2 * Copyright (C) 2010 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
72 MockScrollAnimatorNone() 72 MockScrollAnimatorNone()
73 : ScrollAnimatorNone(new MockScrollableArea(true)) { } 73 : ScrollAnimatorNone(new MockScrollableArea(true)) { }
74 MockScrollAnimatorNone(ScrollableArea* scrollableArea) 74 MockScrollAnimatorNone(ScrollableArea* scrollableArea)
75 : ScrollAnimatorNone(scrollableArea) { } 75 : ScrollAnimatorNone(scrollableArea) { }
76 76
77 float currentX() { return m_currentPosX; } 77 float currentX() { return m_currentPosX; }
78 float currentY() { return m_currentPosY; } 78 float currentY() { return m_currentPosY; }
79 79
80 void reset() 80 void reset()
81 { 81 {
82 stopAnimationTimerIfNeeded(&m_horizontalData); 82 stopAnimationTimerIfNeeded();
83 stopAnimationTimerIfNeeded(&m_verticalData);
84 m_currentPosX = 0; 83 m_currentPosX = 0;
85 m_currentPosY = 0; 84 m_currentPosY = 0;
86 m_horizontalData.reset(); 85 m_horizontalData.reset();
87 m_verticalData.reset(); 86 m_verticalData.reset();
88 } 87 }
89 88
90 MOCK_METHOD1(scrollToOffsetWithoutAnimation, void(const FloatPoint&)); 89 MOCK_METHOD1(scrollToOffsetWithoutAnimation, void(const FloatPoint&));
91 }; 90 };
92 91
93 TEST(ScrollAnimatorEnabled, Enabled) 92 TEST(ScrollAnimatorEnabled, Enabled)
94 { 93 {
95 MockScrollableArea scrollableArea(true); 94 MockScrollableArea scrollableArea(true);
96 MockScrollAnimatorNone scrollAnimatorChromium(&scrollableArea); 95 MockScrollAnimatorNone scrollAnimatorNone(&scrollableArea);
97 96
98 EXPECT_CALL(scrollableArea, scrollSize(_)).Times(AtLeast(1)).WillRepeatedly( Return(1000)); 97 EXPECT_CALL(scrollableArea, scrollSize(_)).Times(AtLeast(1)).WillRepeatedly( Return(1000));
99 EXPECT_CALL(scrollableArea, setScrollOffset(_)).Times(AtLeast(1)); 98 EXPECT_CALL(scrollableArea, setScrollOffset(_)).Times(3);
100 99
101 scrollAnimatorChromium.scroll(HorizontalScrollbar, ScrollByLine, 100, 1); 100 scrollAnimatorNone.scroll(HorizontalScrollbar, ScrollByLine, 100, 1);
102 EXPECT_NE(100, scrollAnimatorChromium.currentX()); 101 EXPECT_NE(100, scrollAnimatorNone.currentX());
103 EXPECT_NE(0, scrollAnimatorChromium.currentX()); 102 EXPECT_NE(0, scrollAnimatorNone.currentX());
104 EXPECT_EQ(0, scrollAnimatorChromium.currentY()); 103 EXPECT_EQ(0, scrollAnimatorNone.currentY());
105 scrollAnimatorChromium.reset(); 104 scrollAnimatorNone.reset();
106 105
107 scrollAnimatorChromium.scroll(HorizontalScrollbar, ScrollByPage, 100, 1); 106 scrollAnimatorNone.scroll(HorizontalScrollbar, ScrollByPage, 100, 1);
108 EXPECT_NE(100, scrollAnimatorChromium.currentX()); 107 EXPECT_NE(100, scrollAnimatorNone.currentX());
109 EXPECT_NE(0, scrollAnimatorChromium.currentX()); 108 EXPECT_NE(0, scrollAnimatorNone.currentX());
110 EXPECT_EQ(0, scrollAnimatorChromium.currentY()); 109 EXPECT_EQ(0, scrollAnimatorNone.currentY());
111 scrollAnimatorChromium.reset(); 110 scrollAnimatorNone.reset();
112 111
113 scrollAnimatorChromium.scroll(HorizontalScrollbar, ScrollByPixel, 4, 25); 112 scrollAnimatorNone.scroll(HorizontalScrollbar, ScrollByPixel, 4, 25);
114 EXPECT_NE(100, scrollAnimatorChromium.currentX()); 113 EXPECT_NE(100, scrollAnimatorNone.currentX());
115 EXPECT_NE(0, scrollAnimatorChromium.currentX()); 114 EXPECT_NE(0, scrollAnimatorNone.currentX());
116 EXPECT_EQ(0, scrollAnimatorChromium.currentY()); 115 EXPECT_EQ(0, scrollAnimatorNone.currentY());
117 scrollAnimatorChromium.reset(); 116 scrollAnimatorNone.reset();
118 } 117 }
119 118
120 TEST(ScrollAnimatorEnabled, Disabled) 119 TEST(ScrollAnimatorEnabled, Disabled)
121 { 120 {
122 MockScrollableArea scrollableArea(false); 121 MockScrollableArea scrollableArea(false);
123 MockScrollAnimatorNone scrollAnimatorChromium(&scrollableArea); 122 MockScrollAnimatorNone scrollAnimatorNone(&scrollableArea);
124 123
125 EXPECT_CALL(scrollableArea, scrollSize(_)).Times(AtLeast(1)).WillRepeatedly( Return(1000)); 124 EXPECT_CALL(scrollableArea, scrollSize(_)).Times(AtLeast(1)).WillRepeatedly( Return(1000));
126 EXPECT_CALL(scrollableArea, setScrollOffset(_)).Times(AtLeast(1)); 125 EXPECT_CALL(scrollableArea, setScrollOffset(_)).Times(4);
127 126
128 scrollAnimatorChromium.scroll(HorizontalScrollbar, ScrollByLine, 100, 1); 127 scrollAnimatorNone.scroll(HorizontalScrollbar, ScrollByLine, 100, 1);
129 EXPECT_EQ(100, scrollAnimatorChromium.currentX()); 128 EXPECT_EQ(100, scrollAnimatorNone.currentX());
130 EXPECT_EQ(0, scrollAnimatorChromium.currentY()); 129 EXPECT_EQ(0, scrollAnimatorNone.currentY());
131 scrollAnimatorChromium.reset(); 130 scrollAnimatorNone.reset();
132 131
133 scrollAnimatorChromium.scroll(HorizontalScrollbar, ScrollByPage, 100, 1); 132 scrollAnimatorNone.scroll(HorizontalScrollbar, ScrollByPage, 100, 1);
134 EXPECT_EQ(100, scrollAnimatorChromium.currentX()); 133 EXPECT_EQ(100, scrollAnimatorNone.currentX());
135 EXPECT_EQ(0, scrollAnimatorChromium.currentY()); 134 EXPECT_EQ(0, scrollAnimatorNone.currentY());
136 scrollAnimatorChromium.reset(); 135 scrollAnimatorNone.reset();
137 136
138 scrollAnimatorChromium.scroll(HorizontalScrollbar, ScrollByDocument, 100, 1) ; 137 scrollAnimatorNone.scroll(HorizontalScrollbar, ScrollByDocument, 100, 1);
139 EXPECT_EQ(100, scrollAnimatorChromium.currentX()); 138 EXPECT_EQ(100, scrollAnimatorNone.currentX());
140 EXPECT_EQ(0, scrollAnimatorChromium.currentY()); 139 EXPECT_EQ(0, scrollAnimatorNone.currentY());
141 scrollAnimatorChromium.reset(); 140 scrollAnimatorNone.reset();
142 141
143 scrollAnimatorChromium.scroll(HorizontalScrollbar, ScrollByPixel, 100, 1); 142 scrollAnimatorNone.scroll(HorizontalScrollbar, ScrollByPixel, 100, 1);
144 EXPECT_EQ(100, scrollAnimatorChromium.currentX()); 143 EXPECT_EQ(100, scrollAnimatorNone.currentX());
145 EXPECT_EQ(0, scrollAnimatorChromium.currentY()); 144 EXPECT_EQ(0, scrollAnimatorNone.currentY());
146 scrollAnimatorChromium.reset(); 145 scrollAnimatorNone.reset();
147 } 146 }
148 147
149 class ScrollAnimatorNoneTest : public testing::Test { 148 class ScrollAnimatorNoneTest : public testing::Test {
150 public: 149 public:
151 ScrollAnimatorNoneTest() 150 ScrollAnimatorNoneTest()
152 { 151 {
153 } 152 }
154 153
155 virtual void SetUp() 154 virtual void SetUp()
156 { 155 {
(...skipping 545 matching lines...) Expand 10 before | Expand all | Expand 10 after
702 } 701 }
703 checkDesiredPosition(0); 702 checkDesiredPosition(0);
704 703
705 t += kAnimationTime; 704 t += kAnimationTime;
706 for (; result && t < kEndTime; t += kAnimationTime) 705 for (; result && t < kEndTime; t += kAnimationTime)
707 result = result && animateScroll(t); 706 result = result && animateScroll(t);
708 checkSoftLanding(0); 707 checkSoftLanding(0);
709 } 708 }
710 709
711 #endif // ENABLE(SMOOTH_SCROLLING) 710 #endif // ENABLE(SMOOTH_SCROLLING)
OLDNEW
« no previous file with comments | « Source/WebCore/platform/ScrollAnimatorNone.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698