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

Side by Side Diff: chrome/browser/ui/webui/options/chromeos/cros_language_options_handler_unittest.cc

Issue 397723002: Extract l10n-related parts of NetworkScreenHandler to a helper file (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rename a few method arguments for consistency. Created 6 years, 5 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
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/ui/webui/options/language_options_handler.h" 5 #include "chrome/browser/ui/webui/options/language_options_handler.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/memory/singleton.h" 9 #include "base/memory/singleton.h"
10 #include "base/message_loop/message_loop.h" 10 #include "base/message_loop/message_loop.h"
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
145 // EXPECT_EQ("Japanese input method (for US keyboard)", display_name); 145 // EXPECT_EQ("Japanese input method (for US keyboard)", display_name);
146 ASSERT_TRUE(language_code_set->HasKey("is")); 146 ASSERT_TRUE(language_code_set->HasKey("is"));
147 } 147 }
148 148
149 TEST_F(CrosLanguageOptionsHandlerTest, GetUILanguageList) { 149 TEST_F(CrosLanguageOptionsHandlerTest, GetUILanguageList) {
150 // This requires initialized StatisticsProvider. 150 // This requires initialized StatisticsProvider.
151 // (see CrosLanguageOptionsHandlerTest() ) 151 // (see CrosLanguageOptionsHandlerTest() )
152 InputMethodDescriptors descriptors = CreateInputMethodDescriptors1(); 152 InputMethodDescriptors descriptors = CreateInputMethodDescriptors1();
153 scoped_ptr<base::ListValue> list( 153 scoped_ptr<base::ListValue> list(
154 chromeos::options::CrosLanguageOptionsHandler::GetUILanguageList( 154 chromeos::options::CrosLanguageOptionsHandler::GetUILanguageList(
155 descriptors)); 155 descriptors,
156 NULL));
156 157
157 for (size_t i = 0; i < list->GetSize(); ++i) { 158 for (size_t i = 0; i < list->GetSize(); ++i) {
158 base::DictionaryValue* dict; 159 base::DictionaryValue* dict;
159 ASSERT_TRUE(list->GetDictionary(i, &dict)); 160 ASSERT_TRUE(list->GetDictionary(i, &dict));
160 std::string code; 161 std::string code;
161 ASSERT_TRUE(dict->GetString("code", &code)); 162 ASSERT_TRUE(dict->GetString("code", &code));
162 EXPECT_NE("is", code) 163 EXPECT_NE("is", code)
163 << "Icelandic is an example language which has input method " 164 << "Icelandic is an example language which has input method "
164 << "but can't use it as UI language."; 165 << "but can't use it as UI language.";
165 } 166 }
(...skipping 22 matching lines...) Expand all
188 } 189 }
189 190
190 TEST_F(CrosLanguageOptionsHandlerTest, GetUILanguageListMulti) { 191 TEST_F(CrosLanguageOptionsHandlerTest, GetUILanguageListMulti) {
191 Test__InitStartupCustomizationDocument(kStartupManifest1); 192 Test__InitStartupCustomizationDocument(kStartupManifest1);
192 193
193 // This requires initialized StatisticsProvider. 194 // This requires initialized StatisticsProvider.
194 // (see CrosLanguageOptionsHandlerTest() ) 195 // (see CrosLanguageOptionsHandlerTest() )
195 InputMethodDescriptors descriptors = CreateInputMethodDescriptors2(); 196 InputMethodDescriptors descriptors = CreateInputMethodDescriptors2();
196 scoped_ptr<base::ListValue> list( 197 scoped_ptr<base::ListValue> list(
197 chromeos::options::CrosLanguageOptionsHandler::GetUILanguageList( 198 chromeos::options::CrosLanguageOptionsHandler::GetUILanguageList(
198 descriptors)); 199 descriptors,
200 NULL));
199 201
200 base::DictionaryValue* dict; 202 base::DictionaryValue* dict;
201 std::string code; 203 std::string code;
202 204
203 for (size_t i = 0; i < list->GetSize(); ++i) { 205 for (size_t i = 0; i < list->GetSize(); ++i) {
204 ASSERT_TRUE(list->GetDictionary(i, &dict)); 206 ASSERT_TRUE(list->GetDictionary(i, &dict));
205 ASSERT_TRUE(dict->GetString("code", &code)); 207 ASSERT_TRUE(dict->GetString("code", &code));
206 EXPECT_NE("is", code) 208 EXPECT_NE("is", code)
207 << "Icelandic is an example language which has input method " 209 << "Icelandic is an example language which has input method "
208 << "but can't use it as UI language."; 210 << "but can't use it as UI language.";
209 } 211 }
210 212
211 // (4 languages (except islandic) + divider)=5 + all other languages 213 // (4 languages (except islandic) + divider)=5 + all other languages
212 EXPECT_GT(list->GetSize(), 5u); 214 EXPECT_GT(list->GetSize(), 5u);
213 215
214 EXPECT_LANGUAGE_CODE_AT(0, "fr") 216 EXPECT_LANGUAGE_CODE_AT(0, "fr")
215 EXPECT_LANGUAGE_CODE_AT(1, "en-US") 217 EXPECT_LANGUAGE_CODE_AT(1, "en-US")
216 EXPECT_LANGUAGE_CODE_AT(2, "de") 218 EXPECT_LANGUAGE_CODE_AT(2, "de")
217 EXPECT_LANGUAGE_CODE_AT(3, "it") 219 EXPECT_LANGUAGE_CODE_AT(3, "it")
218 EXPECT_LANGUAGE_CODE_AT(4, 220 EXPECT_LANGUAGE_CODE_AT(4, chromeos::options::kMostRelevantLanguagesDivider);
219 chromeos::options::kVendorOtherLanguagesListDivider);
220 } 221 }
222
223 TEST_F(CrosLanguageOptionsHandlerTest, GetUILanguageListWithMostRelevant) {
224 std::vector<std::string> most_relevant_language_codes;
225 most_relevant_language_codes.push_back("it");
226 most_relevant_language_codes.push_back("de");
227 most_relevant_language_codes.push_back("nonexistent");
228
229 // This requires initialized StatisticsProvider.
230 // (see CrosLanguageOptionsHandlerTest() )
231 InputMethodDescriptors descriptors = CreateInputMethodDescriptors2();
232 scoped_ptr<base::ListValue> list(
233 chromeos::options::CrosLanguageOptionsHandler::GetUILanguageList(
234 descriptors,
235 &most_relevant_language_codes));
236
237 base::DictionaryValue* dict;
238 std::string code;
239
240 for (size_t i = 0; i < list->GetSize(); ++i) {
241 ASSERT_TRUE(list->GetDictionary(i, &dict));
242 ASSERT_TRUE(dict->GetString("code", &code));
243 EXPECT_NE("is", code)
244 << "Icelandic is an example language which has input method "
245 << "but can't use it as UI language.";
246 }
247
248 EXPECT_GT(list->GetSize(), 3u);
249
250 EXPECT_LANGUAGE_CODE_AT(0, "it")
251 EXPECT_LANGUAGE_CODE_AT(1, "de")
252 EXPECT_LANGUAGE_CODE_AT(2, chromeos::options::kMostRelevantLanguagesDivider);
253 }
254
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698