Merge "Add a test for Armenian periods."
This commit is contained in:
commit
80bf2821dd
2 changed files with 26 additions and 19 deletions
|
@ -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());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue