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

Commit e0d06fa7 authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka Committed by Android (Google) Code Review
Browse files

Merge "Use InputMethodInfo.getSubtypeAt() to list all subtype in test"

parents 1bdc2ca1 52d50f9b
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -16,8 +16,6 @@

package com.android.inputmethod.latin;

import com.android.inputmethod.keyboard.Keyboard;

public class InputLogicFrenchTests extends InputTestsBase {

    public void testAutoCorrectForFrench() {
+8 −5
Original line number Diff line number Diff line
@@ -138,17 +138,20 @@ public class InputTestsBase extends ServiceTestCase<LatinIME> {
        final InputMethodManager imm = (InputMethodManager)mLatinIME.getSystemService(
                Context.INPUT_METHOD_SERVICE);
        final String packageName = mLatinIME.getPackageName();
        for (final InputMethodInfo imi : imm.getEnabledInputMethodList()) {
        // The IMEs and subtypes don't need to be enabled to run this test because IMF isn't
        // involved here.
        for (final InputMethodInfo imi : imm.getInputMethodList()) {
            if (imi.getPackageName().equals(packageName)) {
                for (final InputMethodSubtype ims :
                    imm.getEnabledInputMethodSubtypeList(imi, true)) {
                final int subtypeCount = imi.getSubtypeCount();
                for (int i = 0; i < subtypeCount; i++) {
                    final InputMethodSubtype ims = imi.getSubtypeAt(i);
                    final String locale = ims.getLocale();
                    mSubtypeMap.put(locale, ims);
                }
                return;
            }
        }
        fail("LatinIME is disabled");
        fail("LatinIME is not found");
    }

    // We need to run the messages added to the handler from LatinIME. The only way to do
@@ -176,7 +179,7 @@ public class InputTestsBase extends ServiceTestCase<LatinIME> {
        // The only way to get out of Looper#loop() is to call #quit() on it (or on its queue).
        // Once #quit() is called remaining messages are not processed, which is why we post
        // a message that calls it instead of calling it directly.
        looper.loop();
        Looper.loop();

        // Once #quit() has been called, the message queue has an "mQuiting" field that prevents
        // any subsequent post in this queue. However the queue itself is still fully functional!