aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorsatok <satok@google.com>2010-06-01 19:58:36 +0900
committersatok <satok@google.com>2010-06-02 12:59:35 +0900
commit928ebfeaf867341fd4a0ee03b0cf55e006688f1a (patch)
treeb00b6639ed250fff0d3407ae5bb096043aec9c50 /tests
parentac2b332e94acbed25739adb5e74c0ba5e2553ff3 (diff)
downloadlatinime-928ebfeaf867341fd4a0ee03b0cf55e006688f1a.tar.gz
latinime-928ebfeaf867341fd4a0ee03b0cf55e006688f1a.tar.xz
latinime-928ebfeaf867341fd4a0ee03b0cf55e006688f1a.zip
Add aggressive cancellation for auto suggestion
- Add ring buffer - Count separator for auto suggestion - Add a test for ring buffer Change-Id: Id4a0aa00ceb1b055b8fc96c45e100d318cceb2ab
Diffstat (limited to 'tests')
-rw-r--r--tests/Android.mk2
-rw-r--r--tests/AndroidManifest.xml2
-rw-r--r--tests/src/com/android/inputmethod/latin/ImeLoggerTests.java59
-rw-r--r--tests/src/com/android/inputmethod/latin/tests/SuggestTests.java9
4 files changed, 67 insertions, 5 deletions
diff --git a/tests/Android.mk b/tests/Android.mk
index e72587ddd..60e82d5c2 100644
--- a/tests/Android.mk
+++ b/tests/Android.mk
@@ -10,7 +10,7 @@ LOCAL_JAVA_LIBRARIES := android.test.runner
# Include all test java files.
LOCAL_SRC_FILES := $(call all-java-files-under, src)
-LOCAL_PACKAGE_NAME := LatinIMETests
+LOCAL_PACKAGE_NAME := LatinIME2Tests
LOCAL_INSTRUMENTATION_FOR := LatinIme2Google
diff --git a/tests/AndroidManifest.xml b/tests/AndroidManifest.xml
index 210e81489..66cecee8b 100644
--- a/tests/AndroidManifest.xml
+++ b/tests/AndroidManifest.xml
@@ -27,7 +27,7 @@
</application>
<instrumentation android:name="android.test.InstrumentationTestRunner"
- android:targetPackage="com.android.inputmethod.latin"
+ android:targetPackage="com.google.android.inputmethod.latin"
android:label="LatinIME tests">
</instrumentation>
</manifest>
diff --git a/tests/src/com/android/inputmethod/latin/ImeLoggerTests.java b/tests/src/com/android/inputmethod/latin/ImeLoggerTests.java
new file mode 100644
index 000000000..234559bb7
--- /dev/null
+++ b/tests/src/com/android/inputmethod/latin/ImeLoggerTests.java
@@ -0,0 +1,59 @@
+package com.android.inputmethod.latin;
+
+import android.test.ServiceTestCase;
+
+public class ImeLoggerTests extends ServiceTestCase<LatinIME> {
+
+ private static final String WORD_SEPARATORS
+ = ".\u0009\u0020,;:!?\n()[]*&@{}<>;_+=|\\u0022";
+
+ public ImeLoggerTests() {
+ super(LatinIME.class);
+ }
+ static LatinImeLogger sLogger;
+ @Override
+ protected void setUp() {
+ try {
+ super.setUp();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ setupService();
+ // startService(null); // can't be started because VoiceInput can't be found.
+ final LatinIME context = getService();
+ context.mWordSeparators = WORD_SEPARATORS;
+ LatinImeLogger.init(context);
+ sLogger = LatinImeLogger.sLatinImeLogger;
+ }
+ /*********************** Tests *********************/
+ public void testRingBuffer() {
+ for (int i = 0; i < sLogger.mRingCharBuffer.BUFSIZE * 2; ++i) {
+ LatinImeLogger.logOnDelete();
+ }
+ assertEquals("", sLogger.mRingCharBuffer.getLastString());
+ LatinImeLogger.logOnInputChar('t');
+ LatinImeLogger.logOnInputChar('g');
+ LatinImeLogger.logOnInputChar('i');
+ LatinImeLogger.logOnInputChar('s');
+ LatinImeLogger.logOnInputChar(' ');
+ LatinImeLogger.logOnAutoSuggestion("tgis", "this");
+ LatinImeLogger.logOnInputChar(' ');
+ LatinImeLogger.logOnDelete();
+ assertEquals("", sLogger.mRingCharBuffer.getLastString());
+ LatinImeLogger.logOnDelete();
+ assertEquals("tgis", sLogger.mRingCharBuffer.getLastString());
+ assertEquals("tgis", LatinImeLogger.sLastAutoSuggestBefore);
+ LatinImeLogger.logOnAutoSuggestionCanceled();
+ assertEquals("", LatinImeLogger.sLastAutoSuggestBefore);
+ LatinImeLogger.logOnDelete();
+ assertEquals("tgi", sLogger.mRingCharBuffer.getLastString());
+ for (int i = 0; i < sLogger.mRingCharBuffer.BUFSIZE * 2; ++i) {
+ LatinImeLogger.logOnDelete();
+ }
+ assertEquals("", sLogger.mRingCharBuffer.getLastString());
+ for (int i = 0; i < sLogger.mRingCharBuffer.BUFSIZE * 2; ++i) {
+ LatinImeLogger.logOnInputChar('a');
+ }
+ assertEquals(sLogger.mRingCharBuffer.BUFSIZE, sLogger.mRingCharBuffer.length);
+ }
+}
diff --git a/tests/src/com/android/inputmethod/latin/tests/SuggestTests.java b/tests/src/com/android/inputmethod/latin/tests/SuggestTests.java
index 9401d926a..0d3babfbc 100644
--- a/tests/src/com/android/inputmethod/latin/tests/SuggestTests.java
+++ b/tests/src/com/android/inputmethod/latin/tests/SuggestTests.java
@@ -241,8 +241,11 @@ public class SuggestTests extends AndroidTestCase {
* Are accented forms of words suggested as corrections?
*/
public void testAccents() {
- assertTrue(isDefaultCorrection("nino", "ni\u00F1o")); // ni–o
- assertTrue(isDefaultCorrection("nimo", "ni\u00F1o")); // ni–o
- assertTrue(isDefaultCorrection("maria", "Mar\u00EDa")); // Mar’a
+ // ni<LATIN SMALL LETTER N WITH TILDE>o
+ assertTrue(isDefaultCorrection("nino", "ni\u00F1o"));
+ // ni<LATIN SMALL LETTER N WITH TILDE>o
+ assertTrue(isDefaultCorrection("nimo", "ni\u00F1o"));
+ // Mar<LATIN SMALL LETTER I WITH ACUTE>a
+ assertTrue(isDefaultCorrection("maria", "Mar\u00EDa"));
}
}