Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(346)

Unified Diff: chrome/browser/chromeos/input_method/mock_input_method_manager_impl.cc

Issue 2605843002: Add MockInputMethodManager under ui/base/ime/chromeos/ (Closed)
Patch Set: Created 3 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/input_method/mock_input_method_manager_impl.cc
diff --git a/chrome/browser/chromeos/input_method/mock_input_method_manager_impl.cc b/chrome/browser/chromeos/input_method/mock_input_method_manager_impl.cc
new file mode 100644
index 0000000000000000000000000000000000000000..b87a5c242e07e0b0ff1b5eb9cb35c7b88d5d29f0
--- /dev/null
+++ b/chrome/browser/chromeos/input_method/mock_input_method_manager_impl.cc
@@ -0,0 +1,146 @@
+// Copyright (c) 2016 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/chromeos/input_method/mock_input_method_manager_impl.h"
+
+#include <utility>
+#include "chrome/browser/chromeos/input_method/input_method_util.h"
+
+namespace chromeos {
+namespace input_method {
+
+MockInputMethodManagerImpl::State::State(MockInputMethodManagerImpl* manager)
+ : manager_(manager) {
+ active_input_method_ids.push_back("xkb:us::eng");
+}
+
+MockInputMethodManagerImpl::State::~State() {}
+
+MockInputMethodManagerImpl::MockInputMethodManagerImpl()
+ : add_observer_count_(0),
+ remove_observer_count_(0),
+ state_(new State(this)),
+ util_(new InputMethodUtil(&delegate_)),
+ mod3_used_(false) {}
+
+MockInputMethodManagerImpl::~MockInputMethodManagerImpl() {}
+
+void MockInputMethodManagerImpl::AddObserver(
+ InputMethodManager::Observer* observer) {
+ ++add_observer_count_;
+}
+
+void MockInputMethodManagerImpl::RemoveObserver(
+ InputMethodManager::Observer* observer) {
+ ++remove_observer_count_;
+}
+
+std::unique_ptr<InputMethodDescriptors>
+MockInputMethodManagerImpl::GetSupportedInputMethods() const {
+ std::unique_ptr<InputMethodDescriptors> result(new InputMethodDescriptors);
sky 2017/01/03 16:29:46 Use make_unique if possible (see threads on chromi
Azure Wei 2017/01/04 09:13:27 Done.
+ result->push_back(InputMethodUtil::GetFallbackInputMethodDescriptor());
+ return result;
+}
+
+std::unique_ptr<InputMethodDescriptors>
+MockInputMethodManagerImpl::State::GetActiveInputMethods() const {
+ std::unique_ptr<InputMethodDescriptors> result(new InputMethodDescriptors);
+ result->push_back(InputMethodUtil::GetFallbackInputMethodDescriptor());
+ return result;
+}
+
+const std::vector<std::string>&
+MockInputMethodManagerImpl::State::GetActiveInputMethodIds() const {
+ return active_input_method_ids;
+}
+
+size_t MockInputMethodManagerImpl::State::GetNumActiveInputMethods() const {
+ return 1;
+}
+
+const InputMethodDescriptor*
+MockInputMethodManagerImpl::State::GetInputMethodFromId(
+ const std::string& input_method_id) const {
+ static const InputMethodDescriptor defaultInputMethod =
+ InputMethodUtil::GetFallbackInputMethodDescriptor();
+ for (size_t i = 0; i < active_input_method_ids.size(); i++) {
+ if (input_method_id == active_input_method_ids[i]) {
+ return &defaultInputMethod;
+ }
+ }
+ return nullptr;
+}
+
+InputMethodDescriptor MockInputMethodManagerImpl::State::GetCurrentInputMethod()
+ const {
+ InputMethodDescriptor descriptor =
+ InputMethodUtil::GetFallbackInputMethodDescriptor();
+ if (!current_input_method_id.empty()) {
+ return InputMethodDescriptor(
+ current_input_method_id, descriptor.name(), descriptor.indicator(),
+ descriptor.keyboard_layouts(), descriptor.language_codes(), true,
+ GURL(), // options page url.
+ GURL()); // input view page url.
+ }
+ return descriptor;
+}
+
+bool MockInputMethodManagerImpl::IsISOLevel5ShiftUsedByCurrentInputMethod()
+ const {
+ return mod3_used_;
+}
+
+ImeKeyboard* MockInputMethodManagerImpl::GetImeKeyboard() {
+ return &keyboard_;
+}
+
+InputMethodUtil* MockInputMethodManagerImpl::GetInputMethodUtil() {
+ return util_.get();
+}
+
+ComponentExtensionIMEManager*
+MockInputMethodManagerImpl::GetComponentExtensionIMEManager() {
+ return comp_ime_manager_.get();
+}
+
+void MockInputMethodManagerImpl::SetComponentExtensionIMEManager(
+ std::unique_ptr<ComponentExtensionIMEManager> comp_ime_manager) {
+ comp_ime_manager_ = std::move(comp_ime_manager);
+}
+
+void MockInputMethodManagerImpl::set_application_locale(
+ const std::string& value) {
+ delegate_.set_active_locale(value);
+}
+
+scoped_refptr<InputMethodManager::State>
+MockInputMethodManagerImpl::CreateNewState(Profile* profile) {
+ NOTIMPLEMENTED();
+ return state_;
+}
+
+scoped_refptr<InputMethodManager::State>
+MockInputMethodManagerImpl::GetActiveIMEState() {
+ return scoped_refptr<InputMethodManager::State>(state_.get());
+}
+
+scoped_refptr<InputMethodManager::State>
+MockInputMethodManagerImpl::State::Clone() const {
+ NOTIMPLEMENTED();
+ return manager_->GetActiveIMEState();
+}
+
+void MockInputMethodManagerImpl::SetState(
+ scoped_refptr<InputMethodManager::State> state) {
+ state_ = scoped_refptr<MockInputMethodManagerImpl::State>(
+ static_cast<MockInputMethodManagerImpl::State*>(state.get()));
+}
+
+void MockInputMethodManagerImpl::SetCurrentInputMethodId(
+ const std::string& input_method_id) {
+ state_->current_input_method_id = input_method_id;
+}
+
+} // namespace input_method
+} // namespace chromeos

Powered by Google App Engine
This is Rietveld 408576698