| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "blimp/engine/feature/engine_render_widget_feature.h" | 5 #include "blimp/engine/feature/engine_render_widget_feature.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 | 8 |
| 9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 #include "base/memory/ptr_util.h" | 10 #include "base/memory/ptr_util.h" |
| 11 #include "base/numerics/safe_conversions.h" | 11 #include "base/numerics/safe_conversions.h" |
| 12 #include "base/strings/utf_string_conversions.h" | 12 #include "base/strings/utf_string_conversions.h" |
| 13 #include "blimp/common/create_blimp_message.h" | 13 #include "blimp/common/create_blimp_message.h" |
| 14 #include "blimp/common/proto/blimp_message.pb.h" | 14 #include "blimp/common/proto/blimp_message.pb.h" |
| 15 #include "blimp/common/proto/compositor.pb.h" | 15 #include "blimp/common/proto/compositor.pb.h" |
| 16 #include "blimp/common/proto/render_widget.pb.h" | 16 #include "blimp/common/proto/render_widget.pb.h" |
| 17 #include "blimp/net/input_message_generator.h" | 17 #include "blimp/net/input_message_generator.h" |
| 18 #include "blimp/net/test_common.h" | 18 #include "blimp/net/test_common.h" |
| 19 #include "content/public/browser/render_widget_host.h" | 19 #include "content/public/browser/render_widget_host.h" |
| 20 #include "content/public/common/form_field_data.h" | |
| 21 #include "net/base/net_errors.h" | 20 #include "net/base/net_errors.h" |
| 22 #include "net/base/test_completion_callback.h" | 21 #include "net/base/test_completion_callback.h" |
| 23 #include "testing/gmock/include/gmock/gmock.h" | 22 #include "testing/gmock/include/gmock/gmock.h" |
| 24 #include "testing/gtest/include/gtest/gtest.h" | 23 #include "testing/gtest/include/gtest/gtest.h" |
| 25 #include "third_party/WebKit/public/platform/WebInputEvent.h" | 24 #include "third_party/WebKit/public/platform/WebInputEvent.h" |
| 26 #include "ui/base/ime/dummy_text_input_client.h" | 25 #include "ui/base/ime/dummy_text_input_client.h" |
| 27 | 26 |
| 28 using testing::_; | 27 using testing::_; |
| 29 using testing::InSequence; | 28 using testing::InSequence; |
| 30 using testing::Sequence; | 29 using testing::Sequence; |
| (...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 258 EXPECT_CALL( | 257 EXPECT_CALL( |
| 259 *ime_message_sender_, | 258 *ime_message_sender_, |
| 260 MockableProcessMessage(BlimpImeMsgEquals(2, 1, ImeMessage::SHOW_IME, | 259 MockableProcessMessage(BlimpImeMsgEquals(2, 1, ImeMessage::SHOW_IME, |
| 261 std::string("green apple"), 1), | 260 std::string("green apple"), 1), |
| 262 _)); | 261 _)); |
| 263 | 262 |
| 264 EXPECT_CALL( | 263 EXPECT_CALL( |
| 265 *ime_message_sender_, | 264 *ime_message_sender_, |
| 266 MockableProcessMessage(BlimpImeMsgEquals(2, ImeMessage::HIDE_IME), _)); | 265 MockableProcessMessage(BlimpImeMsgEquals(2, ImeMessage::HIDE_IME), _)); |
| 267 | 266 |
| 268 content::FormFieldData field; | |
| 269 field.text = "green apple"; | |
| 270 field.placeholder = "fruit name"; | |
| 271 field.text_input_type = ui::TEXT_INPUT_TYPE_TEXT; | |
| 272 | |
| 273 feature_.OnRenderWidgetCreated(2, &render_widget_host1_); | 267 feature_.OnRenderWidgetCreated(2, &render_widget_host1_); |
| 274 feature_.SendShowImeRequest(2, &render_widget_host1_, field); | 268 feature_.SendShowImeRequest(2, &render_widget_host1_, &text_input_client_); |
| 275 feature_.SendHideImeRequest(2, &render_widget_host1_); | 269 feature_.SendHideImeRequest(2, &render_widget_host1_); |
| 276 } | 270 } |
| 277 | 271 |
| 278 TEST_F(EngineRenderWidgetFeatureTest, DropsStaleMessages) { | 272 TEST_F(EngineRenderWidgetFeatureTest, DropsStaleMessages) { |
| 279 InSequence sequence; | 273 InSequence sequence; |
| 280 std::vector<uint8_t> payload = { 'f', 'u', 'n' }; | 274 std::vector<uint8_t> payload = { 'f', 'u', 'n' }; |
| 281 std::vector<uint8_t> new_payload = {'n', 'o', ' ', 'f', 'u', 'n'}; | 275 std::vector<uint8_t> new_payload = {'n', 'o', ' ', 'f', 'u', 'n'}; |
| 282 | 276 |
| 283 EXPECT_CALL(*render_widget_message_sender_, | 277 EXPECT_CALL(*render_widget_message_sender_, |
| 284 MockableProcessMessage( | 278 MockableProcessMessage( |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 340 | 334 |
| 341 feature_.OnRenderWidgetCreated(1, &render_widget_host1_); | 335 feature_.OnRenderWidgetCreated(1, &render_widget_host1_); |
| 342 feature_.OnRenderWidgetCreated(2, &render_widget_host2_); | 336 feature_.OnRenderWidgetCreated(2, &render_widget_host2_); |
| 343 feature_.OnRenderWidgetInitialized(1, &render_widget_host1_); | 337 feature_.OnRenderWidgetInitialized(1, &render_widget_host1_); |
| 344 feature_.OnRenderWidgetDeleted(2, &render_widget_host2_); | 338 feature_.OnRenderWidgetDeleted(2, &render_widget_host2_); |
| 345 feature_.SendCompositorMessage(1, &render_widget_host1_, payload); | 339 feature_.SendCompositorMessage(1, &render_widget_host1_, payload); |
| 346 } | 340 } |
| 347 | 341 |
| 348 } // namespace engine | 342 } // namespace engine |
| 349 } // namespace blimp | 343 } // namespace blimp |
| OLD | NEW |