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

Side by Side Diff: app/l10n_util_unittest.cc

Issue 5643002: Add utility function to determine if a locale is valid syntax; this will... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 10 years 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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 "build/build_config.h" 5 #include "build/build_config.h"
6 6
7 #if defined(OS_POSIX) && !defined(OS_MACOSX) 7 #if defined(OS_POSIX) && !defined(OS_MACOSX)
8 #include <cstdlib> 8 #include <cstdlib>
9 #endif 9 #endif
10 10
(...skipping 304 matching lines...) Expand 10 before | Expand all | Expand 10 after
315 315
316 result = l10n_util::GetDisplayNameForLocale("zh-TW", "en", false); 316 result = l10n_util::GetDisplayNameForLocale("zh-TW", "en", false);
317 EXPECT_EQ(result, ASCIIToUTF16("Chinese (Traditional Han)")); 317 EXPECT_EQ(result, ASCIIToUTF16("Chinese (Traditional Han)"));
318 318
319 result = l10n_util::GetDisplayNameForLocale("pt-BR", "en", false); 319 result = l10n_util::GetDisplayNameForLocale("pt-BR", "en", false);
320 EXPECT_EQ(result, ASCIIToUTF16("Portuguese (Brazil)")); 320 EXPECT_EQ(result, ASCIIToUTF16("Portuguese (Brazil)"));
321 321
322 result = l10n_util::GetDisplayNameForLocale("es-419", "en", false); 322 result = l10n_util::GetDisplayNameForLocale("es-419", "en", false);
323 EXPECT_EQ(result, ASCIIToUTF16("Spanish (Latin America and the Caribbean)")); 323 EXPECT_EQ(result, ASCIIToUTF16("Spanish (Latin America and the Caribbean)"));
324 } 324 }
325
326 TEST_F(L10nUtilTest, IsValidLocaleSyntax) {
327 // Test valid locales.
328 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("en"));
329 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("fr"));
330 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("de"));
331 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("pt"));
332 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("zh"));
333 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("fil"));
334 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("haw"));
335 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("en-US"));
336 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("en_US"));
337 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("en_GB"));
338 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("pt-BR"));
339 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("zh_CN"));
340 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("zh_Hans"));
341 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("zh_Hans_CN"));
342 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("zh_Hant"));
343 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("zh_Hant_TW"));
344 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("fr_CA"));
345 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("i-klingon"));
346 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("es-021"));
jungshik at Google 2010/12/10 22:21:28 nit: perhaps, 'es-419' (one of languages CHrome is
347 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("en_IE_PREEURO"));
348 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("en_IE@currency=IEP"));
jungshik at Google 2010/12/10 22:21:28 would you mind adding en_IE_u_cu_IEP (a newer form
349 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("fr@x=y"));
350 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax("zn_CN@foo=bar"));
351 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax(
352 "fr@collation=phonebook;calendar=islamic-civil"));
353 EXPECT_EQ(true, l10n_util::IsValidLocaleSyntax(
354 "sr_Latn_RS_REVISED@currency=USD"));
355
356 // Test invalid locales.
357 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax(""));
358 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("x"));
359 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("12"));
360 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("456"));
361 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("a1"));
362 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("enUS"));
363 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("zhcn"));
364 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("en.US"));
365 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("en#US"));
366 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("-en-US"));
367 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("en-US-"));
368 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("123-en-US"));
369 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("Latin"));
370 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("German"));
371 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("pt--BR"));
372 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("sl-macedonia"));
373 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("@"));
374 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("en-US@"));
375 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("en-US@x"));
376 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("en-US@x="));
377 EXPECT_EQ(false, l10n_util::IsValidLocaleSyntax("en-US@=y"));
378 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698