diff options
author | 2012-09-14 16:53:01 +0900 | |
---|---|---|
committer | 2012-09-18 16:16:28 +0900 | |
commit | 90a91272447fd64bc54e06f08f45b11c45930767 (patch) | |
tree | b2f8e5f6907c0269b178dcf1fe50f7e8b4c3f4fc /tests/src/com/android/inputmethod/latin/StringUtilsTests.java | |
parent | 764dd712032d7b8012797b1116b523bef7b907f3 (diff) | |
download | latinime-90a91272447fd64bc54e06f08f45b11c45930767.tar.gz latinime-90a91272447fd64bc54e06f08f45b11c45930767.tar.xz latinime-90a91272447fd64bc54e06f08f45b11c45930767.zip |
Take space state into account for caps (A11)
Bug: 6950087
Change-Id: I8a1bca24db64b4dd54db8ac74d90cf43cbdddab6
Diffstat (limited to 'tests/src/com/android/inputmethod/latin/StringUtilsTests.java')
-rw-r--r-- | tests/src/com/android/inputmethod/latin/StringUtilsTests.java | 67 |
1 files changed, 37 insertions, 30 deletions
diff --git a/tests/src/com/android/inputmethod/latin/StringUtilsTests.java b/tests/src/com/android/inputmethod/latin/StringUtilsTests.java index 00cca9d3b..be3494dc7 100644 --- a/tests/src/com/android/inputmethod/latin/StringUtilsTests.java +++ b/tests/src/com/android/inputmethod/latin/StringUtilsTests.java @@ -93,22 +93,24 @@ public class StringUtilsTests extends AndroidTestCase { } private void onePathForCaps(final CharSequence cs, final int expectedResult, final int mask, - final Locale l) { + final Locale l, final boolean hasSpaceBefore) { int oneTimeResult = expectedResult & mask; - assertEquals("After >" + cs + "<", oneTimeResult, StringUtils.getCapsMode(cs, mask, l)); + assertEquals("After >" + cs + "<", oneTimeResult, + StringUtils.getCapsMode(cs, mask, l, hasSpaceBefore)); } - private void allPathsForCaps(final CharSequence cs, final int expectedResult, final Locale l) { + private void allPathsForCaps(final CharSequence cs, final int expectedResult, final Locale l, + final boolean hasSpaceBefore) { 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, 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); + onePathForCaps(cs, expectedResult, c | w | s, l, hasSpaceBefore); + onePathForCaps(cs, expectedResult, w | s, l, hasSpaceBefore); + onePathForCaps(cs, expectedResult, c | s, l, hasSpaceBefore); + onePathForCaps(cs, expectedResult, c | w, l, hasSpaceBefore); + onePathForCaps(cs, expectedResult, c, l, hasSpaceBefore); + onePathForCaps(cs, expectedResult, w, l, hasSpaceBefore); + onePathForCaps(cs, expectedResult, s, l, hasSpaceBefore); } public void testGetCapsMode() { @@ -116,26 +118,31 @@ public class StringUtilsTests extends AndroidTestCase { final int w = TextUtils.CAP_MODE_WORDS; final int s = TextUtils.CAP_MODE_SENTENCES; 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); + allPathsForCaps("", c | w | s, l, false); + allPathsForCaps("Word", c, l, false); + allPathsForCaps("Word.", c, l, false); + allPathsForCaps("Word ", c | w, l, false); + allPathsForCaps("Word. ", c | w | s, l, false); + allPathsForCaps("Word..", c, l, false); + allPathsForCaps("Word.. ", c | w | s, l, false); + allPathsForCaps("Word... ", c | w | s, l, false); + allPathsForCaps("Word ... ", c | w | s, l, false); + allPathsForCaps("Word . ", c | w, l, false); + allPathsForCaps("In the U.S ", c | w, l, false); + allPathsForCaps("In the U.S. ", c | w, l, false); + allPathsForCaps("Some stuff (e.g. ", c | w, l, false); + allPathsForCaps("In the U.S.. ", c | w | s, l, false); + allPathsForCaps("\"Word.\" ", c | w | s, l, false); + allPathsForCaps("\"Word\". ", c | w | s, l, false); + allPathsForCaps("\"Word\" ", c | w, l, false); + + // Test for phantom space + allPathsForCaps("Word", c | w, l, true); + allPathsForCaps("Word.", c | w | s, l, true); + l = Locale.FRENCH; - allPathsForCaps("\"Word.\" ", c | w, l); - allPathsForCaps("\"Word\". ", c | w | s, l); - allPathsForCaps("\"Word\" ", c | w, l); + allPathsForCaps("\"Word.\" ", c | w, l, false); + allPathsForCaps("\"Word\". ", c | w | s, l, false); + allPathsForCaps("\"Word\" ", c | w, l, false); } } |