Index: content/browser/renderer_host/render_widget_host_view_aura_unittest.cc |
diff --git a/content/browser/renderer_host/render_widget_host_view_aura_unittest.cc b/content/browser/renderer_host/render_widget_host_view_aura_unittest.cc |
index 2335dc08c252d41b280525c12cc4aa8b1344bbf2..b2290ef74895d7920f7505d73d170bc7eafdb1b4 100644 |
--- a/content/browser/renderer_host/render_widget_host_view_aura_unittest.cc |
+++ b/content/browser/renderer_host/render_widget_host_view_aura_unittest.cc |
@@ -308,6 +308,15 @@ class MockWindowObserver : public aura::WindowObserver { |
MOCK_METHOD2(OnDelegatedFrameDamage, void(aura::Window*, const gfx::Rect&)); |
}; |
+const WebInputEvent* GetInputEventFromMessage(const IPC::Message& message) { |
+ PickleIterator iter(message); |
+ const char* data; |
+ int data_length; |
+ if (!message.ReadData(&iter, &data, &data_length)) |
+ return NULL; |
+ return reinterpret_cast<const WebInputEvent*>(data); |
+} |
+ |
} // namespace |
class RenderWidgetHostViewAuraTest : public testing::Test { |
@@ -3000,4 +3009,25 @@ TEST_F(RenderWidgetHostViewAuraTest, KeyEvent) { |
} |
} |
+TEST_F(RenderWidgetHostViewAuraTest, SetCanScrollForWebMouseWheelEvent) { |
+ view_->InitAsChild(NULL); |
+ view_->Show(); |
+ |
+ sink_->ClearMessages(); |
+ |
+ // Simulates the mouse wheel event. |
+ ui::MouseWheelEvent event(gfx::Vector2d(1, 1), |
+ gfx::Point(), gfx::Point(), |
+ ui::EF_CONTROL_DOWN, 0); |
+ view_->OnMouseEvent(&event); |
+ |
+ const WebInputEvent* input_event = |
+ GetInputEventFromMessage(*sink_->GetMessageAt(0)); |
+ const WebMouseWheelEvent* wheel_event = |
+ static_cast<const WebMouseWheelEvent*>(input_event); |
+ // Check if the canScroll set to false when ctrl-scroll is generated from |
+ // mouse wheel event. |
+ EXPECT_FALSE(wheel_event->canScroll); |
Rick Byers
2014/12/18 15:18:14
Great, this is the key case you want to test. But
lanwei
2014/12/19 02:55:44
Done.
|
+} |
+ |
} // namespace content |