From e5a35711b854aedeeea2f45105b941b9deee49bc Mon Sep 17 00:00:00 2001 From: Satoshi Kataoka Date: Fri, 6 Sep 2013 22:12:52 +0900 Subject: Check contents in user history dictionary tests Bug: 10667710 Change-Id: I45ebb08cb4ef9a9f6d2da31e2c50e740f88209c2 --- .../latin/ExpandableBinaryDictionary.java | 34 +++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) (limited to 'java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java') diff --git a/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java b/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java index e62a35af3..11d6cb247 100644 --- a/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java +++ b/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java @@ -24,6 +24,7 @@ import com.android.inputmethod.annotations.UsedForTesting; import com.android.inputmethod.keyboard.ProximityInfo; import com.android.inputmethod.latin.SuggestedWords.SuggestedWordInfo; import com.android.inputmethod.latin.personalization.DynamicPersonalizationDictionaryWriter; +import com.android.inputmethod.latin.personalization.DynamicPredictionDictionaryBase; import com.android.inputmethod.latin.utils.CollectionUtils; import java.io.File; @@ -72,7 +73,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { private BinaryDictionary mBinaryDictionary; /** The in-memory dictionary used to generate the binary dictionary. */ - private AbstractDictionaryWriter mDictionaryWriter; + protected AbstractDictionaryWriter mDictionaryWriter; /** * The name of this dictionary, used as the filename for storing the binary dictionary. Multiple @@ -624,4 +625,35 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { mLocalDictionaryController.writeLock().unlock(); } } + + // TODO: Implement native binary methods once the dynamic dictionary implementation is done. + @UsedForTesting + public boolean isInDictionaryForTests(final String word) { + mLocalDictionaryController.writeLock().lock(); + try { + if (mDictType == Dictionary.TYPE_USER_HISTORY) { + return ((DynamicPersonalizationDictionaryWriter) mDictionaryWriter) + .isInDictionaryForTests(word); + } + } finally { + mLocalDictionaryController.writeLock().unlock(); + } + return false; + } + + // TODO: Remove and use addToPersonalizationPredictionDictionary instead!!!!!!!!!!!!!!!! + @UsedForTesting + public void forceAddWordForTest( + final String word0, final String word1, final boolean isValid) { + mLocalDictionaryController.writeLock().lock(); + try { + mDictionaryWriter.addUnigramWord(word1, null /* the "shortcut" parameter is null */, + DynamicPredictionDictionaryBase.FREQUENCY_FOR_TYPED, false /* isNotAWord */); + mDictionaryWriter.addBigramWords(word0, word1, + DynamicPredictionDictionaryBase.FREQUENCY_FOR_TYPED, isValid, + 0 /* lastTouchedTime */); + } finally { + mLocalDictionaryController.writeLock().unlock(); + } + } } -- cgit v1.2.3-83-g751a