From 9184d8b2352e11a25026ea9eed7f404836a7d476 Mon Sep 17 00:00:00 2001
From: Jean Chalard <jchalard@google.com>
Date: Thu, 26 Jan 2012 09:59:28 +0900
Subject: [PATCH] Add a test for moving cursor then backspace

This is a test for the case in
Bug: 5851148

Change-Id: I58ee459d85f463b445a28137bdc6c40bc3067ff5
---
 .../android/inputmethod/latin/InputLogicTests.java  | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/tests/src/com/android/inputmethod/latin/InputLogicTests.java b/tests/src/com/android/inputmethod/latin/InputLogicTests.java
index 8b4f64aa1b..0e8c901306 100644
--- a/tests/src/com/android/inputmethod/latin/InputLogicTests.java
+++ b/tests/src/com/android/inputmethod/latin/InputLogicTests.java
@@ -204,4 +204,17 @@ public class InputLogicTests extends ServiceTestCase<LatinIME> {
         assertEquals("auto correct then move curor to start of line then backspace",
                 EXPECTED_RESULT, mTextView.getText().toString());
     }
+
+    public void testAutoCorrectThenMoveCursorThenBackspace() {
+        final String STRING_TO_TYPE = "and tgis ";
+        final String EXPECTED_RESULT = "andthis ";
+        final int NEW_CURSOR_POSITION = STRING_TO_TYPE.indexOf('t');
+        type(STRING_TO_TYPE);
+        mLatinIME.onUpdateSelection(0, 0, STRING_TO_TYPE.length(), STRING_TO_TYPE.length(), -1, -1);
+        mInputConnection.setSelection(NEW_CURSOR_POSITION, NEW_CURSOR_POSITION);
+        mLatinIME.onUpdateSelection(0, 0, NEW_CURSOR_POSITION, NEW_CURSOR_POSITION, -1, -1);
+        type(Keyboard.CODE_DELETE);
+        assertEquals("auto correct then move curor then backspace",
+                EXPECTED_RESULT, mTextView.getText().toString());
+    }
 }
-- 
GitLab