aboutsummaryrefslogtreecommitdiffstats
path: root/tests/src
diff options
context:
space:
mode:
Diffstat (limited to 'tests/src')
-rw-r--r--tests/src/com/android/inputmethod/keyboard/layout/Dvorak.java2
-rw-r--r--tests/src/com/android/inputmethod/keyboard/layout/Farsi.java2
-rw-r--r--tests/src/com/android/inputmethod/keyboard/layout/HindiCompact.java19
-rw-r--r--tests/src/com/android/inputmethod/keyboard/layout/LayoutBase.java20
-rw-r--r--tests/src/com/android/inputmethod/keyboard/layout/NepaliRomanized.java2
-rw-r--r--tests/src/com/android/inputmethod/keyboard/layout/expected/AbstractKeyboardBuilder.java15
-rw-r--r--tests/src/com/android/inputmethod/keyboard/layout/expected/AbstractLayoutBase.java1
-rw-r--r--tests/src/com/android/inputmethod/keyboard/layout/expected/ActualKeyboardBuilder.java6
-rw-r--r--tests/src/com/android/inputmethod/keyboard/layout/expected/ExpectedKeyboardBuilder.java11
-rw-r--r--tests/src/com/android/inputmethod/keyboard/layout/tests/LayoutTestsBase.java5
10 files changed, 44 insertions, 39 deletions
diff --git a/tests/src/com/android/inputmethod/keyboard/layout/Dvorak.java b/tests/src/com/android/inputmethod/keyboard/layout/Dvorak.java
index 99cf6e50e..7ba1d7876 100644
--- a/tests/src/com/android/inputmethod/keyboard/layout/Dvorak.java
+++ b/tests/src/com/android/inputmethod/keyboard/layout/Dvorak.java
@@ -51,7 +51,7 @@ public final class Dvorak extends LayoutBase {
@Override
public ExpectedKey[] getKeysLeftToSpacebar(final boolean isPhone) {
- return isPhone ? joinKeys(key("q", SHORTCUT_KEY, SETTINGS_KEY)) : joinKeys(key("/"));
+ return isPhone ? joinKeys(key("q", SETTINGS_KEY)) : joinKeys(key("/"));
}
@Override
diff --git a/tests/src/com/android/inputmethod/keyboard/layout/Farsi.java b/tests/src/com/android/inputmethod/keyboard/layout/Farsi.java
index a0070891a..16d2f8684 100644
--- a/tests/src/com/android/inputmethod/keyboard/layout/Farsi.java
+++ b/tests/src/com/android/inputmethod/keyboard/layout/Farsi.java
@@ -91,7 +91,7 @@ public final class Farsi extends LayoutBase {
@Override
public ExpectedKey[] getSpaceKeys(final boolean isPhone) {
- return joinKeys(SPACE_KEY, key(ZWNJ_KEY, ZWJ_KEY));
+ return joinKeys(LANGUAGE_SWITCH_KEY, SPACE_KEY, key(ZWNJ_KEY, ZWJ_KEY));
}
@Override
diff --git a/tests/src/com/android/inputmethod/keyboard/layout/HindiCompact.java b/tests/src/com/android/inputmethod/keyboard/layout/HindiCompact.java
index afd26e428..cf20149ae 100644
--- a/tests/src/com/android/inputmethod/keyboard/layout/HindiCompact.java
+++ b/tests/src/com/android/inputmethod/keyboard/layout/HindiCompact.java
@@ -16,29 +16,12 @@
package com.android.inputmethod.keyboard.layout;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.SIGN_ANUSVARA;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.SIGN_CANDRABINDU;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.SIGN_NUKTA;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.SIGN_VIRAMA;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.SIGN_VISARGA;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.VOWEL_SIGN_AA;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.VOWEL_SIGN_AI;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.VOWEL_SIGN_AU;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.VOWEL_SIGN_CANDRA_E;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.VOWEL_SIGN_CANDRA_O;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.VOWEL_SIGN_E;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.VOWEL_SIGN_I;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.VOWEL_SIGN_II;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.VOWEL_SIGN_O;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.VOWEL_SIGN_U;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.VOWEL_SIGN_UU;
-import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.VOWEL_SIGN_VOCALIC_R;
+import static com.android.inputmethod.keyboard.layout.DevanagariLetterConstants.*;
import com.android.inputmethod.keyboard.layout.Hindi.HindiCustomizer;
import com.android.inputmethod.keyboard.layout.Hindi.HindiSymbols;
import com.android.inputmethod.keyboard.layout.expected.ExpectedKey;
import com.android.inputmethod.keyboard.layout.expected.ExpectedKeyboardBuilder;
-import com.android.inputmethod.latin.Constants;
import java.util.Locale;
diff --git a/tests/src/com/android/inputmethod/keyboard/layout/LayoutBase.java b/tests/src/com/android/inputmethod/keyboard/layout/LayoutBase.java
index 4123a22ef..e4e95548f 100644
--- a/tests/src/com/android/inputmethod/keyboard/layout/LayoutBase.java
+++ b/tests/src/com/android/inputmethod/keyboard/layout/LayoutBase.java
@@ -29,7 +29,6 @@ import java.util.Locale;
* The base class of keyboard layout.
*/
public abstract class LayoutBase extends AbstractLayoutBase {
-
/**
* This class is used to customize common keyboard layout to language specific layout.
*/
@@ -152,7 +151,7 @@ public abstract class LayoutBase extends AbstractLayoutBase {
* keyboard.
*/
public ExpectedKey[] getSpaceKeys(final boolean isPhone) {
- return joinKeys(SPACE_KEY);
+ return joinKeys(LANGUAGE_SWITCH_KEY, SPACE_KEY);
}
/**
@@ -161,7 +160,8 @@ public abstract class LayoutBase extends AbstractLayoutBase {
* @return the array of {@link ExpectedKey} that should be placed at left of the spacebar.
*/
public ExpectedKey[] getKeysLeftToSpacebar(final boolean isPhone) {
- return isPhone ? joinKeys(key(",", SETTINGS_KEY)) : joinKeys("/");
+ // U+002C: "," COMMA
+ return isPhone ? joinKeys(key("\u002C", SETTINGS_KEY)) : joinKeys("/");
}
/**
@@ -306,6 +306,10 @@ public abstract class LayoutBase extends AbstractLayoutBase {
/**
* Get common alphabet layout. This layout doesn't contain any special keys.
+ *
+ * A keyboard layout is an array of rows, and a row consists of an array of
+ * {@link ExpectedKey}s. Each row may have different number of {@link ExpectedKey}s.
+ *
* @param isPhone true if requesting phone's layout.
* @return the common alphabet keyboard layout.
*/
@@ -313,6 +317,10 @@ public abstract class LayoutBase extends AbstractLayoutBase {
/**
* Get common alphabet shifted layout. This layout doesn't contain any special keys.
+ *
+ * A keyboard layout is an array of rows, and a row consists of an array of
+ * {@link ExpectedKey}s. Each row may have different number of {@link ExpectedKey}s.
+ *
* @param isPhone true if requesting phone's layout.
* @param elementId the element id of the requesting shifted mode.
* @return the common alphabet shifted keyboard layout.
@@ -327,9 +335,13 @@ public abstract class LayoutBase extends AbstractLayoutBase {
/**
* Get the complete expected keyboard layout.
+ *
+ * A keyboard layout is an array of rows, and a row consists of an array of
+ * {@link ExpectedKey}s. Each row may have different number of {@link ExpectedKey}s.
+ *
* @param isPhone true if requesting phone's layout.
* @param elementId the element id of the requesting keyboard mode.
- * @return
+ * @return the keyboard layout of the <code>elementId</code>.
*/
public ExpectedKey[][] getLayout(final boolean isPhone, final int elementId) {
if (elementId == KeyboardId.ELEMENT_SYMBOLS) {
diff --git a/tests/src/com/android/inputmethod/keyboard/layout/NepaliRomanized.java b/tests/src/com/android/inputmethod/keyboard/layout/NepaliRomanized.java
index 7048dbb73..7933d078c 100644
--- a/tests/src/com/android/inputmethod/keyboard/layout/NepaliRomanized.java
+++ b/tests/src/com/android/inputmethod/keyboard/layout/NepaliRomanized.java
@@ -47,7 +47,7 @@ public final class NepaliRomanized extends LayoutBase {
@Override
public ExpectedKey[] getSpaceKeys(final boolean isPhone) {
- return joinKeys(SPACE_KEY, key(ZWNJ_KEY, ZWJ_KEY));
+ return joinKeys(LANGUAGE_SWITCH_KEY, SPACE_KEY, key(ZWNJ_KEY, ZWJ_KEY));
}
// U+0930/U+0941/U+002E "रु." NEPALESE RUPEE SIGN
diff --git a/tests/src/com/android/inputmethod/keyboard/layout/expected/AbstractKeyboardBuilder.java b/tests/src/com/android/inputmethod/keyboard/layout/expected/AbstractKeyboardBuilder.java
index 3365b92ec..6e721047c 100644
--- a/tests/src/com/android/inputmethod/keyboard/layout/expected/AbstractKeyboardBuilder.java
+++ b/tests/src/com/android/inputmethod/keyboard/layout/expected/AbstractKeyboardBuilder.java
@@ -21,9 +21,9 @@ import java.util.Arrays;
/**
* This class builds a keyboard that is a two dimensional array of elements <code>E</code>.
*
- * A keyboard consists of array of rows, and a row consists of array of elements. Each row may have
- * different number of elements. A element of a keyboard can be specified by a row number and a
- * column number, both numbers starts from 1.
+ * A keyboard consists of an array of rows, and a row consists of an array of elements. Each row
+ * may have different number of elements. A element of a keyboard can be specified by a row number
+ * and a column number, both numbers starts from 1.
*
* @param <E> the type of a keyboard element. A keyboard element must be an immutable object.
*/
@@ -39,8 +39,7 @@ abstract class AbstractKeyboardBuilder<E> {
abstract E[][] newArrayOfArray(final int size);
/**
- * Construct a builder filled with the default element.
- * @param dimensions the integer array of each row's size.
+ * Construct an empty builder.
*/
AbstractKeyboardBuilder() {
mRows = newArrayOfArray(0);
@@ -80,7 +79,7 @@ abstract class AbstractKeyboardBuilder<E> {
* Get the current contents of the specified row.
* @param row the row number to get the contents.
* @return the array of elements at row number <code>row</code>.
- * @throws {@link RuntimeException} if <code>row</code> is illegal.
+ * @throws RuntimeException if <code>row</code> is illegal.
*/
E[] getRowAt(final int row) {
final int rowIndex = row - 1;
@@ -94,7 +93,7 @@ abstract class AbstractKeyboardBuilder<E> {
* Set an array of elements to the specified row.
* @param row the row number to set <code>elements</code>.
* @param elements the array of elements to set at row number <code>row</code>.
- * @throws {@link RuntimeException} if <code>row</code> is illegal.
+ * @throws RuntimeException if <code>row</code> is illegal.
*/
void setRowAt(final int row, final E[] elements) {
final int rowIndex = row - 1;
@@ -114,7 +113,7 @@ abstract class AbstractKeyboardBuilder<E> {
* @param element the element to set or insert at <code>row,column</code>.
* @param insert if true, the <code>element</code> is inserted at <code>row,column</code>.
* Otherwise the <code>element</code> replace the element at <code>row,column</code>.
- * @throws {@link RuntimeException} if <code>row</code> or <code>column</code> is illegal.
+ * @throws RuntimeException if <code>row</code> or <code>column</code> is illegal.
*/
void setElementAt(final int row, final int column, final E element, final boolean insert) {
final E[] elements = getRowAt(row);
diff --git a/tests/src/com/android/inputmethod/keyboard/layout/expected/AbstractLayoutBase.java b/tests/src/com/android/inputmethod/keyboard/layout/expected/AbstractLayoutBase.java
index 25be2a68b..9e0039d84 100644
--- a/tests/src/com/android/inputmethod/keyboard/layout/expected/AbstractLayoutBase.java
+++ b/tests/src/com/android/inputmethod/keyboard/layout/expected/AbstractLayoutBase.java
@@ -19,7 +19,6 @@ package com.android.inputmethod.keyboard.layout.expected;
import com.android.inputmethod.keyboard.internal.KeyboardIconsSet;
import com.android.inputmethod.keyboard.layout.expected.ExpectedKey.ExpectedAdditionalMoreKey;
import com.android.inputmethod.latin.Constants;
-import com.android.inputmethod.latin.utils.StringUtils;
/**
* Base class to create an expected keyboard for unit test.
diff --git a/tests/src/com/android/inputmethod/keyboard/layout/expected/ActualKeyboardBuilder.java b/tests/src/com/android/inputmethod/keyboard/layout/expected/ActualKeyboardBuilder.java
index 26d2e2ad2..d0fea58b0 100644
--- a/tests/src/com/android/inputmethod/keyboard/layout/expected/ActualKeyboardBuilder.java
+++ b/tests/src/com/android/inputmethod/keyboard/layout/expected/ActualKeyboardBuilder.java
@@ -28,6 +28,9 @@ import java.util.List;
/**
* This class builds an actual keyboard for unit test.
+ *
+ * An actual keyboard is an array of rows, and a row consists of an array of {@link Key}s.
+ * Each row may have different number of {@link Key}s.
*/
public final class ActualKeyboardBuilder extends AbstractKeyboardBuilder<Key> {
private static ArrayList<Key> filterOutSpacer(final List<Key> keys) {
@@ -43,7 +46,8 @@ public final class ActualKeyboardBuilder extends AbstractKeyboardBuilder<Key> {
/**
* Create the keyboard that consists of the array of rows of the actual keyboard's keys.
- * @param sortedKeys the sorted list of keys of the actual keyboard.
+ * @param sortedKeys keys list of the actual keyboard that is sorted from top-left to
+ * bottom-right.
* @return the actual keyboard grouped with rows.
*/
public static Key[][] buildKeyboard(final List<Key> sortedKeys) {
diff --git a/tests/src/com/android/inputmethod/keyboard/layout/expected/ExpectedKeyboardBuilder.java b/tests/src/com/android/inputmethod/keyboard/layout/expected/ExpectedKeyboardBuilder.java
index f068ad11d..e06d34d67 100644
--- a/tests/src/com/android/inputmethod/keyboard/layout/expected/ExpectedKeyboardBuilder.java
+++ b/tests/src/com/android/inputmethod/keyboard/layout/expected/ExpectedKeyboardBuilder.java
@@ -24,6 +24,11 @@ import java.util.Locale;
/**
* This class builds an expected keyboard for unit test.
+ *
+ * An expected keyboard is an array of rows, and a row consists of an array of {@link ExpectedKey}s.
+ * Each row may have different number of {@link ExpectedKey}s. While building an expected keyboard,
+ * an {@link ExpectedKey} can be specified by a row number and a column number, both numbers starts
+ * from 1.
*/
public final class ExpectedKeyboardBuilder extends AbstractKeyboardBuilder<ExpectedKey> {
public ExpectedKeyboardBuilder() {
@@ -212,7 +217,7 @@ public final class ExpectedKeyboardBuilder extends AbstractKeyboardBuilder<Expec
* @param keys the array of keys to insert at <code>row,column</code>. Each key can be
* {@link ExpectedKey}, {@link ExpectedKey} array, and {@link String}.
* @return this builder.
- * @throws {@link RuntimeException} if <code>row</code> or <code>column</code> is illegal.
+ * @throws RuntimeException if <code>row</code> or <code>column</code> is illegal.
*/
public ExpectedKeyboardBuilder insertKeysAtRow(final int row, final int column,
final Object ... keys) {
@@ -229,7 +234,7 @@ public final class ExpectedKeyboardBuilder extends AbstractKeyboardBuilder<Expec
* @param keys the array of keys to add on the left most of the row. Each key can be
* {@link ExpectedKey}, {@link ExpectedKey} array, and {@link String}.
* @return this builder.
- * @throws {@link RuntimeException} if <code>row</code> is illegal.
+ * @throws RuntimeException if <code>row</code> is illegal.
*/
public ExpectedKeyboardBuilder addKeysOnTheLeftOfRow(final int row,
final Object ... keys) {
@@ -247,7 +252,7 @@ public final class ExpectedKeyboardBuilder extends AbstractKeyboardBuilder<Expec
* @param keys the array of keys to add on the right most of the row. Each key can be
* {@link ExpectedKey}, {@link ExpectedKey} array, and {@link String}.
* @return this builder.
- * @throws {@link RuntimeException} if <code>row</code> is illegal.
+ * @throws RuntimeException if <code>row</code> is illegal.
*/
public ExpectedKeyboardBuilder addKeysOnTheRightOfRow(final int row,
final Object ... keys) {
diff --git a/tests/src/com/android/inputmethod/keyboard/layout/tests/LayoutTestsBase.java b/tests/src/com/android/inputmethod/keyboard/layout/tests/LayoutTestsBase.java
index 4002c49c2..d4e8fb647 100644
--- a/tests/src/com/android/inputmethod/keyboard/layout/tests/LayoutTestsBase.java
+++ b/tests/src/com/android/inputmethod/keyboard/layout/tests/LayoutTestsBase.java
@@ -51,7 +51,10 @@ abstract class LayoutTestsBase extends KeyboardLayoutSetTestsBase {
mSubtype = getSubtype(mLayout.getLocale(), mLayout.getName());
mLogTag = SubtypeLocaleUtils.getSubtypeNameForLogging(mSubtype) + "/"
+ (isPhone() ? "phone" : "tablet");
- mKeyboardLayoutSet = createKeyboardLayoutSet(mSubtype, null /* editorInfo */);
+ // TODO: Test with language switch key enabled and disabled.
+ mKeyboardLayoutSet = createKeyboardLayoutSet(mSubtype, null /* editorInfo */,
+ true /* isShortcutImeEnabled */, true /* showsVoiceInputKey */,
+ true /* isLanguageSwitchKeyEnabled */);
}
// Those helper methods have a lower case name to be readable when defining expected keyboard