Merge "Fix a race condition that makes tests unstable"

This commit is contained in:
Jean Chalard 2012-02-07 02:28:12 -08:00 committed by Android (Google) Code Review
commit cfec7e72fd
2 changed files with 15 additions and 1 deletions

View file

@ -186,7 +186,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
private View mKeyPreviewBackingView; private View mKeyPreviewBackingView;
private View mSuggestionsContainer; private View mSuggestionsContainer;
private SuggestionsView mSuggestionsView; private SuggestionsView mSuggestionsView;
private Suggest mSuggest; /* package for tests */ Suggest mSuggest;
private CompletionInfo[] mApplicationSpecifiedCompletions; private CompletionInfo[] mApplicationSpecifiedCompletions;
private InputMethodManagerCompatWrapper mImm; private InputMethodManagerCompatWrapper mImm;

View file

@ -111,6 +111,20 @@ public class InputLogicTests extends ServiceTestCase<LatinIME> {
mLatinIME.onStartInputView(ei, false); mLatinIME.onStartInputView(ei, false);
mLatinIME.onCreateInputMethodInterface().startInput(ic, ei); mLatinIME.onCreateInputMethodInterface().startInput(ic, ei);
mInputConnection = ic; mInputConnection = ic;
// Wait for the main dictionary to be loaded (we need it for auto-correction tests)
int remainingAttempts = 10;
while (remainingAttempts > 0 && !mLatinIME.mSuggest.hasMainDictionary()) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// Don't do much
} finally {
--remainingAttempts;
}
}
if (!mLatinIME.mSuggest.hasMainDictionary()) {
throw new RuntimeException("Can't initialize the main dictionary");
}
} }
// type(int) and type(String): helper methods to send a code point resp. a string to LatinIME. // type(int) and type(String): helper methods to send a code point resp. a string to LatinIME.