aboutsummaryrefslogtreecommitdiffstats
path: root/tests/src/com/android/inputmethod/latin/StringUtilsTests.java
diff options
context:
space:
mode:
authorJean Chalard <jchalard@google.com>2012-09-14 16:53:01 +0900
committerJean Chalard <jchalard@google.com>2012-09-18 16:16:28 +0900
commit90a91272447fd64bc54e06f08f45b11c45930767 (patch)
treeb2f8e5f6907c0269b178dcf1fe50f7e8b4c3f4fc /tests/src/com/android/inputmethod/latin/StringUtilsTests.java
parent764dd712032d7b8012797b1116b523bef7b907f3 (diff)
downloadlatinime-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.java67
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);
}
}