Chromium Code Reviews| Index: content/browser/renderer_host/input/synthetic_gesture_controller_unittest.cc |
| diff --git a/content/browser/renderer_host/input/synthetic_gesture_controller_unittest.cc b/content/browser/renderer_host/input/synthetic_gesture_controller_unittest.cc |
| index e7a9f9dc5b6a451540e325200803fc1dc27d3c9c..3e277e46d9a92fc4b9026301b32f4880c06449ba 100644 |
| --- a/content/browser/renderer_host/input/synthetic_gesture_controller_unittest.cc |
| +++ b/content/browser/renderer_host/input/synthetic_gesture_controller_unittest.cc |
| @@ -385,9 +385,12 @@ class SyntheticGestureControllerTest : public testing::Test { |
| void FlushInputUntilComplete() { |
| while (target_->flush_requested()) { |
| - target_->ClearFlushRequest(); |
| - time_ += base::TimeDelta::FromMilliseconds(kFlushInputRateInMs); |
| - controller_->Flush(time_); |
| + while (target_->flush_requested()) { |
| + target_->ClearFlushRequest(); |
| + time_ += base::TimeDelta::FromMilliseconds(kFlushInputRateInMs); |
| + controller_->Flush(time_); |
| + } |
| + controller_->OnDidFlushInput(); |
| } |
| } |
| @@ -483,6 +486,37 @@ TEST_F(SyntheticGestureControllerTest, TwoGesturesInFlight) { |
| EXPECT_EQ(0, num_failure_); |
| } |
| +TEST_F(SyntheticGestureControllerTest, GestureCompledOnDidFlushInput) { |
|
Dominik Grewe
2014/04/02 09:10:31
typo: GestureCompledOnDidFlushInput -> GestureComp
|
| + CreateControllerAndTarget<MockSyntheticGestureTarget>(); |
| + |
| + bool finished_1, finished_2; |
| + scoped_ptr<MockSyntheticGesture> gesture_1( |
| + new MockSyntheticGesture(&finished_1, 2)); |
| + scoped_ptr<MockSyntheticGesture> gesture_2( |
| + new MockSyntheticGesture(&finished_2, 4)); |
| + |
| + QueueSyntheticGesture(gesture_1.PassAs<SyntheticGesture>()); |
| + QueueSyntheticGesture(gesture_2.PassAs<SyntheticGesture>()); |
| + |
| + while (target_->flush_requested()) { |
| + target_->ClearFlushRequest(); |
| + time_ += base::TimeDelta::FromMilliseconds(kFlushInputRateInMs); |
| + controller_->Flush(time_); |
| + } |
| + EXPECT_EQ(0, num_success_); |
| + controller_->OnDidFlushInput(); |
| + EXPECT_EQ(1, num_success_); |
| + |
| + while (target_->flush_requested()) { |
| + target_->ClearFlushRequest(); |
| + time_ += base::TimeDelta::FromMilliseconds(kFlushInputRateInMs); |
| + controller_->Flush(time_); |
| + } |
| + EXPECT_EQ(1, num_success_); |
| + controller_->OnDidFlushInput(); |
| + EXPECT_EQ(2, num_success_); |
| +} |
| + |
| gfx::Vector2d AddTouchSlopToVector(const gfx::Vector2d& vector, |
| SyntheticGestureTarget* target) { |
| const int kTouchSlop = target->GetTouchSlopInDips(); |