OLD | NEW |
---|---|
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "base/basictypes.h" | 5 #include "base/basictypes.h" |
6 #include "base/memory/scoped_ptr.h" | 6 #include "base/memory/scoped_ptr.h" |
7 #include "base/strings/utf_string_conversions.h" | 7 #include "base/strings/utf_string_conversions.h" |
8 #include "content/browser/renderer_host/input/gesture_event_filter.h" | 8 #include "content/browser/renderer_host/input/gesture_event_filter.h" |
9 #include "content/browser/renderer_host/input/immediate_input_router.h" | 9 #include "content/browser/renderer_host/input/immediate_input_router.h" |
10 #include "content/browser/renderer_host/input/input_router_client.h" | 10 #include "content/browser/renderer_host/input/input_router_client.h" |
(...skipping 540 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
551 | 551 |
552 // Check that the second event was sent. | 552 // Check that the second event was sent. |
553 EXPECT_TRUE(process_->sink().GetUniqueMessageMatching( | 553 EXPECT_TRUE(process_->sink().GetUniqueMessageMatching( |
554 InputMsg_HandleInputEvent::ID)); | 554 InputMsg_HandleInputEvent::ID)); |
555 EXPECT_EQ(1U, GetSentMessageCountAndResetSink()); | 555 EXPECT_EQ(1U, GetSentMessageCountAndResetSink()); |
556 | 556 |
557 // Check that the correct unhandled wheel event was received. | 557 // Check that the correct unhandled wheel event was received. |
558 EXPECT_EQ(ack_handler_->acked_wheel_event().deltaY, -5); | 558 EXPECT_EQ(ack_handler_->acked_wheel_event().deltaY, -5); |
559 } | 559 } |
560 | 560 |
561 // Test that events ignoring ack disposition don't wait for ACKs. | |
562 TEST_F(ImmediateInputRouterTest, EventsIgnoringAckDispositionDontWaitForAcks) { | |
563 SimulateGestureEvent(WebInputEvent::GestureShowPress, | |
564 WebGestureEvent::Touchscreen); | |
565 | |
566 EXPECT_EQ(1U, GetSentMessageCountAndResetSink()); | |
jdduke (slow)
2013/10/25 20:37:12
Please also check that 1) We get the ack immediate
tdresser
2013/11/04 15:57:30
Done.
| |
567 | |
568 SimulateGestureEvent(WebInputEvent::GestureShowPress, | |
569 WebGestureEvent::Touchscreen); | |
570 | |
571 EXPECT_EQ(1U, GetSentMessageCountAndResetSink()); | |
572 | |
573 SimulateGestureEvent(WebInputEvent::GestureShowPress, | |
574 WebGestureEvent::Touchscreen); | |
575 | |
576 EXPECT_EQ(1U, GetSentMessageCountAndResetSink()); | |
577 } | |
578 | |
579 // Test that events don't get out of order due to ignoring their acks. | |
580 TEST_F(ImmediateInputRouterTest, EventsIgnoringAckDispositionStayInOrder) { | |
581 SimulateGestureEvent(WebInputEvent::GestureFlingStart, | |
582 WebGestureEvent::Touchscreen); | |
583 | |
584 EXPECT_EQ(1U, GetSentMessageCountAndResetSink()); | |
585 | |
586 SimulateGestureEvent(WebInputEvent::GestureShowPress, | |
587 WebGestureEvent::Touchscreen); | |
588 | |
589 EXPECT_EQ(0U, GetSentMessageCountAndResetSink()); | |
590 | |
591 SimulateGestureEvent(WebInputEvent::GestureShowPress, | |
592 WebGestureEvent::Touchscreen); | |
593 | |
594 EXPECT_EQ(0U, GetSentMessageCountAndResetSink()); | |
595 | |
596 SendInputEventACK(WebInputEvent::GestureFlingStart, | |
597 INPUT_EVENT_ACK_STATE_NOT_CONSUMED); | |
598 | |
599 EXPECT_EQ(2U, GetSentMessageCountAndResetSink()); | |
jdduke (slow)
2013/10/25 20:37:12
Same as above, check that we get the immediate ack
tdresser
2013/11/04 15:57:30
Done.
| |
600 } | |
601 | |
561 } // namespace content | 602 } // namespace content |
OLD | NEW |