| 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..e56d170faed32c4d8599ddc2346fd7bdb0be80a3
|
| --- /dev/null
|
| +++ b/base/android/javatests/src/org/chromium/base/LocaleUtilsTest.java
|
| @@ -0,0 +1,75 @@
|
| +// 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 {
|
| + // TODO(yirui): update tests for LocaleList once SDK Roll is completed.
|
| + @SmallTest
|
| + public void testGetLocaleString() {
|
| + Locale locale = new Locale("en", "US");
|
| + String localeString = LocaleUtils.getLocaleString(locale);
|
| + assertEquals("en-US", localeString);
|
| +
|
| + locale = new Locale("jp");
|
| + localeString = LocaleUtils.getLocaleString(locale);
|
| + assertEquals("jp", localeString);
|
| +
|
| + locale = new Locale("iw");
|
| + localeString = LocaleUtils.getLocaleString(locale);
|
| + assertEquals("he", localeString);
|
| +
|
| + locale = new Locale("ji");
|
| + localeString = LocaleUtils.getLocaleString(locale);
|
| + assertEquals("yi", localeString);
|
| +
|
| + locale = new Locale("in", "ID");
|
| + localeString = LocaleUtils.getLocaleString(locale);
|
| + assertEquals("id-ID", localeString);
|
| +
|
| + locale = new Locale("tl", "PH");
|
| + localeString = LocaleUtils.getLocaleString(locale);
|
| + assertEquals("fil-PH", localeString);
|
| + }
|
| +
|
| + @SmallTest
|
| + public void testForLanguageTag() {
|
| + String languageTag = "";
|
| + Locale locale = new Locale("");
|
| + assertEquals(locale, LocaleUtils.forLanguageTag(languageTag));
|
| +
|
| + languageTag = "en";
|
| + locale = new Locale("en");
|
| + assertEquals(locale, LocaleUtils.forLanguageTag(languageTag));
|
| +
|
| + languageTag = "mas";
|
| + locale = new Locale("mas");
|
| + assertEquals(locale, LocaleUtils.forLanguageTag(languageTag));
|
| +
|
| + languageTag = "en-GB";
|
| + locale = new Locale("en", "GB");
|
| + assertEquals(locale, LocaleUtils.forLanguageTag(languageTag));
|
| +
|
| + languageTag = "es-419";
|
| + locale = new Locale("es", "419");
|
| + assertEquals(locale, LocaleUtils.forLanguageTag(languageTag));
|
| +
|
| + // Test with invalid inputs
|
| + languageTag = "notValidLanguage";
|
| + locale = new Locale("");
|
| + assertEquals(locale, LocaleUtils.forLanguageTag(languageTag));
|
| +
|
| + languageTag = "en-notValidCountry";
|
| + locale = new Locale("en");
|
| + assertEquals(locale, LocaleUtils.forLanguageTag(languageTag));
|
| + }
|
| +}
|
|
|