diff options
author | 2012-09-14 16:27:04 +0900 | |
---|---|---|
committer | 2012-09-14 19:42:05 +0900 | |
commit | 252da38fcd1a40b8c308d6754d644064032094f9 (patch) | |
tree | 53f43ca036559a2374505f2553cf33485389c08d /tests/src | |
parent | da8aca6002c1b12cf935f38486eb92d7f57137d4 (diff) | |
download | latinime-252da38fcd1a40b8c308d6754d644064032094f9.tar.gz latinime-252da38fcd1a40b8c308d6754d644064032094f9.tar.xz latinime-252da38fcd1a40b8c308d6754d644064032094f9.zip |
Take locale into account for caps (A10)
Bug: 4967874
Change-Id: Ic7ce7b2de088308fa00865c81246c84c605db1e5
Diffstat (limited to 'tests/src')
-rw-r--r-- | tests/src/com/android/inputmethod/latin/StringUtilsTests.java | 61 |
1 files changed, 35 insertions, 26 deletions
diff --git a/tests/src/com/android/inputmethod/latin/StringUtilsTests.java b/tests/src/com/android/inputmethod/latin/StringUtilsTests.java index c3d9c0616..00cca9d3b 100644 --- a/tests/src/com/android/inputmethod/latin/StringUtilsTests.java +++ b/tests/src/com/android/inputmethod/latin/StringUtilsTests.java @@ -19,6 +19,8 @@ package com.android.inputmethod.latin; import android.test.AndroidTestCase; import android.text.TextUtils; +import java.util.Locale; + public class StringUtilsTests extends AndroidTestCase { public void testContainsInArray() { assertFalse("empty array", StringUtils.containsInArray("key", new String[0])); @@ -90,43 +92,50 @@ public class StringUtilsTests extends AndroidTestCase { StringUtils.removeFromCsvIfExists("key", "key1,key,key3,key,key5")); } - private void onePathForCaps(final CharSequence cs, final int expectedResult, final int mask) { + private void onePathForCaps(final CharSequence cs, final int expectedResult, final int mask, + final Locale l) { int oneTimeResult = expectedResult & mask; - assertEquals("After >" + cs + "<", oneTimeResult, StringUtils.getCapsMode(cs, mask)); + assertEquals("After >" + cs + "<", oneTimeResult, StringUtils.getCapsMode(cs, mask, l)); } - private void allPathsForCaps(final CharSequence cs, final int expectedResult) { + private void allPathsForCaps(final CharSequence cs, final int expectedResult, final Locale l) { final int c = TextUtils.CAP_MODE_CHARACTERS; final int w = TextUtils.CAP_MODE_WORDS; final int s = TextUtils.CAP_MODE_SENTENCES; - onePathForCaps(cs, expectedResult, c | w | s); - onePathForCaps(cs, expectedResult, w | s); - onePathForCaps(cs, expectedResult, c | s); - onePathForCaps(cs, expectedResult, c | w); - onePathForCaps(cs, expectedResult, c); - onePathForCaps(cs, expectedResult, w); - onePathForCaps(cs, expectedResult, s); + onePathForCaps(cs, expectedResult, c | w | s, l); + onePathForCaps(cs, expectedResult, w | s, l); + onePathForCaps(cs, expectedResult, c | s, l); + onePathForCaps(cs, expectedResult, c | w, l); + onePathForCaps(cs, expectedResult, c, l); + onePathForCaps(cs, expectedResult, w, l); + onePathForCaps(cs, expectedResult, s, l); } public void testGetCapsMode() { final int c = TextUtils.CAP_MODE_CHARACTERS; final int w = TextUtils.CAP_MODE_WORDS; final int s = TextUtils.CAP_MODE_SENTENCES; - allPathsForCaps("", c | w | s); - allPathsForCaps("Word", c); - allPathsForCaps("Word.", c); - allPathsForCaps("Word ", c | w); - allPathsForCaps("Word. ", c | w | s); - allPathsForCaps("Word..", c); - allPathsForCaps("Word.. ", c | w | s); - allPathsForCaps("Word... ", c | w | s); - allPathsForCaps("Word ... ", c | w | s); - allPathsForCaps("Word . ", c | w); - allPathsForCaps("In the U.S ", c | w); - allPathsForCaps("In the U.S. ", c | w); - allPathsForCaps("Some stuff (e.g. ", c | w); - allPathsForCaps("In the U.S.. ", c | w | s); - allPathsForCaps("\"Word.\" ", c | w | s); - allPathsForCaps("\"Word\" ", c | w); + Locale l = Locale.ENGLISH; + allPathsForCaps("", c | w | s, l); + allPathsForCaps("Word", c, l); + allPathsForCaps("Word.", c, l); + allPathsForCaps("Word ", c | w, l); + allPathsForCaps("Word. ", c | w | s, l); + allPathsForCaps("Word..", c, l); + allPathsForCaps("Word.. ", c | w | s, l); + allPathsForCaps("Word... ", c | w | s, l); + allPathsForCaps("Word ... ", c | w | s, l); + allPathsForCaps("Word . ", c | w, l); + allPathsForCaps("In the U.S ", c | w, l); + allPathsForCaps("In the U.S. ", c | w, l); + allPathsForCaps("Some stuff (e.g. ", c | w, l); + allPathsForCaps("In the U.S.. ", c | w | s, l); + allPathsForCaps("\"Word.\" ", c | w | s, l); + allPathsForCaps("\"Word\". ", c | w | s, l); + allPathsForCaps("\"Word\" ", c | w, l); + l = Locale.FRENCH; + allPathsForCaps("\"Word.\" ", c | w, l); + allPathsForCaps("\"Word\". ", c | w | s, l); + allPathsForCaps("\"Word\" ", c | w, l); } } |