| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "chrome/browser/chromeos/input_method/input_method_util.h" | 5 #include "chrome/browser/chromeos/input_method/input_method_util.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 59 virtual void SetUp() OVERRIDE { | 59 virtual void SetUp() OVERRIDE { |
| 60 InputMethodDescriptors input_methods; | 60 InputMethodDescriptors input_methods; |
| 61 | 61 |
| 62 std::vector<std::string> layouts; | 62 std::vector<std::string> layouts; |
| 63 std::vector<std::string> languages; | 63 std::vector<std::string> languages; |
| 64 layouts.push_back("us"); | 64 layouts.push_back("us"); |
| 65 languages.push_back("zh-CN"); | 65 languages.push_back("zh-CN"); |
| 66 | 66 |
| 67 InputMethodDescriptor pinyin_ime(pinyin_ime_id, | 67 InputMethodDescriptor pinyin_ime(pinyin_ime_id, |
| 68 "Pinyin input for testing", | 68 "Pinyin input for testing", |
| 69 "CN", |
| 69 layouts, | 70 layouts, |
| 70 languages, | 71 languages, |
| 71 false, | 72 false, |
| 72 GURL(""), | 73 GURL(""), |
| 73 GURL("")); | 74 GURL("")); |
| 74 input_methods.push_back(pinyin_ime); | 75 input_methods.push_back(pinyin_ime); |
| 75 | 76 |
| 76 languages.clear(); | 77 languages.clear(); |
| 77 languages.push_back("zh-TW"); | 78 languages.push_back("zh-TW"); |
| 78 InputMethodDescriptor zhuyin_ime(zhuyin_ime_id, | 79 InputMethodDescriptor zhuyin_ime(zhuyin_ime_id, |
| 79 "Zhuyin input for testing", | 80 "Zhuyin input for testing", |
| 81 "TW", |
| 80 layouts, | 82 layouts, |
| 81 languages, | 83 languages, |
| 82 false, | 84 false, |
| 83 GURL(""), | 85 GURL(""), |
| 84 GURL("")); | 86 GURL("")); |
| 85 input_methods.push_back(zhuyin_ime); | 87 input_methods.push_back(zhuyin_ime); |
| 86 | 88 |
| 87 util_.SetComponentExtensions(input_methods); | 89 util_.SetComponentExtensions(input_methods); |
| 88 } | 90 } |
| 89 | 91 |
| 90 InputMethodDescriptor GetDesc(const std::string& id, | 92 InputMethodDescriptor GetDesc(const std::string& id, |
| 91 const std::string& raw_layout, | 93 const std::string& raw_layout, |
| 92 const std::string& language_code) { | 94 const std::string& language_code, |
| 95 const std::string& indicator) { |
| 93 std::vector<std::string> layouts; | 96 std::vector<std::string> layouts; |
| 94 layouts.push_back(raw_layout); | 97 layouts.push_back(raw_layout); |
| 95 std::vector<std::string> languages; | 98 std::vector<std::string> languages; |
| 96 languages.push_back(language_code); | 99 languages.push_back(language_code); |
| 97 return InputMethodDescriptor(id, | 100 return InputMethodDescriptor(id, |
| 98 "", | 101 "", // Description. |
| 102 indicator, // Short name used for indicator. |
| 99 layouts, | 103 layouts, |
| 100 languages, | 104 languages, |
| 101 true, | 105 true, |
| 102 GURL(), // options page url | 106 GURL(), // options page url |
| 103 GURL()); // input view page url | 107 GURL()); // input view page url |
| 104 } | 108 } |
| 105 | 109 |
| 106 static base::string16 GetDisplayLanguageName(const std::string& language_code)
{ | 110 static base::string16 GetDisplayLanguageName(const std::string& language_code)
{ |
| 107 return l10n_util::GetDisplayNameForLocale(language_code, "en", true); | 111 return l10n_util::GetDisplayNameForLocale(language_code, "en", true); |
| 108 } | 112 } |
| 109 | 113 |
| 110 FakeInputMethodDelegate delegate_; | 114 FakeInputMethodDelegate delegate_; |
| 111 InputMethodWhitelist whitelist_; | 115 InputMethodWhitelist whitelist_; |
| 112 TestableInputMethodUtil util_; | 116 TestableInputMethodUtil util_; |
| 113 }; | 117 }; |
| 114 | 118 |
| 115 TEST_F(InputMethodUtilTest, GetInputMethodShortNameTest) { | 119 TEST_F(InputMethodUtilTest, GetInputMethodShortNameTest) { |
| 116 // Test normal cases. Two-letter language code should be returned. | 120 // Test normal cases. Two-letter language code should be returned. |
| 117 { | 121 { |
| 118 InputMethodDescriptor desc = GetDesc("m17n:fa:isiri", // input method id | 122 InputMethodDescriptor desc = GetDesc("m17n:fa:isiri", // input method id |
| 119 "us", // keyboard layout name | 123 "us", // keyboard layout name |
| 120 "fa"); // language name | 124 "fa", // language name |
| 125 ""); // indicator |
| 121 EXPECT_EQ(ASCIIToUTF16("FA"), util_.GetInputMethodShortName(desc)); | 126 EXPECT_EQ(ASCIIToUTF16("FA"), util_.GetInputMethodShortName(desc)); |
| 122 } | 127 } |
| 123 { | 128 { |
| 124 InputMethodDescriptor desc = GetDesc("mozc-hangul", "us", "ko"); | 129 InputMethodDescriptor desc = GetDesc("mozc-hangul", "us", "ko", ""); |
| 125 EXPECT_EQ(base::UTF8ToUTF16("\xed\x95\x9c"), | 130 EXPECT_EQ(base::UTF8ToUTF16("\xed\x95\x9c"), |
| 126 util_.GetInputMethodShortName(desc)); | 131 util_.GetInputMethodShortName(desc)); |
| 127 } | 132 } |
| 128 { | 133 { |
| 129 InputMethodDescriptor desc = GetDesc("invalid-id", "us", "xx"); | 134 InputMethodDescriptor desc = GetDesc("invalid-id", "us", "xx", ""); |
| 130 // Upper-case string of the unknown language code, "xx", should be returned. | 135 // Upper-case string of the unknown language code, "xx", should be returned. |
| 131 EXPECT_EQ(ASCIIToUTF16("XX"), util_.GetInputMethodShortName(desc)); | 136 EXPECT_EQ(ASCIIToUTF16("XX"), util_.GetInputMethodShortName(desc)); |
| 132 } | 137 } |
| 133 | 138 |
| 134 // Test special cases. | 139 // Test special cases. |
| 135 { | 140 { |
| 136 InputMethodDescriptor desc = GetDesc("xkb:us:dvorak:eng", "us", "en-US"); | 141 InputMethodDescriptor desc = |
| 142 GetDesc("xkb:us:dvorak:eng", "us", "en-US", "DV"); |
| 137 EXPECT_EQ(ASCIIToUTF16("DV"), util_.GetInputMethodShortName(desc)); | 143 EXPECT_EQ(ASCIIToUTF16("DV"), util_.GetInputMethodShortName(desc)); |
| 138 } | 144 } |
| 139 { | 145 { |
| 140 InputMethodDescriptor desc = GetDesc("xkb:us:colemak:eng", "us", "en-US"); | 146 InputMethodDescriptor desc = |
| 147 GetDesc("xkb:us:colemak:eng", "us", "en-US", "CO"); |
| 141 EXPECT_EQ(ASCIIToUTF16("CO"), util_.GetInputMethodShortName(desc)); | 148 EXPECT_EQ(ASCIIToUTF16("CO"), util_.GetInputMethodShortName(desc)); |
| 142 } | 149 } |
| 143 { | 150 { |
| 144 InputMethodDescriptor desc = | 151 InputMethodDescriptor desc = |
| 145 GetDesc("xkb:us:altgr-intl:eng", "us", "en-US"); | 152 GetDesc("xkb:us:altgr-intl:eng", "us", "en-US", "EXTD"); |
| 146 EXPECT_EQ(ASCIIToUTF16("EXTD"), util_.GetInputMethodShortName(desc)); | 153 EXPECT_EQ(ASCIIToUTF16("EXTD"), util_.GetInputMethodShortName(desc)); |
| 147 } | 154 } |
| 148 { | 155 { |
| 149 InputMethodDescriptor desc = GetDesc("xkb:us:intl:eng", "us", "en-US"); | 156 InputMethodDescriptor desc = |
| 157 GetDesc("xkb:us:intl:eng", "us", "en-US", "INTL"); |
| 150 EXPECT_EQ(ASCIIToUTF16("INTL"), util_.GetInputMethodShortName(desc)); | 158 EXPECT_EQ(ASCIIToUTF16("INTL"), util_.GetInputMethodShortName(desc)); |
| 151 } | 159 } |
| 152 { | 160 { |
| 153 InputMethodDescriptor desc = GetDesc("xkb:de:neo:ger", "de(neo)", "de"); | 161 InputMethodDescriptor desc = |
| 162 GetDesc("xkb:de:neo:ger", "de(neo)", "de", "NEO"); |
| 154 EXPECT_EQ(ASCIIToUTF16("NEO"), util_.GetInputMethodShortName(desc)); | 163 EXPECT_EQ(ASCIIToUTF16("NEO"), util_.GetInputMethodShortName(desc)); |
| 155 } | 164 } |
| 156 { | 165 { |
| 157 InputMethodDescriptor desc = GetDesc("xkb:es:cat:cat", "es(cat)", "ca"); | 166 InputMethodDescriptor desc = |
| 167 GetDesc("xkb:es:cat:cat", "es(cat)", "ca", "CAS"); |
| 158 EXPECT_EQ(ASCIIToUTF16("CAS"), util_.GetInputMethodShortName(desc)); | 168 EXPECT_EQ(ASCIIToUTF16("CAS"), util_.GetInputMethodShortName(desc)); |
| 159 } | 169 } |
| 160 { | 170 { |
| 161 InputMethodDescriptor desc = GetDesc(pinyin_ime_id, "us", "zh-CN"); | 171 InputMethodDescriptor desc = |
| 172 GetDesc(pinyin_ime_id, "us", "zh-CN", ""); |
| 162 EXPECT_EQ(base::UTF8ToUTF16("\xe6\x8b\xbc"), | 173 EXPECT_EQ(base::UTF8ToUTF16("\xe6\x8b\xbc"), |
| 163 util_.GetInputMethodShortName(desc)); | 174 util_.GetInputMethodShortName(desc)); |
| 164 } | 175 } |
| 165 { | 176 { |
| 166 InputMethodDescriptor desc = GetDesc(zhuyin_ime_id, "us", "zh-TW"); | 177 InputMethodDescriptor desc = |
| 178 GetDesc(zhuyin_ime_id, "us", "zh-TW", ""); |
| 167 EXPECT_EQ(base::UTF8ToUTF16("\xE6\xB3\xA8"), | 179 EXPECT_EQ(base::UTF8ToUTF16("\xE6\xB3\xA8"), |
| 168 util_.GetInputMethodShortName(desc)); | 180 util_.GetInputMethodShortName(desc)); |
| 169 } | 181 } |
| 170 } | 182 } |
| 171 | 183 |
| 172 TEST_F(InputMethodUtilTest, GetInputMethodMediumNameTest) { | 184 TEST_F(InputMethodUtilTest, GetInputMethodMediumNameTest) { |
| 173 { | 185 { |
| 174 // input methods with medium name equal to short name | 186 // input methods with medium name equal to short name |
| 175 const char * input_method_id[] = { | 187 const char * input_method_id[] = { |
| 176 "xkb:us:altgr-intl:eng", | 188 "xkb:us:altgr-intl:eng", |
| 177 "xkb:us:dvorak:eng", | 189 "xkb:us:dvorak:eng", |
| 178 "xkb:us:intl:eng", | 190 "xkb:us:intl:eng", |
| 179 "xkb:us:colemak:eng", | 191 "xkb:us:colemak:eng", |
| 180 "english-m", | |
| 181 "xkb:de:neo:ger", | 192 "xkb:de:neo:ger", |
| 182 "xkb:es:cat:cat", | 193 "xkb:es:cat:cat", |
| 183 "xkb:gb:dvorak:eng", | 194 "xkb:gb:dvorak:eng", |
| 184 }; | 195 }; |
| 185 const int len = ARRAYSIZE_UNSAFE(input_method_id); | 196 const int len = ARRAYSIZE_UNSAFE(input_method_id); |
| 186 for (int i=0; i<len; ++i) { | 197 for (int i=0; i<len; ++i) { |
| 187 InputMethodDescriptor desc = GetDesc(input_method_id[i], "", ""); | 198 InputMethodDescriptor desc = GetDesc(input_method_id[i], "", "", ""); |
| 188 base::string16 medium_name = util_.GetInputMethodMediumName(desc); | 199 base::string16 medium_name = util_.GetInputMethodMediumName(desc); |
| 189 base::string16 short_name = util_.GetInputMethodShortName(desc); | 200 base::string16 short_name = util_.GetInputMethodShortName(desc); |
| 190 EXPECT_EQ(medium_name,short_name); | 201 EXPECT_EQ(medium_name,short_name); |
| 191 } | 202 } |
| 192 } | 203 } |
| 193 { | 204 { |
| 194 // input methods with medium name not equal to short name | 205 // input methods with medium name not equal to short name |
| 195 const char * input_method_id[] = { | 206 const char * input_method_id[] = { |
| 196 "m17n:zh:cangjie", | 207 "m17n:zh:cangjie", |
| 197 "m17n:zh:quick", | 208 "m17n:zh:quick", |
| 198 pinyin_ime_id, | 209 pinyin_ime_id, |
| 199 zhuyin_ime_id, | 210 zhuyin_ime_id, |
| 200 "mozc-hangul", | 211 "mozc-hangul", |
| 201 pinyin_ime_id, | 212 pinyin_ime_id, |
| 202 pinyin_ime_id, | 213 pinyin_ime_id, |
| 203 }; | 214 }; |
| 204 const int len = ARRAYSIZE_UNSAFE(input_method_id); | 215 const int len = ARRAYSIZE_UNSAFE(input_method_id); |
| 205 for (int i=0; i<len; ++i) { | 216 for (int i=0; i<len; ++i) { |
| 206 InputMethodDescriptor desc = GetDesc(input_method_id[i], "", ""); | 217 InputMethodDescriptor desc = GetDesc(input_method_id[i], "", "", ""); |
| 207 base::string16 medium_name = util_.GetInputMethodMediumName(desc); | 218 base::string16 medium_name = util_.GetInputMethodMediumName(desc); |
| 208 base::string16 short_name = util_.GetInputMethodShortName(desc); | 219 base::string16 short_name = util_.GetInputMethodShortName(desc); |
| 209 EXPECT_NE(medium_name,short_name); | 220 EXPECT_NE(medium_name,short_name); |
| 210 } | 221 } |
| 211 } | 222 } |
| 212 } | 223 } |
| 213 | 224 |
| 214 TEST_F(InputMethodUtilTest, GetInputMethodLongNameTest) { | 225 TEST_F(InputMethodUtilTest, GetInputMethodLongNameTest) { |
| 215 // For most languages input method or keyboard layout name is returned. | 226 // For most languages input method or keyboard layout name is returned. |
| 216 // See below for exceptions. | 227 // See below for exceptions. |
| 217 { | 228 { |
| 218 InputMethodDescriptor desc = GetDesc("m17n:fa:isiri", "us", "fa"); | 229 InputMethodDescriptor desc = GetDesc("m17n:fa:isiri", "us", "fa", ""); |
| 219 EXPECT_EQ(ASCIIToUTF16("Persian input method (ISIRI 2901 layout)"), | 230 EXPECT_EQ(ASCIIToUTF16("Persian input method (ISIRI 2901 layout)"), |
| 220 util_.GetInputMethodLongName(desc)); | 231 util_.GetInputMethodLongName(desc)); |
| 221 } | 232 } |
| 222 { | 233 { |
| 223 InputMethodDescriptor desc = GetDesc("mozc-hangul", "us", "ko"); | 234 InputMethodDescriptor desc = GetDesc("mozc-hangul", "us", "ko", ""); |
| 224 EXPECT_EQ(ASCIIToUTF16("Korean input method"), | 235 EXPECT_EQ(ASCIIToUTF16("Korean input method"), |
| 225 util_.GetInputMethodLongName(desc)); | 236 util_.GetInputMethodLongName(desc)); |
| 226 } | 237 } |
| 227 { | 238 { |
| 228 InputMethodDescriptor desc = GetDesc("m17n:vi:tcvn", "us", "vi"); | 239 InputMethodDescriptor desc = GetDesc("m17n:vi:tcvn", "us", "vi", ""); |
| 229 EXPECT_EQ(ASCIIToUTF16("Vietnamese input method (TCVN6064)"), | 240 EXPECT_EQ(ASCIIToUTF16("Vietnamese input method (TCVN6064)"), |
| 230 util_.GetInputMethodLongName(desc)); | 241 util_.GetInputMethodLongName(desc)); |
| 231 } | 242 } |
| 232 { | 243 { |
| 233 InputMethodDescriptor desc = GetDesc("xkb:jp::jpn", "jp", "ja"); | 244 InputMethodDescriptor desc = GetDesc("xkb:jp::jpn", "jp", "ja", ""); |
| 234 EXPECT_EQ(ASCIIToUTF16("Japanese keyboard"), | 245 EXPECT_EQ(ASCIIToUTF16("Japanese keyboard"), |
| 235 util_.GetInputMethodLongName(desc)); | 246 util_.GetInputMethodLongName(desc)); |
| 236 } | 247 } |
| 237 { | 248 { |
| 238 InputMethodDescriptor desc = | 249 InputMethodDescriptor desc = |
| 239 GetDesc("xkb:us:dvorak:eng", "us(dvorak)", "en-US"); | 250 GetDesc("xkb:us:dvorak:eng", "us(dvorak)", "en-US", ""); |
| 240 EXPECT_EQ(ASCIIToUTF16("US Dvorak keyboard"), | 251 EXPECT_EQ(ASCIIToUTF16("US Dvorak keyboard"), |
| 241 util_.GetInputMethodLongName(desc)); | 252 util_.GetInputMethodLongName(desc)); |
| 242 } | 253 } |
| 243 { | 254 { |
| 244 InputMethodDescriptor desc = | 255 InputMethodDescriptor desc = |
| 245 GetDesc("xkb:gb:dvorak:eng", "gb(dvorak)", "en-US"); | 256 GetDesc("xkb:gb:dvorak:eng", "gb(dvorak)", "en-US", ""); |
| 246 EXPECT_EQ(ASCIIToUTF16("UK Dvorak keyboard"), | 257 EXPECT_EQ(ASCIIToUTF16("UK Dvorak keyboard"), |
| 247 util_.GetInputMethodLongName(desc)); | 258 util_.GetInputMethodLongName(desc)); |
| 248 } | 259 } |
| 249 | 260 |
| 250 // For Arabic, Dutch, French, German and Hindi, | 261 // For Arabic, Dutch, French, German and Hindi, |
| 251 // "language - keyboard layout" pair is returned. | 262 // "language - keyboard layout" pair is returned. |
| 252 { | 263 { |
| 253 InputMethodDescriptor desc = GetDesc("m17n:ar:kbd", "us", "ar"); | 264 InputMethodDescriptor desc = GetDesc("m17n:ar:kbd", "us", "ar", ""); |
| 254 EXPECT_EQ(ASCIIToUTF16("Arabic - Standard input method"), | 265 EXPECT_EQ(ASCIIToUTF16("Arabic - Standard input method"), |
| 255 util_.GetInputMethodLongName(desc)); | 266 util_.GetInputMethodLongName(desc)); |
| 256 } | 267 } |
| 257 { | 268 { |
| 258 InputMethodDescriptor desc = GetDesc("xkb:be::nld", "be", "nl"); | 269 InputMethodDescriptor desc = GetDesc("xkb:be::nld", "be", "nl", ""); |
| 259 EXPECT_EQ(ASCIIToUTF16("Dutch - Belgian keyboard"), | 270 EXPECT_EQ(ASCIIToUTF16("Dutch - Belgian keyboard"), |
| 260 util_.GetInputMethodLongName(desc)); | 271 util_.GetInputMethodLongName(desc)); |
| 261 } | 272 } |
| 262 { | 273 { |
| 263 InputMethodDescriptor desc = GetDesc("xkb:fr::fra", "fr", "fr"); | 274 InputMethodDescriptor desc = GetDesc("xkb:fr::fra", "fr", "fr", ""); |
| 264 EXPECT_EQ(ASCIIToUTF16("French - French keyboard"), | 275 EXPECT_EQ(ASCIIToUTF16("French - French keyboard"), |
| 265 util_.GetInputMethodLongName(desc)); | 276 util_.GetInputMethodLongName(desc)); |
| 266 } | 277 } |
| 267 { | 278 { |
| 268 InputMethodDescriptor desc = GetDesc("xkb:be::fra", "be", "fr"); | 279 InputMethodDescriptor desc = GetDesc("xkb:be::fra", "be", "fr", ""); |
| 269 EXPECT_EQ(ASCIIToUTF16("French - Belgian keyboard"), | 280 EXPECT_EQ(ASCIIToUTF16("French - Belgian keyboard"), |
| 270 util_.GetInputMethodLongName(desc)); | 281 util_.GetInputMethodLongName(desc)); |
| 271 } | 282 } |
| 272 { | 283 { |
| 273 InputMethodDescriptor desc = GetDesc("xkb:de::ger", "de", "de"); | 284 InputMethodDescriptor desc = GetDesc("xkb:de::ger", "de", "de", ""); |
| 274 EXPECT_EQ(ASCIIToUTF16("German - German keyboard"), | 285 EXPECT_EQ(ASCIIToUTF16("German - German keyboard"), |
| 275 util_.GetInputMethodLongName(desc)); | 286 util_.GetInputMethodLongName(desc)); |
| 276 } | 287 } |
| 277 { | 288 { |
| 278 InputMethodDescriptor desc = GetDesc("xkb:be::ger", "be", "de"); | 289 InputMethodDescriptor desc = GetDesc("xkb:be::ger", "be", "de", ""); |
| 279 EXPECT_EQ(ASCIIToUTF16("German - Belgian keyboard"), | 290 EXPECT_EQ(ASCIIToUTF16("German - Belgian keyboard"), |
| 280 util_.GetInputMethodLongName(desc)); | 291 util_.GetInputMethodLongName(desc)); |
| 281 } | 292 } |
| 282 { | 293 { |
| 283 InputMethodDescriptor desc = GetDesc("m17n:hi:itrans", "us", "hi"); | 294 InputMethodDescriptor desc = GetDesc("m17n:hi:itrans", "us", "hi", ""); |
| 284 EXPECT_EQ(ASCIIToUTF16("Hindi - Standard input method"), | 295 EXPECT_EQ(ASCIIToUTF16("Hindi - Standard input method"), |
| 285 util_.GetInputMethodLongName(desc)); | 296 util_.GetInputMethodLongName(desc)); |
| 286 } | 297 } |
| 287 | 298 |
| 288 { | 299 { |
| 289 InputMethodDescriptor desc = GetDesc("invalid-id", "us", "xx"); | 300 InputMethodDescriptor desc = GetDesc("invalid-id", "us", "xx", ""); |
| 290 // You can safely ignore the "Resouce ID is not found for: invalid-id" | 301 // You can safely ignore the "Resouce ID is not found for: invalid-id" |
| 291 // error. | 302 // error. |
| 292 EXPECT_EQ(ASCIIToUTF16("invalid-id"), | 303 EXPECT_EQ(ASCIIToUTF16("invalid-id"), |
| 293 util_.GetInputMethodLongName(desc)); | 304 util_.GetInputMethodLongName(desc)); |
| 294 } | 305 } |
| 295 } | 306 } |
| 296 | 307 |
| 297 TEST_F(InputMethodUtilTest, TestIsValidInputMethodId) { | 308 TEST_F(InputMethodUtilTest, TestIsValidInputMethodId) { |
| 298 EXPECT_TRUE(util_.IsValidInputMethodId("xkb:us:colemak:eng")); | 309 EXPECT_TRUE(util_.IsValidInputMethodId("xkb:us:colemak:eng")); |
| 299 EXPECT_TRUE(util_.IsValidInputMethodId(pinyin_ime_id)); | 310 EXPECT_TRUE(util_.IsValidInputMethodId(pinyin_ime_id)); |
| (...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 480 EXPECT_FALSE(display_name.empty()) | 491 EXPECT_FALSE(display_name.empty()) |
| 481 << "Invalid language code " << language_code; | 492 << "Invalid language code " << language_code; |
| 482 // On error, GetDisplayNameForLocale() returns the |language_code| as-is. | 493 // On error, GetDisplayNameForLocale() returns the |language_code| as-is. |
| 483 EXPECT_NE(language_code, base::UTF16ToUTF8(display_name)) | 494 EXPECT_NE(language_code, base::UTF16ToUTF8(display_name)) |
| 484 << "Invalid language code " << language_code; | 495 << "Invalid language code " << language_code; |
| 485 } | 496 } |
| 486 } | 497 } |
| 487 | 498 |
| 488 } // namespace input_method | 499 } // namespace input_method |
| 489 } // namespace chromeos | 500 } // namespace chromeos |
| OLD | NEW |