aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJean Chalard <jchalard@google.com>2014-02-17 14:15:57 +0900
committerJean Chalard <jchalard@google.com>2014-06-18 17:45:53 +0900
commitbfea7dec1a4260104b6d4b316f2163368478869c (patch)
tree0e0d337d037159e41d738b5364188fc2db940f5a
parent4c45fff2404b274cf6345221412671a81f0dba46 (diff)
downloadlatinime-bfea7dec1a4260104b6d4b316f2163368478869c.tar.gz
latinime-bfea7dec1a4260104b6d4b316f2163368478869c.tar.xz
latinime-bfea7dec1a4260104b6d4b316f2163368478869c.zip
Add a test for Armenian periods.
Bug: 11463389 Change-Id: Ic1a612bd6b2693369a1688e6a2273cff26fbe6d1
-rw-r--r--tests/src/com/android/inputmethod/latin/ShiftModeTests.java30
-rw-r--r--tests/src/com/android/inputmethod/latin/utils/CapsModeUtilsTests.java15
2 files changed, 26 insertions, 19 deletions
diff --git a/tests/src/com/android/inputmethod/latin/ShiftModeTests.java b/tests/src/com/android/inputmethod/latin/ShiftModeTests.java
index a319ffda6..db3c9baa9 100644
--- a/tests/src/com/android/inputmethod/latin/ShiftModeTests.java
+++ b/tests/src/com/android/inputmethod/latin/ShiftModeTests.java
@@ -111,24 +111,16 @@ public class ShiftModeTests extends InputTestsBase {
assertTrue("(Spanish) Auto caps after inverted bang", isCapsModeAutoShifted());
}
- public void DISABLED_testOtherSentenceSeparators() {
- // We only run this test on Kitkat+ because previous versions of Android don't
- // have an Armenian locale. For some reason I don't know, when the requested
- // locale is not present as a device locale, then the application under test can't
- // access the resources in that locale -- though it works when the app is actually
- // running on the device and not under test. If we ever figure out what's going
- // on, remove this test.
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
- changeLanguage("hy-AM");
- assertTrue("(Armenian) Auto caps at start", isCapsModeAutoShifted());
- type("Hey. ");
- assertFalse("(Armenian) No auto-caps after latin period", isCapsModeAutoShifted());
- type("Hey\u0589");
- assertFalse("(Armenian) No auto-caps directly after armenian period",
- isCapsModeAutoShifted());
- type(" ");
- assertTrue("(Armenian) Auto-caps after armenian period-whitespace",
- isCapsModeAutoShifted());
- }
+ public void testOtherSentenceSeparators() {
+ changeLanguage("hy_AM");
+ assertTrue("(Armenian) Auto caps at start", isCapsModeAutoShifted());
+ type("Hey. ");
+ assertFalse("(Armenian) No auto-caps after latin period", isCapsModeAutoShifted());
+ type("Hey\u0589");
+ assertFalse("(Armenian) No auto-caps directly after armenian period",
+ isCapsModeAutoShifted());
+ type(" ");
+ assertTrue("(Armenian) Auto-caps after armenian period-whitespace",
+ isCapsModeAutoShifted());
}
}
diff --git a/tests/src/com/android/inputmethod/latin/utils/CapsModeUtilsTests.java b/tests/src/com/android/inputmethod/latin/utils/CapsModeUtilsTests.java
index 020d63299..c746c8345 100644
--- a/tests/src/com/android/inputmethod/latin/utils/CapsModeUtilsTests.java
+++ b/tests/src/com/android/inputmethod/latin/utils/CapsModeUtilsTests.java
@@ -22,6 +22,7 @@ import android.test.suitebuilder.annotation.SmallTest;
import android.text.TextUtils;
import com.android.inputmethod.latin.settings.SpacingAndPunctuations;
+import com.android.inputmethod.latin.utils.LocaleUtils;
import java.util.Locale;
@@ -109,5 +110,19 @@ public class CapsModeUtilsTests extends AndroidTestCase {
allPathsForCaps("Liebe Sara, \n ", c | w | s, sp, false);
allPathsForCaps("Liebe Sara \n ", c | w | s, sp, false);
allPathsForCaps("Liebe Sara.\n ", c | w | s, sp, false);
+
+ // Test armenian period
+ sp = job.runInLocale(res, LocaleUtils.constructLocaleFromString("hy_AM"));
+ assertTrue("Period is not sentence separator in Armenian",
+ !sp.isSentenceSeparator('.'));
+ assertTrue("Sentence separator is Armenian period in Armenian",
+ sp.isSentenceSeparator(0x589));
+ // No space : capitalize only if MODE_CHARACTERS
+ allPathsForCaps("Word", c, sp, false);
+ allPathsForCaps("Word.", c, sp, false);
+ // Space, but no armenian period : capitalize if MODE_WORDS but not SENTENCES
+ allPathsForCaps("Word. ", c | w, sp, false);
+ // Armenian period : capitalize if MODE_SENTENCES
+ allPathsForCaps("Word\u0589 ", c | w | s, sp, false);
}
}