| 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/logging.h" | 5 #include "base/logging.h" |
| 6 #include "chromeos/ime/component_extension_ime_manager.h" | 6 #include "chromeos/ime/component_extension_ime_manager.h" |
| 7 #include "chromeos/ime/extension_ime_util.h" | 7 #include "chromeos/ime/extension_ime_util.h" |
| 8 #include "chromeos/ime/mock_component_extension_ime_manager_delegate.h" | 8 #include "chromeos/ime/mock_component_extension_ime_manager_delegate.h" |
| 9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
| 10 | 10 |
| 11 namespace chromeos { | 11 namespace chromeos { |
| 12 namespace input_method { | 12 namespace input_method { |
| 13 | 13 |
| 14 namespace { | 14 namespace { |
| 15 | 15 |
| 16 class ComponentExtensionIMEManagerTest : | 16 class ComponentExtensionIMEManagerTest : public testing::Test { |
| 17 public testing::Test, | |
| 18 public ComponentExtensionIMEManager::Observer { | |
| 19 public: | 17 public: |
| 20 ComponentExtensionIMEManagerTest() | 18 ComponentExtensionIMEManagerTest() : mock_delegate_(NULL) {} |
| 21 : mock_delegate_(NULL), | |
| 22 on_initialized_callcount_(0) { | |
| 23 } | |
| 24 | 19 |
| 25 virtual void SetUp() { | 20 virtual void SetUp() { |
| 26 ime_list_.clear(); | 21 ime_list_.clear(); |
| 27 | 22 |
| 28 ComponentExtensionIME ext1; | 23 ComponentExtensionIME ext1; |
| 29 ext1.id = "ext1_id"; | 24 ext1.id = "ext1_id"; |
| 30 ext1.description = "ext1_description"; | 25 ext1.description = "ext1_description"; |
| 31 ext1.options_page_url = | 26 ext1.options_page_url = |
| 32 GURL("chrome-extension://" + ext1.id + "/options.html"); | 27 GURL("chrome-extension://" + ext1.id + "/options.html"); |
| 33 ext1.path = base::FilePath("ext1_file_path"); | 28 ext1.path = base::FilePath("ext1_file_path"); |
| (...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 109 ext3_engine3.display_name = "ext3_engine3_display_name"; | 104 ext3_engine3.display_name = "ext3_engine3_display_name"; |
| 110 ext3_engine3.language_codes.push_back("en"); | 105 ext3_engine3.language_codes.push_back("en"); |
| 111 ext3_engine3.layouts.push_back("us"); | 106 ext3_engine3.layouts.push_back("us"); |
| 112 ext3.engines.push_back(ext3_engine3); | 107 ext3.engines.push_back(ext3_engine3); |
| 113 | 108 |
| 114 ime_list_.push_back(ext3); | 109 ime_list_.push_back(ext3); |
| 115 | 110 |
| 116 mock_delegate_ = new MockComponentExtIMEManagerDelegate(); | 111 mock_delegate_ = new MockComponentExtIMEManagerDelegate(); |
| 117 mock_delegate_->set_ime_list(ime_list_); | 112 mock_delegate_->set_ime_list(ime_list_); |
| 118 component_ext_mgr_.reset(new ComponentExtensionIMEManager()); | 113 component_ext_mgr_.reset(new ComponentExtensionIMEManager()); |
| 119 component_ext_mgr_->AddObserver(this); | |
| 120 EXPECT_FALSE(component_ext_mgr_->IsInitialized()); | |
| 121 component_ext_mgr_->Initialize( | 114 component_ext_mgr_->Initialize( |
| 122 scoped_ptr<ComponentExtensionIMEManagerDelegate>( | 115 scoped_ptr<ComponentExtensionIMEManagerDelegate>( |
| 123 mock_delegate_).Pass()); | 116 mock_delegate_).Pass()); |
| 124 EXPECT_TRUE(component_ext_mgr_->IsInitialized()); | |
| 125 component_ext_mgr_->NotifyInitialized(); | |
| 126 } | 117 } |
| 127 | 118 |
| 128 virtual void TearDown() { | 119 virtual void TearDown() { |
| 129 EXPECT_EQ(1, on_initialized_callcount_); | |
| 130 component_ext_mgr_->RemoveObserver(this); | |
| 131 } | 120 } |
| 132 | 121 |
| 133 protected: | 122 protected: |
| 134 MockComponentExtIMEManagerDelegate* mock_delegate_; | 123 MockComponentExtIMEManagerDelegate* mock_delegate_; |
| 135 scoped_ptr<ComponentExtensionIMEManager> component_ext_mgr_; | 124 scoped_ptr<ComponentExtensionIMEManager> component_ext_mgr_; |
| 136 std::vector<ComponentExtensionIME> ime_list_; | 125 std::vector<ComponentExtensionIME> ime_list_; |
| 137 | 126 |
| 138 private: | 127 private: |
| 139 virtual void OnImeComponentExtensionInitialized() OVERRIDE { | |
| 140 ++on_initialized_callcount_; | |
| 141 } | |
| 142 | |
| 143 int on_initialized_callcount_; | |
| 144 | 128 |
| 145 DISALLOW_COPY_AND_ASSIGN(ComponentExtensionIMEManagerTest); | 129 DISALLOW_COPY_AND_ASSIGN(ComponentExtensionIMEManagerTest); |
| 146 }; | 130 }; |
| 147 | 131 |
| 148 TEST_F(ComponentExtensionIMEManagerTest, LoadComponentExtensionIMETest) { | 132 TEST_F(ComponentExtensionIMEManagerTest, LoadComponentExtensionIMETest) { |
| 149 for (size_t i = 0; i < ime_list_.size(); ++i) { | 133 for (size_t i = 0; i < ime_list_.size(); ++i) { |
| 150 for (size_t j = 0; j < ime_list_[i].engines.size(); ++j) { | 134 for (size_t j = 0; j < ime_list_[i].engines.size(); ++j) { |
| 151 const std::string input_method_id = | 135 const std::string input_method_id = |
| 152 extension_ime_util::GetComponentInputMethodID( | 136 extension_ime_util::GetComponentInputMethodID( |
| 153 ime_list_[i].id, | 137 ime_list_[i].id, |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 246 for (size_t i = 0; i < ime_list_.size(); ++i) { | 230 for (size_t i = 0; i < ime_list_.size(); ++i) { |
| 247 total_ime_size += ime_list_[i].engines.size(); | 231 total_ime_size += ime_list_[i].engines.size(); |
| 248 } | 232 } |
| 249 EXPECT_EQ(total_ime_size, descriptors.size()); | 233 EXPECT_EQ(total_ime_size, descriptors.size()); |
| 250 } | 234 } |
| 251 | 235 |
| 252 } // namespace | 236 } // namespace |
| 253 | 237 |
| 254 } // namespace input_method | 238 } // namespace input_method |
| 255 } // namespace chromeos | 239 } // namespace chromeos |
| OLD | NEW |