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

Unified Diff: base/android/javatests/src/org/chromium/base/LocaleUtilsTest.java

Issue 2406203002: Use BCP47 compliant format for locale representation (Closed)
Patch Set: HashMap used and Error checking added Created 4 years, 2 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: base/android/javatests/src/org/chromium/base/LocaleUtilsTest.java
diff --git a/base/android/javatests/src/org/chromium/base/LocaleUtilsTest.java b/base/android/javatests/src/org/chromium/base/LocaleUtilsTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..c9e7e07d1e66ab9f69e9ffd877f3ccc19e8fc688
--- /dev/null
+++ b/base/android/javatests/src/org/chromium/base/LocaleUtilsTest.java
@@ -0,0 +1,70 @@
+// Copyright 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.
+
+package org.chromium.base;
+
+import android.test.InstrumentationTestCase;
+import android.test.suitebuilder.annotation.SmallTest;
+
+import java.util.Locale;
+
+/**
+ * Tests for the LocaleUtils class.
+ */
+public class LocaleUtilsTest extends InstrumentationTestCase {
+ private LocaleUtils mLocaleUtils;
+
+ // TODO(yirui): update tests for a locale list when SDK Roll is ready
+ // This is also a test for toLanguageTagCompat() while the API level is lower
+ // than 21.
+ @SmallTest
+ public void testGetLocale() {
+ Locale locale = new Locale("en", "US");
+ String localeString = LocaleUtils.getLocale(locale);
+ assertEquals("en-US", localeString);
+
+ locale = new Locale("jp");
+ localeString = LocaleUtils.getLocale(locale);
+ assertEquals("jp", localeString);
+
+ locale = new Locale("iw");
+ localeString = LocaleUtils.getLocale(locale);
+ assertEquals("he", localeString);
+
+ locale = new Locale("ji");
+ localeString = LocaleUtils.getLocale(locale);
+ assertEquals("yi", localeString);
+
+ locale = new Locale("in");
+ localeString = LocaleUtils.getLocale(locale);
+ assertEquals("id", localeString);
+
+ locale = new Locale("tl");
+ localeString = LocaleUtils.getLocale(locale);
+ assertEquals("fil", localeString);
ksk1 2016/10/17 11:21:16 Please have tests for language that will be update
Yirui Huang 2016/10/17 13:42:28 Done. I also added some test for invalid inputs in
+ }
+
+ @SmallTest
+ public void testForLanguageTagCompat() {
+ String languageTag = "";
+ Locale locale = new Locale("");
+ assertEquals(locale, LocaleUtils.forLanguageTagCompat(languageTag));
+
+ languageTag = "en";
+ locale = new Locale("en");
+ assertEquals(locale, LocaleUtils.forLanguageTagCompat(languageTag));
+
+ languageTag = "mas";
+ locale = new Locale("mas");
+ assertEquals(locale, LocaleUtils.forLanguageTagCompat(languageTag));
+
+ languageTag = "en-GB";
+ locale = new Locale("en", "GB");
+ assertEquals(locale, LocaleUtils.forLanguageTagCompat(languageTag));
+
+ languageTag = "es-419";
+ locale = new Locale("es", "419");
+ assertEquals(locale, LocaleUtils.forLanguageTagCompat(languageTag));
+ }
+}

Powered by Google App Engine
This is Rietveld 408576698