aboutsummaryrefslogtreecommitdiffstats
path: root/tests/src
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2014-02-07 09:26:04 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-02-07 09:26:04 +0000
commita9e1db6636c69a9bf3c1a7bd6753781dd68bff0f (patch)
tree3f7a517376b5dafc1b12135b749af0012143e7dc /tests/src
parent276b1a2ebc6d5ea3fa36fa9271cdc6310db34021 (diff)
parent4a64ad9538ed3cfb1c60e2c6ede7368c6d691973 (diff)
downloadlatinime-a9e1db6636c69a9bf3c1a7bd6753781dd68bff0f.tar.gz
latinime-a9e1db6636c69a9bf3c1a7bd6753781dd68bff0f.tar.xz
latinime-a9e1db6636c69a9bf3c1a7bd6753781dd68bff0f.zip
Merge "Decimal number is treated as outputText"
Diffstat (limited to 'tests/src')
-rw-r--r--tests/src/com/android/inputmethod/keyboard/internal/KeySpecParserTestsBase.java26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/src/com/android/inputmethod/keyboard/internal/KeySpecParserTestsBase.java b/tests/src/com/android/inputmethod/keyboard/internal/KeySpecParserTestsBase.java
index f0ab7f599..edeb6a6c2 100644
--- a/tests/src/com/android/inputmethod/keyboard/internal/KeySpecParserTestsBase.java
+++ b/tests/src/com/android/inputmethod/keyboard/internal/KeySpecParserTestsBase.java
@@ -218,6 +218,32 @@ abstract class KeySpecParserTestsBase extends AndroidTestCase {
"a|c", null, ICON_UNDEFINED, mCodeSettings);
}
+ public void testCodes() {
+ assertParser("Hexadecimal code", "a|0x1000",
+ "a", null, ICON_UNDEFINED, 0x1000);
+ assertParserError("Illegal hexadecimal code", "a|0x100X",
+ "a", null, ICON_UNDEFINED, CODE_UNSPECIFIED);
+ assertParser("Escaped hexadecimal code 1", "a|\\0x1000",
+ "a", "0x1000", ICON_UNDEFINED, CODE_OUTPUT_TEXT);
+ assertParser("Escaped hexadecimal code 2", "a|0\\x1000",
+ "a", "0x1000", ICON_UNDEFINED, CODE_OUTPUT_TEXT);
+ assertParser("Escaped hexadecimal code 2", "a|0\\x1000",
+ "a", "0x1000", ICON_UNDEFINED, CODE_OUTPUT_TEXT);
+ assertParserError("Illegally escaped hexadecimal code", "a|0x1\\000",
+ "a", null, ICON_UNDEFINED, CODE_UNSPECIFIED);
+ // This is a workaround to have a key that has a supplementary code point. We can't put a
+ // string in resource as a XML entity of a supplementary code point or a surrogate pair.
+ // TODO: Should pass this test.
+// assertParser("Hexadecimal supplementary code", String.format("a|0x%06x", SURROGATE_CODE2),
+// SURROGATE_PAIR2, null, ICON_UNDEFINED, SURROGATE_CODE2);
+ assertParser("Zero is treated as output text", "a|0",
+ "a", null, ICON_UNDEFINED, '0');
+ assertParser("Digit is treated as output text", "a|3",
+ "a", null, ICON_UNDEFINED, '3');
+ assertParser("Decimal number is treated as an output text", "a|2014",
+ "a", "2014", ICON_UNDEFINED, CODE_OUTPUT_TEXT);
+ }
+
public void testIcons() {
assertParser("Icon with single letter", ICON_SETTINGS + "|a",
null, null, mSettingsIconId, 'a');