Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 450c8e89 authored by Jean Chalard's avatar Jean Chalard Committed by Android (Google) Code Review
Browse files

Merge "Add some gesture-move tests"

parents 395009c0 d17e1d31
Loading
Loading
Loading
Loading
+32 −2
Original line number Diff line number Diff line
@@ -674,10 +674,15 @@ public class InputLogicTests extends InputTestsBase {
                mEditText.getText().toString());
    }

    private void typeWordAndPutCursorInside(final String word, final int startPos) {
    private void typeOrGestureWordAndPutCursorInside(final boolean gesture, final String word,
            final int startPos) {
        final int END_OF_WORD = startPos + word.length();
        final int NEW_CURSOR_POSITION = startPos + word.length() / 2;
        if (gesture) {
            gesture(word);
        } else {
            type(word);
        }
        sendUpdateForCursorMoveTo(END_OF_WORD);
        runMessages();
        sendUpdateForCursorMoveTo(NEW_CURSOR_POSITION);
@@ -687,6 +692,14 @@ public class InputLogicTests extends InputTestsBase {
                startPos, END_OF_WORD);
    }

    private void typeWordAndPutCursorInside(final String word, final int startPos) {
        typeOrGestureWordAndPutCursorInside(false /* gesture */, word, startPos);
    }

    private void gestureWordAndPutCursorInside(final String word, final int startPos) {
        typeOrGestureWordAndPutCursorInside(true /* gesture */, word, startPos);
    }

    private void ensureComposingSpanPos(final String message, final int from, final int to) {
        assertEquals(message, from, BaseInputConnection.getComposingSpanStart(mEditText.getText()));
        assertEquals(message, to, BaseInputConnection.getComposingSpanEnd(mEditText.getText()));
@@ -703,6 +716,23 @@ public class InputLogicTests extends InputTestsBase {
        int cursorPos = sendUpdateForCursorMoveToEndOfLine();
        runMessages();
        type(" ");
        assertEquals("mbo", "some thing ", mEditText.getText().toString());
        typeWordAndPutCursorInside(WORD_TO_TYPE, cursorPos + 1 /* startPos */);
        type(Constants.CODE_DELETE);
        ensureComposingSpanPos("space while in the middle of a word cancels composition", -1, -1);
    }

    public void testTypeWithinGestureComposing() {
        final String WORD_TO_TYPE = "something";
        final String EXPECTED_RESULT = "some thing";
        gestureWordAndPutCursorInside(WORD_TO_TYPE, 0 /* startPos */);
        type(" ");
        ensureComposingSpanPos("space while in the middle of a word cancels composition", -1, -1);
        assertEquals("space in the middle of a composing word", EXPECTED_RESULT,
                mEditText.getText().toString());
        int cursorPos = sendUpdateForCursorMoveToEndOfLine();
        runMessages();
        type(" ");
        typeWordAndPutCursorInside(WORD_TO_TYPE, cursorPos + 1 /* startPos */);
        type(Constants.CODE_DELETE);
        ensureComposingSpanPos("space while in the middle of a word cancels composition", -1, -1);