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 mSuggestionsContainer;
private SuggestionsView mSuggestionsView;
private Suggest mSuggest;
/* package for tests */ Suggest mSuggest;
private CompletionInfo[] mApplicationSpecifiedCompletions;
private InputMethodManagerCompatWrapper mImm;

View file

@ -111,6 +111,20 @@ public class InputLogicTests extends ServiceTestCase<LatinIME> {
mLatinIME.onStartInputView(ei, false);
mLatinIME.onCreateInputMethodInterface().startInput(ic, ei);
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.