diff options
Diffstat (limited to 'tests/src')
4 files changed, 59 insertions, 42 deletions
diff --git a/tests/src/com/android/inputmethod/latin/makedict/BinaryDictDecoderEncoderTests.java b/tests/src/com/android/inputmethod/latin/makedict/BinaryDictDecoderEncoderTests.java index e98790b65..be468c19b 100644 --- a/tests/src/com/android/inputmethod/latin/makedict/BinaryDictDecoderEncoderTests.java +++ b/tests/src/com/android/inputmethod/latin/makedict/BinaryDictDecoderEncoderTests.java @@ -71,6 +71,8 @@ public class BinaryDictDecoderEncoderTests extends AndroidTestCase { private static final FormatSpec.FormatOptions VERSION3_WITH_DYNAMIC_UPDATE = new FormatSpec.FormatOptions(3, true /* supportsDynamicUpdate */); + private static final String TEST_DICT_FILE_EXTENSION = ".testDict"; + public BinaryDictDecoderEncoderTests() { this(System.currentTimeMillis(), DEFAULT_MAX_UNIGRAMS); } @@ -293,7 +295,8 @@ public class BinaryDictDecoderEncoderTests extends AndroidTestCase { final String message) { File file = null; try { - file = File.createTempFile("runReadAndWrite", ".dict", getContext().getCacheDir()); + file = File.createTempFile("runReadAndWrite", TEST_DICT_FILE_EXTENSION, + getContext().getCacheDir()); } catch (IOException e) { Log.e(TAG, "IOException", e); } @@ -435,7 +438,8 @@ public class BinaryDictDecoderEncoderTests extends AndroidTestCase { final FormatSpec.FormatOptions formatOptions, final String message) { File file = null; try { - file = File.createTempFile("runReadUnigrams", ".dict", getContext().getCacheDir()); + file = File.createTempFile("runReadUnigrams", TEST_DICT_FILE_EXTENSION, + getContext().getCacheDir()); } catch (IOException e) { Log.e(TAG, "IOException", e); } @@ -493,21 +497,21 @@ public class BinaryDictDecoderEncoderTests extends AndroidTestCase { } // Tests for getTerminalPosition - private String getWordFromBinary(final BinaryDictReader reader, final int address) { - final FusionDictionaryBufferInterface buffer = reader.getBuffer(); + private String getWordFromBinary(final BinaryDictReader dictReader, final int address) { + final FusionDictionaryBufferInterface buffer = dictReader.getBuffer(); if (buffer.position() != 0) buffer.position(0); - FileHeader header = null; + FileHeader fileHeader = null; try { - header = BinaryDictDecoder.readHeader(buffer); + fileHeader = BinaryDictDecoder.readHeader(dictReader); } catch (IOException e) { return null; } catch (UnsupportedFormatException e) { return null; } - if (header == null) return null; - return BinaryDictDecoder.getWordAtAddress(buffer, header.mHeaderSize, - address - header.mHeaderSize, header.mFormatOptions).mWord; + if (fileHeader == null) return null; + return BinaryDictDecoder.getWordAtAddress(buffer, fileHeader.mHeaderSize, + address - fileHeader.mHeaderSize, fileHeader.mFormatOptions).mWord; } private long runGetTerminalPosition(final BinaryDictReader reader, final String word, int index, @@ -533,7 +537,7 @@ public class BinaryDictDecoderEncoderTests extends AndroidTestCase { public void testGetTerminalPosition() { File file = null; try { - file = File.createTempFile("testGetTerminalPosition", ".dict", + file = File.createTempFile("testGetTerminalPosition", TEST_DICT_FILE_EXTENSION, getContext().getCacheDir()); } catch (IOException e) { // do nothing @@ -593,7 +597,8 @@ public class BinaryDictDecoderEncoderTests extends AndroidTestCase { public void testDeleteWord() { File file = null; try { - file = File.createTempFile("testDeleteWord", ".dict", getContext().getCacheDir()); + file = File.createTempFile("testDeleteWord", TEST_DICT_FILE_EXTENSION, + getContext().getCacheDir()); } catch (IOException e) { // do nothing } diff --git a/tests/src/com/android/inputmethod/latin/makedict/BinaryDictIOUtilsTests.java b/tests/src/com/android/inputmethod/latin/makedict/BinaryDictIOUtilsTests.java index 300fd6a38..bcf2c3187 100644 --- a/tests/src/com/android/inputmethod/latin/makedict/BinaryDictIOUtilsTests.java +++ b/tests/src/com/android/inputmethod/latin/makedict/BinaryDictIOUtilsTests.java @@ -48,6 +48,8 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase { public static final int DEFAULT_MAX_UNIGRAMS = 1500; private final int mMaxUnigrams; + private static final String TEST_DICT_FILE_EXTENSION = ".testDict"; + private static final String[] CHARACTERS = { "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", @@ -126,22 +128,24 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase { } } - private static void printBinaryFile(final FusionDictionaryBufferInterface buffer) + private static void printBinaryFile(final BinaryDictReader dictReader) throws IOException, UnsupportedFormatException { - FileHeader header = BinaryDictDecoder.readHeader(buffer); + final FileHeader fileHeader = BinaryDictDecoder.readHeader(dictReader); + final FusionDictionaryBufferInterface buffer = dictReader.getBuffer(); while (buffer.position() < buffer.limit()) { - printNode(buffer, header.mFormatOptions); + printNode(buffer, fileHeader.mFormatOptions); } } private int getWordPosition(final File file, final String word) { int position = FormatSpec.NOT_VALID_WORD; - final BinaryDictReader reader = new BinaryDictReader(file); + final BinaryDictReader dictReader = new BinaryDictReader(file); FileInputStream inStream = null; try { inStream = new FileInputStream(file); - reader.openBuffer(new BinaryDictReader.FusionDictionaryBufferFromByteBufferFactory()); - position = BinaryDictIOUtils.getTerminalPosition(reader, word); + dictReader.openBuffer( + new BinaryDictReader.FusionDictionaryBufferFromByteBufferFactory()); + position = BinaryDictIOUtils.getTerminalPosition(dictReader, word); } catch (IOException e) { } catch (UnsupportedFormatException e) { } finally { @@ -157,11 +161,12 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase { } private CharGroupInfo findWordFromFile(final File file, final String word) { - final BinaryDictReader reader = new BinaryDictReader(file); + final BinaryDictReader dictReader = new BinaryDictReader(file); CharGroupInfo info = null; try { - reader.openBuffer(new BinaryDictReader.FusionDictionaryBufferFromByteBufferFactory()); - info = BinaryDictIOUtils.findWordByBinaryDictReader(reader, word); + dictReader.openBuffer( + new BinaryDictReader.FusionDictionaryBufferFromByteBufferFactory()); + info = BinaryDictIOUtils.findWordByBinaryDictReader(dictReader, word); } catch (IOException e) { } catch (UnsupportedFormatException e) { } @@ -172,18 +177,18 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase { private long insertAndCheckWord(final File file, final String word, final int frequency, final boolean exist, final ArrayList<WeightedString> bigrams, final ArrayList<WeightedString> shortcuts) { - final BinaryDictReader reader = new BinaryDictReader(file); + final BinaryDictReader dictReader = new BinaryDictReader(file); BufferedOutputStream outStream = null; long amountOfTime = -1; try { - reader.openBuffer(new FusionDictionaryBufferFromWritableByteBufferFactory()); + dictReader.openBuffer(new FusionDictionaryBufferFromWritableByteBufferFactory()); outStream = new BufferedOutputStream(new FileOutputStream(file, true)); if (!exist) { assertEquals(FormatSpec.NOT_VALID_WORD, getWordPosition(file, word)); } final long now = System.nanoTime(); - DynamicBinaryDictIOUtils.insertWord(reader, outStream, word, frequency, bigrams, + DynamicBinaryDictIOUtils.insertWord(dictReader, outStream, word, frequency, bigrams, shortcuts, false, false); amountOfTime = System.nanoTime() - now; outStream.flush(); @@ -206,24 +211,25 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase { } private void deleteWord(final File file, final String word) { - final BinaryDictReader reader = new BinaryDictReader(file); + final BinaryDictReader dictReader = new BinaryDictReader(file); try { - reader.openBuffer(new FusionDictionaryBufferFromWritableByteBufferFactory()); - DynamicBinaryDictIOUtils.deleteWord(reader, word); + dictReader.openBuffer(new FusionDictionaryBufferFromWritableByteBufferFactory()); + DynamicBinaryDictIOUtils.deleteWord(dictReader, word); } catch (IOException e) { } catch (UnsupportedFormatException e) { } } private void checkReverseLookup(final File file, final String word, final int position) { - final BinaryDictReader reader = new BinaryDictReader(file); + final BinaryDictReader dictReader = new BinaryDictReader(file); try { - final FusionDictionaryBufferInterface buffer = reader.openAndGetBuffer( + final FusionDictionaryBufferInterface buffer = dictReader.openAndGetBuffer( new BinaryDictReader.FusionDictionaryBufferFromByteBufferFactory()); - final FileHeader header = BinaryDictDecoder.readHeader(buffer); + final FileHeader fileHeader = BinaryDictDecoder.readHeader(dictReader); assertEquals(word, - BinaryDictDecoder.getWordAtAddress(reader.getBuffer(), header.mHeaderSize, - position - header.mHeaderSize, header.mFormatOptions).mWord); + BinaryDictDecoder.getWordAtAddress(dictReader.getBuffer(), + fileHeader.mHeaderSize, position - fileHeader.mHeaderSize, + fileHeader.mFormatOptions).mWord); } catch (IOException e) { Log.e(TAG, "Raised an IOException while looking up a word", e); } catch (UnsupportedFormatException e) { @@ -234,7 +240,8 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase { public void testInsertWord() { File file = null; try { - file = File.createTempFile("testInsertWord", ".dict", getContext().getCacheDir()); + file = File.createTempFile("testInsertWord", TEST_DICT_FILE_EXTENSION, + getContext().getCacheDir()); } catch (IOException e) { fail("IOException while creating temporary file: " + e); } @@ -284,7 +291,7 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase { public void testInsertWordWithBigrams() { File file = null; try { - file = File.createTempFile("testInsertWordWithBigrams", ".dict", + file = File.createTempFile("testInsertWordWithBigrams", TEST_DICT_FILE_EXTENSION, getContext().getCacheDir()); } catch (IOException e) { fail("IOException while creating temporary file: " + e); @@ -322,7 +329,8 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase { public void testRandomWords() { File file = null; try { - file = File.createTempFile("testRandomWord", ".dict", getContext().getCacheDir()); + file = File.createTempFile("testRandomWord", TEST_DICT_FILE_EXTENSION, + getContext().getCacheDir()); } catch (IOException e) { } assertNotNull(file); diff --git a/tests/src/com/android/inputmethod/latin/personalization/UserHistoryDictionaryTests.java b/tests/src/com/android/inputmethod/latin/personalization/UserHistoryDictionaryTests.java index c2a6264e6..304b792a0 100644 --- a/tests/src/com/android/inputmethod/latin/personalization/UserHistoryDictionaryTests.java +++ b/tests/src/com/android/inputmethod/latin/personalization/UserHistoryDictionaryTests.java @@ -22,6 +22,7 @@ import android.test.AndroidTestCase; import android.test.suitebuilder.annotation.LargeTest; import android.util.Log; +import com.android.inputmethod.latin.ExpandableBinaryDictionary; import com.android.inputmethod.latin.utils.CollectionUtils; import java.io.File; @@ -81,12 +82,12 @@ public class UserHistoryDictionaryTests extends AndroidTestCase { } } - private void addAndWriteRandomWords(final String locale, final int numberOfWords, + private void addAndWriteRandomWords(final String testFilenameSuffix, final int numberOfWords, final Random random) { final List<String> words = generateWords(numberOfWords, random); final UserHistoryPredictionDictionary dict = PersonalizationDictionaryHelper.getUserHistoryPredictionDictionary(getContext(), - locale, mPrefs); + testFilenameSuffix /* locale */, mPrefs); // Add random words to the user history dictionary. addToDict(dict, words); // write to file. @@ -97,12 +98,12 @@ public class UserHistoryDictionaryTests extends AndroidTestCase { File dictFile = null; Log.d(TAG, "This test can be used for profiling."); Log.d(TAG, "Usage: please set UserHistoryDictionary.PROFILE_SAVE_RESTORE to true."); - final String locale = "testRandomWords" + System.currentTimeMillis(); + final String testFilenameSuffix = "testRandomWords" + System.currentTimeMillis(); final int numberOfWords = 1000; final Random random = new Random(123456); try { - addAndWriteRandomWords(locale, numberOfWords, random); + addAndWriteRandomWords(testFilenameSuffix, numberOfWords, random); } finally { try { Log.d(TAG, "waiting for writing ..."); @@ -111,7 +112,8 @@ public class UserHistoryDictionaryTests extends AndroidTestCase { Log.d(TAG, "InterruptedException: " + e); } - final String fileName = UserHistoryPredictionDictionary.NAME + "." + locale + ".dict"; + final String fileName = UserHistoryPredictionDictionary.NAME + "." + testFilenameSuffix + + ExpandableBinaryDictionary.DICT_FILE_EXTENSION; dictFile = new File(getContext().getFilesDir(), fileName); if (dictFile != null) { @@ -135,8 +137,8 @@ public class UserHistoryDictionaryTests extends AndroidTestCase { String testFilenameSuffixes[] = new String[numberOfLanguages]; for (int i = 0; i < numberOfLanguages; i++) { testFilenameSuffixes[i] = "testSwitchingLanguages" + i; - final String fileName = "UserHistoryDictionary." + testFilenameSuffixes[i] - + ".dict"; + final String fileName = UserHistoryPredictionDictionary.NAME + "." + + testFilenameSuffixes[i] + ExpandableBinaryDictionary.DICT_FILE_EXTENSION; dictFiles[i] = new File(getContext().getFilesDir(), fileName); } diff --git a/tests/src/com/android/inputmethod/latin/utils/UserHistoryDictIOUtilsTests.java b/tests/src/com/android/inputmethod/latin/utils/UserHistoryDictIOUtilsTests.java index fd5517665..8f5bec8a4 100644 --- a/tests/src/com/android/inputmethod/latin/utils/UserHistoryDictIOUtilsTests.java +++ b/tests/src/com/android/inputmethod/latin/utils/UserHistoryDictIOUtilsTests.java @@ -49,6 +49,7 @@ public class UserHistoryDictIOUtilsTests extends AndroidTestCase private static final int BIGRAM_FREQUENCY = 100; private static final ArrayList<String> NOT_HAVE_BIGRAM = new ArrayList<String>(); private static final FormatSpec.FormatOptions FORMAT_OPTIONS = new FormatSpec.FormatOptions(2); + private static final String TEST_DICT_FILE_EXTENSION = ".testDict"; /** * Return same frequency for all words and bigrams @@ -177,7 +178,8 @@ public class UserHistoryDictIOUtilsTests extends AndroidTestCase File file = null; try { - file = File.createTempFile("testReadAndWrite", ".dict", getContext().getCacheDir()); + file = File.createTempFile("testReadAndWrite", TEST_DICT_FILE_EXTENSION, + getContext().getCacheDir()); } catch (IOException e) { Log.d(TAG, "IOException while creating a temporary file", e); } |