| 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 "content/common/input/input_param_traits.h" | 5 #include "content/common/input/input_param_traits.h" |
| 6 | 6 |
| 7 #include "content/common/input/input_event.h" | 7 #include "content/common/input/input_event.h" |
| 8 #include "content/common/input/synthetic_gesture_params.h" | 8 #include "content/common/input/synthetic_gesture_params.h" |
| 9 #include "content/common/input/synthetic_pinch_gesture_params.h" | 9 #include "content/common/input/synthetic_pinch_gesture_params.h" |
| 10 #include "content/common/input/synthetic_smooth_drag_gesture_params.h" | 10 #include "content/common/input/synthetic_smooth_drag_gesture_params.h" |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 101 SyntheticTapGestureParams::Cast(b->gesture_params())); | 101 SyntheticTapGestureParams::Cast(b->gesture_params())); |
| 102 break; | 102 break; |
| 103 } | 103 } |
| 104 } | 104 } |
| 105 | 105 |
| 106 static void Verify(const InputEvents& events_in) { | 106 static void Verify(const InputEvents& events_in) { |
| 107 IPC::Message msg; | 107 IPC::Message msg; |
| 108 IPC::ParamTraits<InputEvents>::Write(&msg, events_in); | 108 IPC::ParamTraits<InputEvents>::Write(&msg, events_in); |
| 109 | 109 |
| 110 InputEvents events_out; | 110 InputEvents events_out; |
| 111 PickleIterator iter(msg); | 111 base::PickleIterator iter(msg); |
| 112 EXPECT_TRUE(IPC::ParamTraits<InputEvents>::Read(&msg, &iter, &events_out)); | 112 EXPECT_TRUE(IPC::ParamTraits<InputEvents>::Read(&msg, &iter, &events_out)); |
| 113 | 113 |
| 114 Compare(&events_in, &events_out); | 114 Compare(&events_in, &events_out); |
| 115 | 115 |
| 116 // Perform a sanity check that logging doesn't explode. | 116 // Perform a sanity check that logging doesn't explode. |
| 117 std::string events_in_string; | 117 std::string events_in_string; |
| 118 IPC::ParamTraits<InputEvents>::Log(events_in, &events_in_string); | 118 IPC::ParamTraits<InputEvents>::Log(events_in, &events_in_string); |
| 119 std::string events_out_string; | 119 std::string events_out_string; |
| 120 IPC::ParamTraits<InputEvents>::Log(events_out, &events_out_string); | 120 IPC::ParamTraits<InputEvents>::Log(events_out, &events_out_string); |
| 121 ASSERT_FALSE(events_in_string.empty()); | 121 ASSERT_FALSE(events_in_string.empty()); |
| 122 EXPECT_EQ(events_in_string, events_out_string); | 122 EXPECT_EQ(events_in_string, events_out_string); |
| 123 } | 123 } |
| 124 | 124 |
| 125 static void Verify(const SyntheticGesturePacket& packet_in) { | 125 static void Verify(const SyntheticGesturePacket& packet_in) { |
| 126 IPC::Message msg; | 126 IPC::Message msg; |
| 127 IPC::ParamTraits<SyntheticGesturePacket>::Write(&msg, packet_in); | 127 IPC::ParamTraits<SyntheticGesturePacket>::Write(&msg, packet_in); |
| 128 | 128 |
| 129 SyntheticGesturePacket packet_out; | 129 SyntheticGesturePacket packet_out; |
| 130 PickleIterator iter(msg); | 130 base::PickleIterator iter(msg); |
| 131 EXPECT_TRUE(IPC::ParamTraits<SyntheticGesturePacket>::Read(&msg, &iter, | 131 EXPECT_TRUE(IPC::ParamTraits<SyntheticGesturePacket>::Read(&msg, &iter, |
| 132 &packet_out)); | 132 &packet_out)); |
| 133 | 133 |
| 134 Compare(&packet_in, &packet_out); | 134 Compare(&packet_in, &packet_out); |
| 135 | 135 |
| 136 // Perform a sanity check that logging doesn't explode. | 136 // Perform a sanity check that logging doesn't explode. |
| 137 std::string packet_in_string; | 137 std::string packet_in_string; |
| 138 IPC::ParamTraits<SyntheticGesturePacket>::Log(packet_in, &packet_in_string); | 138 IPC::ParamTraits<SyntheticGesturePacket>::Log(packet_in, &packet_in_string); |
| 139 std::string packet_out_string; | 139 std::string packet_out_string; |
| 140 IPC::ParamTraits<SyntheticGesturePacket>::Log(packet_out, | 140 IPC::ParamTraits<SyntheticGesturePacket>::Log(packet_out, |
| 141 &packet_out_string); | 141 &packet_out_string); |
| 142 ASSERT_FALSE(packet_in_string.empty()); | 142 ASSERT_FALSE(packet_in_string.empty()); |
| 143 EXPECT_EQ(packet_in_string, packet_out_string); | 143 EXPECT_EQ(packet_in_string, packet_out_string); |
| 144 } | 144 } |
| 145 }; | 145 }; |
| 146 | 146 |
| 147 TEST_F(InputParamTraitsTest, UninitializedEvents) { | 147 TEST_F(InputParamTraitsTest, UninitializedEvents) { |
| 148 InputEvent event; | 148 InputEvent event; |
| 149 | 149 |
| 150 IPC::Message msg; | 150 IPC::Message msg; |
| 151 IPC::WriteParam(&msg, event); | 151 IPC::WriteParam(&msg, event); |
| 152 | 152 |
| 153 InputEvent event_out; | 153 InputEvent event_out; |
| 154 PickleIterator iter(msg); | 154 base::PickleIterator iter(msg); |
| 155 EXPECT_FALSE(IPC::ReadParam(&msg, &iter, &event_out)); | 155 EXPECT_FALSE(IPC::ReadParam(&msg, &iter, &event_out)); |
| 156 } | 156 } |
| 157 | 157 |
| 158 TEST_F(InputParamTraitsTest, InitializedEvents) { | 158 TEST_F(InputParamTraitsTest, InitializedEvents) { |
| 159 InputEvents events; | 159 InputEvents events; |
| 160 | 160 |
| 161 ui::LatencyInfo latency; | 161 ui::LatencyInfo latency; |
| 162 | 162 |
| 163 blink::WebKeyboardEvent key_event; | 163 blink::WebKeyboardEvent key_event; |
| 164 key_event.type = blink::WebInputEvent::RawKeyDown; | 164 key_event.type = blink::WebInputEvent::RawKeyDown; |
| (...skipping 25 matching lines...) Expand all Loading... |
| 190 | 190 |
| 191 Verify(events); | 191 Verify(events); |
| 192 } | 192 } |
| 193 | 193 |
| 194 TEST_F(InputParamTraitsTest, InvalidSyntheticGestureParams) { | 194 TEST_F(InputParamTraitsTest, InvalidSyntheticGestureParams) { |
| 195 IPC::Message msg; | 195 IPC::Message msg; |
| 196 // Write invalid value for SyntheticGestureParams::GestureType. | 196 // Write invalid value for SyntheticGestureParams::GestureType. |
| 197 WriteParam(&msg, -3); | 197 WriteParam(&msg, -3); |
| 198 | 198 |
| 199 SyntheticGesturePacket packet_out; | 199 SyntheticGesturePacket packet_out; |
| 200 PickleIterator iter(msg); | 200 base::PickleIterator iter(msg); |
| 201 ASSERT_FALSE( | 201 ASSERT_FALSE( |
| 202 IPC::ParamTraits<SyntheticGesturePacket>::Read(&msg, &iter, &packet_out)); | 202 IPC::ParamTraits<SyntheticGesturePacket>::Read(&msg, &iter, &packet_out)); |
| 203 } | 203 } |
| 204 | 204 |
| 205 TEST_F(InputParamTraitsTest, SyntheticSmoothScrollGestureParams) { | 205 TEST_F(InputParamTraitsTest, SyntheticSmoothScrollGestureParams) { |
| 206 scoped_ptr<SyntheticSmoothScrollGestureParams> gesture_params( | 206 scoped_ptr<SyntheticSmoothScrollGestureParams> gesture_params( |
| 207 new SyntheticSmoothScrollGestureParams); | 207 new SyntheticSmoothScrollGestureParams); |
| 208 gesture_params->gesture_source_type = SyntheticGestureParams::TOUCH_INPUT; | 208 gesture_params->gesture_source_type = SyntheticGestureParams::TOUCH_INPUT; |
| 209 gesture_params->anchor.SetPoint(234, 345); | 209 gesture_params->anchor.SetPoint(234, 345); |
| 210 gesture_params->distances.push_back(gfx::Vector2d(123, -789)); | 210 gesture_params->distances.push_back(gfx::Vector2d(123, -789)); |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 243 ASSERT_EQ(SyntheticGestureParams::TAP_GESTURE, | 243 ASSERT_EQ(SyntheticGestureParams::TAP_GESTURE, |
| 244 gesture_params->GetGestureType()); | 244 gesture_params->GetGestureType()); |
| 245 SyntheticGesturePacket packet_in; | 245 SyntheticGesturePacket packet_in; |
| 246 packet_in.set_gesture_params(gesture_params.Pass()); | 246 packet_in.set_gesture_params(gesture_params.Pass()); |
| 247 | 247 |
| 248 Verify(packet_in); | 248 Verify(packet_in); |
| 249 } | 249 } |
| 250 | 250 |
| 251 } // namespace | 251 } // namespace |
| 252 } // namespace content | 252 } // namespace content |
| OLD | NEW |