aboutsummaryrefslogtreecommitdiffstats
path: root/tests/src/com/android/inputmethod/latin/settings/SpacingAndPunctuationsTests.java
diff options
context:
space:
mode:
authorAmin Bandali <bandali@kelar.org>2024-12-16 21:45:41 -0500
committerAmin Bandali <bandali@kelar.org>2025-01-11 14:17:35 -0500
commite9a0e66716dab4dd3184d009d8920de1961efdfa (patch)
tree02dcc096643d74645bf28459c2834c3d4a2ad7f2 /tests/src/com/android/inputmethod/latin/settings/SpacingAndPunctuationsTests.java
parentfb3b9360d70596d7e921de8bf7d3ca99564a077e (diff)
downloadlatinime-e9a0e66716dab4dd3184d009d8920de1961efdfa.tar.gz
latinime-e9a0e66716dab4dd3184d009d8920de1961efdfa.tar.xz
latinime-e9a0e66716dab4dd3184d009d8920de1961efdfa.zip
Rename to Kelar Keyboard (org.kelar.inputmethod.latin)
Diffstat (limited to 'tests/src/com/android/inputmethod/latin/settings/SpacingAndPunctuationsTests.java')
-rw-r--r--tests/src/com/android/inputmethod/latin/settings/SpacingAndPunctuationsTests.java499
1 files changed, 0 insertions, 499 deletions
diff --git a/tests/src/com/android/inputmethod/latin/settings/SpacingAndPunctuationsTests.java b/tests/src/com/android/inputmethod/latin/settings/SpacingAndPunctuationsTests.java
deleted file mode 100644
index df44fba67..000000000
--- a/tests/src/com/android/inputmethod/latin/settings/SpacingAndPunctuationsTests.java
+++ /dev/null
@@ -1,499 +0,0 @@
-/*
- * Copyright (C) 2014 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.inputmethod.latin.settings;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
-import android.content.Context;
-import android.content.res.Resources;
-
-import androidx.test.InstrumentationRegistry;
-import androidx.test.filters.SmallTest;
-import androidx.test.runner.AndroidJUnit4;
-
-import com.android.inputmethod.latin.SuggestedWords;
-import com.android.inputmethod.latin.common.Constants;
-import com.android.inputmethod.latin.utils.RunInLocale;
-
-import junit.framework.AssertionFailedError;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-
-import java.util.Locale;
-
-@SmallTest
-@RunWith(AndroidJUnit4.class)
-public class SpacingAndPunctuationsTests {
- private static final int ARMENIAN_FULL_STOP = '\u0589';
- private static final int ARMENIAN_COMMA = '\u055D';
-
- private int mScreenMetrics;
-
- private Context getContext() {
- return InstrumentationRegistry.getTargetContext();
- }
-
- private boolean isPhone() {
- return Constants.isPhone(mScreenMetrics);
- }
-
- private boolean isTablet() {
- return Constants.isTablet(mScreenMetrics);
- }
-
- private SpacingAndPunctuations ENGLISH;
- private SpacingAndPunctuations FRENCH;
- private SpacingAndPunctuations GERMAN;
- private SpacingAndPunctuations ARMENIAN;
- private SpacingAndPunctuations THAI;
- private SpacingAndPunctuations KHMER;
- private SpacingAndPunctuations LAO;
- private SpacingAndPunctuations ARABIC;
- private SpacingAndPunctuations PERSIAN;
- private SpacingAndPunctuations HEBREW;
-
- private SpacingAndPunctuations UNITED_STATES;
- private SpacingAndPunctuations UNITED_KINGDOM;
- private SpacingAndPunctuations CANADA_FRENCH;
- private SpacingAndPunctuations SWISS_GERMAN;
- private SpacingAndPunctuations INDIA_ENGLISH;
- private SpacingAndPunctuations ARMENIA_ARMENIAN;
- private SpacingAndPunctuations CAMBODIA_KHMER;
- private SpacingAndPunctuations LAOS_LAO;
-
- @Before
- public void setUp() throws Exception {
- mScreenMetrics = Settings.readScreenMetrics(getContext().getResources());
-
- // Language only
- ENGLISH = getSpacingAndPunctuations(Locale.ENGLISH);
- FRENCH = getSpacingAndPunctuations(Locale.FRENCH);
- GERMAN = getSpacingAndPunctuations(Locale.GERMAN);
- THAI = getSpacingAndPunctuations(new Locale("th"));
- ARMENIAN = getSpacingAndPunctuations(new Locale("hy"));
- KHMER = getSpacingAndPunctuations(new Locale("km"));
- LAO = getSpacingAndPunctuations(new Locale("lo"));
- ARABIC = getSpacingAndPunctuations(new Locale("ar"));
- PERSIAN = getSpacingAndPunctuations(new Locale("fa"));
- HEBREW = getSpacingAndPunctuations(new Locale("iw"));
-
- // Language and Country
- UNITED_STATES = getSpacingAndPunctuations(Locale.US);
- UNITED_KINGDOM = getSpacingAndPunctuations(Locale.UK);
- CANADA_FRENCH = getSpacingAndPunctuations(Locale.CANADA_FRENCH);
- SWISS_GERMAN = getSpacingAndPunctuations(new Locale("de", "CH"));
- INDIA_ENGLISH = getSpacingAndPunctuations(new Locale("en", "IN"));
- ARMENIA_ARMENIAN = getSpacingAndPunctuations(new Locale("hy", "AM"));
- CAMBODIA_KHMER = getSpacingAndPunctuations(new Locale("km", "KH"));
- LAOS_LAO = getSpacingAndPunctuations(new Locale("lo", "LA"));
- }
-
- private SpacingAndPunctuations getSpacingAndPunctuations(final Locale locale) {
- final RunInLocale<SpacingAndPunctuations> job = new RunInLocale<SpacingAndPunctuations>() {
- @Override
- protected SpacingAndPunctuations job(Resources res) {
- return new SpacingAndPunctuations(res);
- }
- };
- return job.runInLocale(getContext().getResources(), locale);
- }
-
- private static void testingStandardWordSeparator(final SpacingAndPunctuations sp) {
- assertTrue("Tab", sp.isWordSeparator('\t'));
- assertTrue("Newline", sp.isWordSeparator('\n'));
- assertTrue("Space", sp.isWordSeparator(' '));
- assertTrue("Exclamation", sp.isWordSeparator('!'));
- assertTrue("Quotation", sp.isWordSeparator('"'));
- assertFalse("Number", sp.isWordSeparator('#'));
- assertFalse("Dollar", sp.isWordSeparator('$'));
- assertFalse("Percent", sp.isWordSeparator('%'));
- assertTrue("Ampersand", sp.isWordSeparator('&'));
- assertFalse("Apostrophe", sp.isWordSeparator('\''));
- assertTrue("L Paren", sp.isWordSeparator('('));
- assertTrue("R Paren", sp.isWordSeparator(')'));
- assertTrue("Asterisk", sp.isWordSeparator('*'));
- assertTrue("Plus", sp.isWordSeparator('+'));
- assertTrue("Comma", sp.isWordSeparator(','));
- assertFalse("Minus", sp.isWordSeparator('-'));
- assertTrue("Period", sp.isWordSeparator('.'));
- assertTrue("Slash", sp.isWordSeparator('/'));
- assertTrue("Colon", sp.isWordSeparator(':'));
- assertTrue("Semicolon", sp.isWordSeparator(';'));
- assertTrue("L Angle", sp.isWordSeparator('<'));
- assertTrue("Equal", sp.isWordSeparator('='));
- assertTrue("R Angle", sp.isWordSeparator('>'));
- assertTrue("Question", sp.isWordSeparator('?'));
- assertFalse("Atmark", sp.isWordSeparator('@'));
- assertTrue("L S Bracket", sp.isWordSeparator('['));
- assertFalse("B Slash", sp.isWordSeparator('\\'));
- assertTrue("R S Bracket", sp.isWordSeparator(']'));
- assertFalse("Circumflex", sp.isWordSeparator('^'));
- assertTrue("Underscore", sp.isWordSeparator('_'));
- assertFalse("Grave", sp.isWordSeparator('`'));
- assertTrue("L C Brace", sp.isWordSeparator('{'));
- assertTrue("V Line", sp.isWordSeparator('|'));
- assertTrue("R C Brace", sp.isWordSeparator('}'));
- assertFalse("Tilde", sp.isWordSeparator('~'));
- }
-
- @Test
- public void testWordSeparator() {
- testingStandardWordSeparator(ENGLISH);
- testingStandardWordSeparator(FRENCH);
- testingStandardWordSeparator(CANADA_FRENCH);
- testingStandardWordSeparator(ARMENIA_ARMENIAN);
- assertTrue(ARMENIA_ARMENIAN.isWordSeparator(ARMENIAN_FULL_STOP));
- assertTrue(ARMENIA_ARMENIAN.isWordSeparator(ARMENIAN_COMMA));
- // TODO: We should fix these.
- testingStandardWordSeparator(ARMENIAN);
- assertFalse(ARMENIAN.isWordSeparator(ARMENIAN_FULL_STOP));
- assertFalse(ARMENIAN.isWordSeparator(ARMENIAN_COMMA));
- }
-
- private static void testingStandardWordConnector(final SpacingAndPunctuations sp) {
- assertFalse("Tab", sp.isWordConnector('\t'));
- assertFalse("Newline", sp.isWordConnector('\n'));
- assertFalse("Space", sp.isWordConnector(' '));
- assertFalse("Exclamation", sp.isWordConnector('!'));
- assertFalse("Quotation", sp.isWordConnector('"'));
- assertFalse("Number", sp.isWordConnector('#'));
- assertFalse("Dollar", sp.isWordConnector('$'));
- assertFalse("Percent", sp.isWordConnector('%'));
- assertFalse("Ampersand", sp.isWordConnector('&'));
- assertTrue("Apostrophe", sp.isWordConnector('\''));
- assertFalse("L Paren", sp.isWordConnector('('));
- assertFalse("R Paren", sp.isWordConnector(')'));
- assertFalse("Asterisk", sp.isWordConnector('*'));
- assertFalse("Plus", sp.isWordConnector('+'));
- assertFalse("Comma", sp.isWordConnector(','));
- assertTrue("Minus", sp.isWordConnector('-'));
- assertFalse("Period", sp.isWordConnector('.'));
- assertFalse("Slash", sp.isWordConnector('/'));
- assertFalse("Colon", sp.isWordConnector(':'));
- assertFalse("Semicolon", sp.isWordConnector(';'));
- assertFalse("L Angle", sp.isWordConnector('<'));
- assertFalse("Equal", sp.isWordConnector('='));
- assertFalse("R Angle", sp.isWordConnector('>'));
- assertFalse("Question", sp.isWordConnector('?'));
- assertFalse("Atmark", sp.isWordConnector('@'));
- assertFalse("L S Bracket", sp.isWordConnector('['));
- assertFalse("B Slash", sp.isWordConnector('\\'));
- assertFalse("R S Bracket", sp.isWordConnector(']'));
- assertFalse("Circumflex", sp.isWordConnector('^'));
- assertFalse("Underscore", sp.isWordConnector('_'));
- assertFalse("Grave", sp.isWordConnector('`'));
- assertFalse("L C Brace", sp.isWordConnector('{'));
- assertFalse("V Line", sp.isWordConnector('|'));
- assertFalse("R C Brace", sp.isWordConnector('}'));
- assertFalse("Tilde", sp.isWordConnector('~'));
-
- }
-
- @Test
- public void testWordConnector() {
- testingStandardWordConnector(ENGLISH);
- testingStandardWordConnector(FRENCH);
- testingStandardWordConnector(CANADA_FRENCH);
- testingStandardWordConnector(ARMENIA_ARMENIAN);
- }
-
- private static void testingCommonPrecededBySpace(final SpacingAndPunctuations sp) {
- assertFalse("Tab", sp.isUsuallyPrecededBySpace('\t'));
- assertFalse("Newline", sp.isUsuallyPrecededBySpace('\n'));
- assertFalse("Space", sp.isUsuallyPrecededBySpace(' '));
- //assertFalse("Exclamation", sp.isUsuallyPrecededBySpace('!'));
- assertFalse("Quotation", sp.isUsuallyPrecededBySpace('"'));
- assertFalse("Number", sp.isUsuallyPrecededBySpace('#'));
- assertFalse("Dollar", sp.isUsuallyPrecededBySpace('$'));
- assertFalse("Percent", sp.isUsuallyPrecededBySpace('%'));
- assertTrue("Ampersand", sp.isUsuallyPrecededBySpace('&'));
- assertFalse("Apostrophe", sp.isUsuallyPrecededBySpace('\''));
- assertTrue("L Paren", sp.isUsuallyPrecededBySpace('('));
- assertFalse("R Paren", sp.isUsuallyPrecededBySpace(')'));
- assertFalse("Asterisk", sp.isUsuallyPrecededBySpace('*'));
- assertFalse("Plus", sp.isUsuallyPrecededBySpace('+'));
- assertFalse("Comma", sp.isUsuallyPrecededBySpace(','));
- assertFalse("Minus", sp.isUsuallyPrecededBySpace('-'));
- assertFalse("Period", sp.isUsuallyPrecededBySpace('.'));
- assertFalse("Slash", sp.isUsuallyPrecededBySpace('/'));
- //assertFalse("Colon", sp.isUsuallyPrecededBySpace(':'));
- //assertFalse("Semicolon", sp.isUsuallyPrecededBySpace(';'));
- assertFalse("L Angle", sp.isUsuallyPrecededBySpace('<'));
- assertFalse("Equal", sp.isUsuallyPrecededBySpace('='));
- assertFalse("R Angle", sp.isUsuallyPrecededBySpace('>'));
- //assertFalse("Question", sp.isUsuallyPrecededBySpace('?'));
- assertFalse("Atmark", sp.isUsuallyPrecededBySpace('@'));
- assertTrue("L S Bracket", sp.isUsuallyPrecededBySpace('['));
- assertFalse("B Slash", sp.isUsuallyPrecededBySpace('\\'));
- assertFalse("R S Bracket", sp.isUsuallyPrecededBySpace(']'));
- assertFalse("Circumflex", sp.isUsuallyPrecededBySpace('^'));
- assertFalse("Underscore", sp.isUsuallyPrecededBySpace('_'));
- assertFalse("Grave", sp.isUsuallyPrecededBySpace('`'));
- assertTrue("L C Brace", sp.isUsuallyPrecededBySpace('{'));
- assertFalse("V Line", sp.isUsuallyPrecededBySpace('|'));
- assertFalse("R C Brace", sp.isUsuallyPrecededBySpace('}'));
- assertFalse("Tilde", sp.isUsuallyPrecededBySpace('~'));
- }
-
- private static void testingStandardPrecededBySpace(final SpacingAndPunctuations sp) {
- testingCommonPrecededBySpace(sp);
- assertFalse("Exclamation", sp.isUsuallyPrecededBySpace('!'));
- assertFalse("Colon", sp.isUsuallyPrecededBySpace(':'));
- assertFalse("Semicolon", sp.isUsuallyPrecededBySpace(';'));
- assertFalse("Question", sp.isUsuallyPrecededBySpace('?'));
- }
-
- @Test
- public void testIsUsuallyPrecededBySpace() {
- testingStandardPrecededBySpace(ENGLISH);
- testingCommonPrecededBySpace(FRENCH);
- assertTrue("Exclamation", FRENCH.isUsuallyPrecededBySpace('!'));
- assertTrue("Colon", FRENCH.isUsuallyPrecededBySpace(':'));
- assertTrue("Semicolon", FRENCH.isUsuallyPrecededBySpace(';'));
- assertTrue("Question", FRENCH.isUsuallyPrecededBySpace('?'));
- testingCommonPrecededBySpace(CANADA_FRENCH);
- assertFalse("Exclamation", CANADA_FRENCH.isUsuallyPrecededBySpace('!'));
- assertTrue("Colon", CANADA_FRENCH.isUsuallyPrecededBySpace(':'));
- assertFalse("Semicolon", CANADA_FRENCH.isUsuallyPrecededBySpace(';'));
- assertFalse("Question", CANADA_FRENCH.isUsuallyPrecededBySpace('?'));
- testingStandardPrecededBySpace(ARMENIA_ARMENIAN);
- }
-
- private static void testingStandardFollowedBySpace(final SpacingAndPunctuations sp) {
- assertFalse("Tab", sp.isUsuallyFollowedBySpace('\t'));
- assertFalse("Newline", sp.isUsuallyFollowedBySpace('\n'));
- assertFalse("Space", sp.isUsuallyFollowedBySpace(' '));
- assertTrue("Exclamation", sp.isUsuallyFollowedBySpace('!'));
- assertFalse("Quotation", sp.isUsuallyFollowedBySpace('"'));
- assertFalse("Number", sp.isUsuallyFollowedBySpace('#'));
- assertFalse("Dollar", sp.isUsuallyFollowedBySpace('$'));
- assertFalse("Percent", sp.isUsuallyFollowedBySpace('%'));
- assertTrue("Ampersand", sp.isUsuallyFollowedBySpace('&'));
- assertFalse("Apostrophe", sp.isUsuallyFollowedBySpace('\''));
- assertFalse("L Paren", sp.isUsuallyFollowedBySpace('('));
- assertTrue("R Paren", sp.isUsuallyFollowedBySpace(')'));
- assertFalse("Asterisk", sp.isUsuallyFollowedBySpace('*'));
- assertFalse("Plus", sp.isUsuallyFollowedBySpace('+'));
- assertTrue("Comma", sp.isUsuallyFollowedBySpace(','));
- assertFalse("Minus", sp.isUsuallyFollowedBySpace('-'));
- assertTrue("Period", sp.isUsuallyFollowedBySpace('.'));
- assertFalse("Slash", sp.isUsuallyFollowedBySpace('/'));
- assertTrue("Colon", sp.isUsuallyFollowedBySpace(':'));
- assertTrue("Semicolon", sp.isUsuallyFollowedBySpace(';'));
- assertFalse("L Angle", sp.isUsuallyFollowedBySpace('<'));
- assertFalse("Equal", sp.isUsuallyFollowedBySpace('='));
- assertFalse("R Angle", sp.isUsuallyFollowedBySpace('>'));
- assertTrue("Question", sp.isUsuallyFollowedBySpace('?'));
- assertFalse("Atmark", sp.isUsuallyFollowedBySpace('@'));
- assertFalse("L S Bracket", sp.isUsuallyFollowedBySpace('['));
- assertFalse("B Slash", sp.isUsuallyFollowedBySpace('\\'));
- assertTrue("R S Bracket", sp.isUsuallyFollowedBySpace(']'));
- assertFalse("Circumflex", sp.isUsuallyFollowedBySpace('^'));
- assertFalse("Underscore", sp.isUsuallyFollowedBySpace('_'));
- assertFalse("Grave", sp.isUsuallyFollowedBySpace('`'));
- assertFalse("L C Brace", sp.isUsuallyFollowedBySpace('{'));
- assertFalse("V Line", sp.isUsuallyFollowedBySpace('|'));
- assertTrue("R C Brace", sp.isUsuallyFollowedBySpace('}'));
- assertFalse("Tilde", sp.isUsuallyFollowedBySpace('~'));
- }
-
- @Test
- public void testIsUsuallyFollowedBySpace() {
- testingStandardFollowedBySpace(ENGLISH);
- testingStandardFollowedBySpace(FRENCH);
- testingStandardFollowedBySpace(CANADA_FRENCH);
- testingStandardFollowedBySpace(ARMENIA_ARMENIAN);
- assertTrue(ARMENIA_ARMENIAN.isUsuallyFollowedBySpace(ARMENIAN_FULL_STOP));
- assertTrue(ARMENIA_ARMENIAN.isUsuallyFollowedBySpace(ARMENIAN_COMMA));
- }
-
- private static void testingStandardSentenceSeparator(final SpacingAndPunctuations sp) {
- assertFalse("Tab", sp.isUsuallyFollowedBySpace('\t'));
- assertFalse("Newline", sp.isUsuallyFollowedBySpace('\n'));
- assertFalse("Space", sp.isUsuallyFollowedBySpace(' '));
- assertFalse("Exclamation", sp.isUsuallyFollowedBySpace('!'));
- assertFalse("Quotation", sp.isUsuallyFollowedBySpace('"'));
- assertFalse("Number", sp.isUsuallyFollowedBySpace('#'));
- assertFalse("Dollar", sp.isUsuallyFollowedBySpace('$'));
- assertFalse("Percent", sp.isUsuallyFollowedBySpace('%'));
- assertFalse("Ampersand", sp.isUsuallyFollowedBySpace('&'));
- assertFalse("Apostrophe", sp.isUsuallyFollowedBySpace('\''));
- assertFalse("L Paren", sp.isUsuallyFollowedBySpace('('));
- assertFalse("R Paren", sp.isUsuallyFollowedBySpace(')'));
- assertFalse("Asterisk", sp.isUsuallyFollowedBySpace('*'));
- assertFalse("Plus", sp.isUsuallyFollowedBySpace('+'));
- assertFalse("Comma", sp.isUsuallyFollowedBySpace(','));
- assertFalse("Minus", sp.isUsuallyFollowedBySpace('-'));
- assertTrue("Period", sp.isUsuallyFollowedBySpace('.'));
- assertFalse("Slash", sp.isUsuallyFollowedBySpace('/'));
- assertFalse("Colon", sp.isUsuallyFollowedBySpace(':'));
- assertFalse("Semicolon", sp.isUsuallyFollowedBySpace(';'));
- assertFalse("L Angle", sp.isUsuallyFollowedBySpace('<'));
- assertFalse("Equal", sp.isUsuallyFollowedBySpace('='));
- assertFalse("R Angle", sp.isUsuallyFollowedBySpace('>'));
- assertFalse("Question", sp.isUsuallyFollowedBySpace('?'));
- assertFalse("Atmark", sp.isUsuallyFollowedBySpace('@'));
- assertFalse("L S Bracket", sp.isUsuallyFollowedBySpace('['));
- assertFalse("B Slash", sp.isUsuallyFollowedBySpace('\\'));
- assertFalse("R S Bracket", sp.isUsuallyFollowedBySpace(']'));
- assertFalse("Circumflex", sp.isUsuallyFollowedBySpace('^'));
- assertFalse("Underscore", sp.isUsuallyFollowedBySpace('_'));
- assertFalse("Grave", sp.isUsuallyFollowedBySpace('`'));
- assertFalse("L C Brace", sp.isUsuallyFollowedBySpace('{'));
- assertFalse("V Line", sp.isUsuallyFollowedBySpace('|'));
- assertFalse("R C Brace", sp.isUsuallyFollowedBySpace('}'));
- assertFalse("Tilde", sp.isUsuallyFollowedBySpace('~'));
- }
-
- @Test
- public void testIsSentenceSeparator() {
- testingStandardSentenceSeparator(ENGLISH);
- try {
- testingStandardSentenceSeparator(ARMENIA_ARMENIAN);
- fail("Armenian Sentence Separator");
- } catch (final AssertionFailedError e) {
- assertEquals("Period", e.getMessage());
- }
- assertTrue(ARMENIA_ARMENIAN.isSentenceSeparator(ARMENIAN_FULL_STOP));
- assertFalse(ARMENIA_ARMENIAN.isSentenceSeparator(ARMENIAN_COMMA));
- }
-
- @Test
- public void testLanguageHasSpace() {
- assertTrue(ENGLISH.mCurrentLanguageHasSpaces);
- assertTrue(FRENCH.mCurrentLanguageHasSpaces);
- assertTrue(GERMAN.mCurrentLanguageHasSpaces);
- assertFalse(THAI.mCurrentLanguageHasSpaces);
- assertFalse(CAMBODIA_KHMER.mCurrentLanguageHasSpaces);
- assertFalse(LAOS_LAO.mCurrentLanguageHasSpaces);
- // TODO: We should fix these.
- assertTrue(KHMER.mCurrentLanguageHasSpaces);
- assertTrue(LAO.mCurrentLanguageHasSpaces);
- }
-
- @Test
- public void testUsesAmericanTypography() {
- assertTrue(ENGLISH.mUsesAmericanTypography);
- assertTrue(UNITED_STATES.mUsesAmericanTypography);
- assertTrue(UNITED_KINGDOM.mUsesAmericanTypography);
- assertTrue(INDIA_ENGLISH.mUsesAmericanTypography);
- assertFalse(FRENCH.mUsesAmericanTypography);
- assertFalse(GERMAN.mUsesAmericanTypography);
- assertFalse(SWISS_GERMAN.mUsesAmericanTypography);
- }
-
- @Test
- public void testUsesGermanRules() {
- assertFalse(ENGLISH.mUsesGermanRules);
- assertFalse(FRENCH.mUsesGermanRules);
- assertTrue(GERMAN.mUsesGermanRules);
- assertTrue(SWISS_GERMAN.mUsesGermanRules);
- }
-
- // Punctuations for phone.
- private static final String[] PUNCTUATION_LABELS_PHONE = {
- "!", "?", ",", ":", ";", "\"", "(", ")", "'", "-", "/", "@", "_"
- };
- private static final String[] PUNCTUATION_WORDS_PHONE_LTR = PUNCTUATION_LABELS_PHONE;
- private static final String[] PUNCTUATION_WORDS_PHONE_HEBREW = {
- "!", "?", ",", ":", ";", "\"", ")", "(", "'", "-", "/", "@", "_"
- };
- // U+061F: "؟" ARABIC QUESTION MARK
- // U+060C: "،" ARABIC COMMA
- // U+061B: "؛" ARABIC SEMICOLON
- private static final String[] PUNCTUATION_LABELS_PHONE_ARABIC_PERSIAN = {
- "!", "\u061F", "\u060C", ":", "\u061B", "\"", "(", ")", "'", "-", "/", "@", "_"
- };
- private static final String[] PUNCTUATION_WORDS_PHONE_ARABIC_PERSIAN = {
- "!", "\u061F", "\u060C", ":", "\u061B", "\"", ")", "(", "'", "-", "/", "@", "_"
- };
-
- // Punctuations for tablet.
- private static final String[] PUNCTUATION_LABELS_TABLET = {
- ":", ";", "\"", "(", ")", "'", "-", "/", "@", "_"
- };
- private static final String[] PUNCTUATION_WORDS_TABLET_LTR = PUNCTUATION_LABELS_TABLET;
- private static final String[] PUNCTUATION_WORDS_TABLET_HEBREW = {
- ":", ";", "\"", ")", "(", "'", "-", "/", "@", "_"
- };
- private static final String[] PUNCTUATION_LABELS_TABLET_ARABIC_PERSIAN = {
- "!", "\u061F", ":", "\u061B", "\"", "'", "(", ")", "-", "/", "@", "_"
- };
- private static final String[] PUNCTUATION_WORDS_TABLET_ARABIC_PERSIAN = {
- "!", "\u061F", ":", "\u061B", "\"", "'", ")", "(", "-", "/", "@", "_"
- };
-
- private static void testingStandardPunctuationSuggestions(final SpacingAndPunctuations sp,
- final String[] punctuationLabels, final String[] punctuationWords) {
- final SuggestedWords suggestedWords = sp.mSuggestPuncList;
- assertFalse("typedWordValid", suggestedWords.mTypedWordValid);
- assertFalse("willAutoCorrect", suggestedWords.mWillAutoCorrect);
- assertTrue("isPunctuationSuggestions", suggestedWords.isPunctuationSuggestions());
- assertFalse("isObsoleteSuggestions", suggestedWords.mIsObsoleteSuggestions);
- assertFalse("isPrediction", suggestedWords.isPrediction());
- assertEquals("size", punctuationLabels.length, suggestedWords.size());
- for (int index = 0; index < suggestedWords.size(); index++) {
- assertEquals("punctuation label at " + index,
- punctuationLabels[index], suggestedWords.getLabel(index));
- assertEquals("punctuation word at " + index,
- punctuationWords[index], suggestedWords.getWord(index));
- }
- }
-
- @Test
- public void testPhonePunctuationSuggestions() {
- if (!isPhone()) {
- return;
- }
- testingStandardPunctuationSuggestions(ENGLISH,
- PUNCTUATION_LABELS_PHONE, PUNCTUATION_WORDS_PHONE_LTR);
- testingStandardPunctuationSuggestions(FRENCH,
- PUNCTUATION_LABELS_PHONE, PUNCTUATION_WORDS_PHONE_LTR);
- testingStandardPunctuationSuggestions(GERMAN,
- PUNCTUATION_LABELS_PHONE, PUNCTUATION_WORDS_PHONE_LTR);
- testingStandardPunctuationSuggestions(ARABIC,
- PUNCTUATION_LABELS_PHONE_ARABIC_PERSIAN, PUNCTUATION_WORDS_PHONE_ARABIC_PERSIAN);
- testingStandardPunctuationSuggestions(PERSIAN,
- PUNCTUATION_LABELS_PHONE_ARABIC_PERSIAN, PUNCTUATION_WORDS_PHONE_ARABIC_PERSIAN);
- testingStandardPunctuationSuggestions(HEBREW,
- PUNCTUATION_LABELS_PHONE, PUNCTUATION_WORDS_PHONE_HEBREW);
- }
-
- @Test
- public void testTabletPunctuationSuggestions() {
- if (!isTablet()) {
- return;
- }
- testingStandardPunctuationSuggestions(ENGLISH,
- PUNCTUATION_LABELS_TABLET, PUNCTUATION_WORDS_TABLET_LTR);
- testingStandardPunctuationSuggestions(FRENCH,
- PUNCTUATION_LABELS_TABLET, PUNCTUATION_WORDS_TABLET_LTR);
- testingStandardPunctuationSuggestions(GERMAN,
- PUNCTUATION_LABELS_TABLET, PUNCTUATION_WORDS_TABLET_LTR);
- testingStandardPunctuationSuggestions(ARABIC,
- PUNCTUATION_LABELS_TABLET_ARABIC_PERSIAN, PUNCTUATION_WORDS_TABLET_ARABIC_PERSIAN);
- testingStandardPunctuationSuggestions(PERSIAN,
- PUNCTUATION_LABELS_TABLET_ARABIC_PERSIAN, PUNCTUATION_WORDS_TABLET_ARABIC_PERSIAN);
- testingStandardPunctuationSuggestions(HEBREW,
- PUNCTUATION_LABELS_TABLET, PUNCTUATION_WORDS_TABLET_HEBREW);
- }
-}