diff options
author | 2013-09-10 06:55:37 -0700 | |
---|---|---|
committer | 2013-09-10 06:55:37 -0700 | |
commit | 3f8f872da8fab8b81c0cb77823435d53570132c1 (patch) | |
tree | 6865f7e68f97d9bebce1b6bb9fa94e3a64809726 | |
parent | 4be963a115291453b9d372ac362f6719513d3306 (diff) | |
parent | d7b76984993ac69c8e3675596e3cdd33e86baec4 (diff) | |
download | latinime-3f8f872da8fab8b81c0cb77823435d53570132c1.tar.gz latinime-3f8f872da8fab8b81c0cb77823435d53570132c1.tar.xz latinime-3f8f872da8fab8b81c0cb77823435d53570132c1.zip |
am d7b76984: Merge "Add tests for BinaryDictionary.addUnigramWord()."
* commit 'd7b76984993ac69c8e3675596e3cdd33e86baec4':
Add tests for BinaryDictionary.addUnigramWord().
-rw-r--r-- | tests/src/com/android/inputmethod/latin/BinaryDictionaryTests.java | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/tests/src/com/android/inputmethod/latin/BinaryDictionaryTests.java b/tests/src/com/android/inputmethod/latin/BinaryDictionaryTests.java index e2e148903..bf4954b34 100644 --- a/tests/src/com/android/inputmethod/latin/BinaryDictionaryTests.java +++ b/tests/src/com/android/inputmethod/latin/BinaryDictionaryTests.java @@ -84,4 +84,42 @@ public class BinaryDictionaryTests extends AndroidTestCase { binaryDictionary.isValidDictionary()); binaryDictionary.close(); } + + public void testAddUnigramWord() { + File dictFile = null; + try { + dictFile = createEmptyDictionaryAndGetFile("TestBinaryDictionary"); + } catch (IOException e) { + fail("IOException while writing an initial dictionary : " + e); + } catch (UnsupportedFormatException e) { + fail("UnsupportedFormatException while writing an initial dictionary : " + e); + } + BinaryDictionary binaryDictionary = new BinaryDictionary(dictFile.getAbsolutePath(), + 0 /* offset */, dictFile.length(), true /* useFullEditDistance */, + Locale.getDefault(), TEST_LOCALE, true /* isUpdatable */); + + final int probability = 100; + binaryDictionary.addUnigramWord("aaa", probability); + // Reallocate and create. + binaryDictionary.addUnigramWord("aab", probability); + // Insert into children. + binaryDictionary.addUnigramWord("aac", probability); + // Make terminal. + binaryDictionary.addUnigramWord("aa", probability); + // Create children. + binaryDictionary.addUnigramWord("aaaa", probability); + // Reallocate and make termianl. + binaryDictionary.addUnigramWord("a", probability); + + final int updatedProbability = 200; + // Update. + binaryDictionary.addUnigramWord("aaa", updatedProbability); + + assertEquals(probability, binaryDictionary.getFrequency("aab")); + assertEquals(probability, binaryDictionary.getFrequency("aac")); + assertEquals(probability, binaryDictionary.getFrequency("aac")); + assertEquals(probability, binaryDictionary.getFrequency("aaaa")); + assertEquals(probability, binaryDictionary.getFrequency("a")); + assertEquals(updatedProbability, binaryDictionary.getFrequency("aaa")); + } } |