Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "athena/home/home_card_gesture_manager.h" | 5 #include "athena/home/home_card_gesture_manager.h" |
| 6 | 6 |
| 7 #include "athena/home/home_card_constants.h" | 7 #include "athena/home/home_card_constants.h" |
| 8 #include "athena/home/public/home_card.h" | 8 #include "athena/home/public/home_card.h" |
| 9 #include "athena/test/athena_test_base.h" | 9 #include "athena/test/athena_test_base.h" |
| 10 #include "base/time/time.h" | 10 #include "base/time/time.h" |
| (...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 173 EXPECT_EQ(1.0f, last_progress_); | 173 EXPECT_EQ(1.0f, last_progress_); |
| 174 | 174 |
| 175 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 900); | 175 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 900); |
| 176 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 910); | 176 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 910); |
| 177 EXPECT_EQ(2, GetProgressCountAndReset()); | 177 EXPECT_EQ(2, GetProgressCountAndReset()); |
| 178 EXPECT_EQ(HomeCard::VISIBLE_BOTTOM, last_from_state_); | 178 EXPECT_EQ(HomeCard::VISIBLE_BOTTOM, last_from_state_); |
| 179 EXPECT_EQ(HomeCard::VISIBLE_CENTERED, last_to_state_); | 179 EXPECT_EQ(HomeCard::VISIBLE_CENTERED, last_to_state_); |
| 180 EXPECT_GT(1.0f, last_progress_); | 180 EXPECT_GT(1.0f, last_progress_); |
| 181 EXPECT_LT(0.0f, last_progress_); | 181 EXPECT_LT(0.0f, last_progress_); |
| 182 | 182 |
| 183 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 960); | |
| 184 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_END, 960)); | |
| 185 EXPECT_EQ(1, GetEndCountAndReset()); | |
| 186 EXPECT_EQ(HomeCard::VISIBLE_MINIMIZED, final_state_); | |
| 187 } | |
| 188 | |
| 189 // Test gesture progress when the gesture is initiated when the home card is in | |
| 190 // the centered state. | |
| 191 TEST_F(HomeCardGestureManagerTest, StartBottom) { | |
| 192 HomeCard::Get()->SetState(HomeCard::VISIBLE_BOTTOM); | |
| 193 | |
| 194 // No changes for slight changes. | |
|
pkotwicz
2014/09/18 21:24:26
changes -> move
Jun Mukai
2014/09/18 21:57:29
Done.
| |
| 195 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_BEGIN, 950)); | |
| 196 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 960); | |
| 197 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_END, 960)); | |
| 198 EXPECT_EQ(1, GetEndCountAndReset()); | |
| 199 EXPECT_EQ(HomeCard::VISIBLE_BOTTOM, final_state_); | |
| 200 | |
| 201 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_BEGIN, 950)); | |
| 202 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_END, 800)); | |
| 203 EXPECT_EQ(1, GetEndCountAndReset()); | |
| 204 EXPECT_EQ(HomeCard::VISIBLE_BOTTOM, final_state_); | |
| 205 | |
| 206 // State change for the bigger move. | |
| 207 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_BEGIN, 950)); | |
| 208 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 1000); | |
| 183 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_END, 1000)); | 209 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_END, 1000)); |
| 184 EXPECT_EQ(1, GetEndCountAndReset()); | 210 EXPECT_EQ(1, GetEndCountAndReset()); |
| 185 EXPECT_EQ(HomeCard::VISIBLE_BOTTOM, final_state_); | 211 EXPECT_EQ(HomeCard::VISIBLE_MINIMIZED, final_state_); |
| 212 | |
| 213 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_BEGIN, 950)); | |
| 214 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 300); | |
| 215 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_END, 300)); | |
| 216 EXPECT_EQ(1, GetEndCountAndReset()); | |
| 217 EXPECT_EQ(HomeCard::VISIBLE_CENTERED, final_state_); | |
| 186 } | 218 } |
| 187 | 219 |
| 188 TEST_F(HomeCardGestureManagerTest, FlingUpAtEnd) { | 220 TEST_F(HomeCardGestureManagerTest, FlingUpAtEnd) { |
| 189 ASSERT_EQ(HomeCard::VISIBLE_MINIMIZED, HomeCard::Get()->GetState()); | 221 ASSERT_EQ(HomeCard::VISIBLE_MINIMIZED, HomeCard::Get()->GetState()); |
| 190 | 222 |
| 191 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_BEGIN, 1020)); | 223 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_BEGIN, 1020)); |
| 192 EXPECT_EQ(0, GetEndCountAndReset()); | 224 EXPECT_EQ(0, GetEndCountAndReset()); |
| 193 EXPECT_EQ(0, GetProgressCountAndReset()); | 225 EXPECT_EQ(0, GetProgressCountAndReset()); |
| 194 | 226 |
| 195 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 1010); | 227 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 1010); |
| 196 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 800); | |
| 197 ProcessFlingGesture(-150.0f); | 228 ProcessFlingGesture(-150.0f); |
| 198 EXPECT_EQ(1, GetEndCountAndReset()); | 229 EXPECT_EQ(1, GetEndCountAndReset()); |
| 199 EXPECT_EQ(HomeCard::VISIBLE_CENTERED, final_state_); | 230 EXPECT_EQ(HomeCard::VISIBLE_BOTTOM, final_state_); |
| 200 } | 231 } |
| 201 | 232 |
| 202 TEST_F(HomeCardGestureManagerTest, FlingDownAtEnd) { | 233 TEST_F(HomeCardGestureManagerTest, FlingDownAtEnd) { |
| 203 ASSERT_EQ(HomeCard::VISIBLE_MINIMIZED, HomeCard::Get()->GetState()); | 234 HomeCard::Get()->SetState(HomeCard::VISIBLE_CENTERED); |
| 204 | 235 |
| 205 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_BEGIN, 1020)); | 236 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_BEGIN, 20)); |
| 206 EXPECT_EQ(0, GetEndCountAndReset()); | 237 EXPECT_EQ(0, GetEndCountAndReset()); |
| 207 EXPECT_EQ(0, GetProgressCountAndReset()); | 238 EXPECT_EQ(0, GetProgressCountAndReset()); |
| 208 | 239 |
| 209 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 1010); | 240 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 30); |
| 210 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 800); | 241 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 100); |
| 211 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 200); | |
| 212 ProcessFlingGesture(150.0f); | 242 ProcessFlingGesture(150.0f); |
| 213 EXPECT_EQ(1, GetEndCountAndReset()); | 243 EXPECT_EQ(1, GetEndCountAndReset()); |
| 214 EXPECT_EQ(HomeCard::VISIBLE_BOTTOM, final_state_); | 244 EXPECT_EQ(HomeCard::VISIBLE_BOTTOM, final_state_); |
| 215 } | 245 } |
| 216 | 246 |
| 217 TEST_F(HomeCardGestureManagerTest, WeakFling) { | 247 TEST_F(HomeCardGestureManagerTest, WeakFling) { |
| 218 ASSERT_EQ(HomeCard::VISIBLE_MINIMIZED, HomeCard::Get()->GetState()); | 248 ASSERT_EQ(HomeCard::VISIBLE_MINIMIZED, HomeCard::Get()->GetState()); |
| 219 | 249 |
| 220 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_BEGIN, 1020)); | 250 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_BEGIN, 1020)); |
| 221 EXPECT_EQ(0, GetEndCountAndReset()); | 251 EXPECT_EQ(0, GetEndCountAndReset()); |
| 222 EXPECT_EQ(0, GetProgressCountAndReset()); | 252 EXPECT_EQ(0, GetProgressCountAndReset()); |
| 223 | 253 |
| 224 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 1010); | 254 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 1010); |
| 255 ProcessFlingGesture(-30.0f); | |
| 256 EXPECT_EQ(1, GetEndCountAndReset()); | |
| 257 EXPECT_EQ(HomeCard::VISIBLE_MINIMIZED, final_state_); | |
| 258 } | |
| 259 | |
| 260 // Sometimes the fling event happens after the estimated height gets to bottom | |
| 261 // state, but the state should not change to centered but remain in bottom. | |
|
pkotwicz
2014/09/18 21:24:26
I am not sure whether this test case is very usefu
Jun Mukai
2014/09/18 21:57:29
Hmm, a weak fling doesn't cause any effects ("Weak
| |
| 262 TEST_F(HomeCardGestureManagerTest, FastFling) { | |
| 263 ASSERT_EQ(HomeCard::VISIBLE_MINIMIZED, HomeCard::Get()->GetState()); | |
| 264 | |
| 265 EXPECT_TRUE(ProcessGestureEvent(ui::ET_GESTURE_SCROLL_BEGIN, 1020)); | |
| 266 EXPECT_EQ(0, GetEndCountAndReset()); | |
| 267 EXPECT_EQ(0, GetProgressCountAndReset()); | |
| 268 | |
| 269 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 1010); | |
| 225 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 800); | 270 ProcessGestureEvent(ui::ET_GESTURE_SCROLL_UPDATE, 800); |
| 226 ProcessFlingGesture(-30.0f); | 271 ProcessFlingGesture(-150.0f); |
| 227 EXPECT_EQ(1, GetEndCountAndReset()); | 272 EXPECT_EQ(1, GetEndCountAndReset()); |
| 228 EXPECT_EQ(HomeCard::VISIBLE_BOTTOM, final_state_); | 273 EXPECT_EQ(HomeCard::VISIBLE_BOTTOM, final_state_); |
| 229 } | 274 } |
| 230 | 275 |
| 231 } // namespace athena | 276 } // namespace athena |
| OLD | NEW |