aboutsummaryrefslogtreecommitdiffstats
path: root/tests/src
diff options
context:
space:
mode:
Diffstat (limited to 'tests/src')
-rw-r--r--tests/src/com/android/inputmethod/latin/InputLogicTests.java28
-rw-r--r--tests/src/com/android/inputmethod/latin/InputTestsBase.java3
-rw-r--r--tests/src/com/android/inputmethod/latin/SuggestedWordsTests.java7
-rw-r--r--tests/src/com/android/inputmethod/latin/makedict/BinaryDictDecoderEncoderTests.java28
-rw-r--r--tests/src/com/android/inputmethod/latin/makedict/BinaryDictIOUtilsTests.java44
-rw-r--r--tests/src/com/android/inputmethod/latin/makedict/Ver3DictDecoderTests.java (renamed from tests/src/com/android/inputmethod/latin/makedict/BinaryDictDecoderTests.java)25
-rw-r--r--tests/src/com/android/inputmethod/latin/utils/UserHistoryDictIOUtilsTests.java6
7 files changed, 85 insertions, 56 deletions
diff --git a/tests/src/com/android/inputmethod/latin/InputLogicTests.java b/tests/src/com/android/inputmethod/latin/InputLogicTests.java
index 6cc4befae..fe92be618 100644
--- a/tests/src/com/android/inputmethod/latin/InputLogicTests.java
+++ b/tests/src/com/android/inputmethod/latin/InputLogicTests.java
@@ -305,5 +305,33 @@ public class InputLogicTests extends InputTestsBase {
assertEquals("resume suggestion on backspace", 8,
BaseInputConnection.getComposingSpanEnd(mEditText.getText()));
}
+
+ private void helperTestComposing(final String wordToType, final boolean shouldBeComposing) {
+ mEditText.setText("");
+ type(wordToType);
+ assertEquals("start composing inside text", shouldBeComposing ? 0 : -1,
+ BaseInputConnection.getComposingSpanStart(mEditText.getText()));
+ assertEquals("start composing inside text", shouldBeComposing ? wordToType.length() : -1,
+ BaseInputConnection.getComposingSpanEnd(mEditText.getText()));
+ }
+
+ public void testStartComposing() {
+ // Should start composing on a letter
+ helperTestComposing("a", true);
+ type(" "); // To reset the composing state
+ // Should not start composing on quote
+ helperTestComposing("'", false);
+ type(" ");
+ helperTestComposing("'-", false);
+ type(" ");
+ // Should not start composing on dash
+ helperTestComposing("-", false);
+ type(" ");
+ helperTestComposing("-'", false);
+ type(" ");
+ helperTestComposing("a-", true);
+ type(" ");
+ helperTestComposing("a'", true);
+ }
// TODO: Add some tests for non-BMP characters
}
diff --git a/tests/src/com/android/inputmethod/latin/InputTestsBase.java b/tests/src/com/android/inputmethod/latin/InputTestsBase.java
index 480570e62..0a1c4e963 100644
--- a/tests/src/com/android/inputmethod/latin/InputTestsBase.java
+++ b/tests/src/com/android/inputmethod/latin/InputTestsBase.java
@@ -258,7 +258,8 @@ public class InputTestsBase extends ServiceTestCase<LatinIMEForTests> {
protected void pickSuggestionManually(final int index, final String suggestion) {
mLatinIME.pickSuggestionManually(index, new SuggestedWordInfo(suggestion, 1,
- SuggestedWordInfo.KIND_CORRECTION, "main"));
+ SuggestedWordInfo.KIND_CORRECTION, null /* sourceDict */,
+ SuggestedWordInfo.NOT_AN_INDEX /* indexOfTouchPointOfSecondWord */));
}
// Helper to avoid writing the try{}catch block each time
diff --git a/tests/src/com/android/inputmethod/latin/SuggestedWordsTests.java b/tests/src/com/android/inputmethod/latin/SuggestedWordsTests.java
index 8d0fe014c..a5f3685da 100644
--- a/tests/src/com/android/inputmethod/latin/SuggestedWordsTests.java
+++ b/tests/src/com/android/inputmethod/latin/SuggestedWordsTests.java
@@ -34,9 +34,12 @@ public class SuggestedWordsTests extends AndroidTestCase {
final int NUMBER_OF_ADDED_SUGGESTIONS = 5;
final ArrayList<SuggestedWordInfo> list = CollectionUtils.newArrayList();
list.add(new SuggestedWordInfo(TYPED_WORD, TYPED_WORD_FREQ,
- SuggestedWordInfo.KIND_TYPED, ""));
+ SuggestedWordInfo.KIND_TYPED, null /* sourceDict */,
+ SuggestedWordInfo.NOT_AN_INDEX /* indexOfTouchPointOfSecondWord */));
for (int i = 0; i < NUMBER_OF_ADDED_SUGGESTIONS; ++i) {
- list.add(new SuggestedWordInfo("" + i, 1, SuggestedWordInfo.KIND_CORRECTION, ""));
+ list.add(new SuggestedWordInfo("" + i, 1, SuggestedWordInfo.KIND_CORRECTION,
+ null /* sourceDict */,
+ SuggestedWordInfo.NOT_AN_INDEX /* indexOfTouchPointOfSecondWord */));
}
final SuggestedWords words = new SuggestedWords(
diff --git a/tests/src/com/android/inputmethod/latin/makedict/BinaryDictDecoderEncoderTests.java b/tests/src/com/android/inputmethod/latin/makedict/BinaryDictDecoderEncoderTests.java
index 028e089f8..d50d1ac96 100644
--- a/tests/src/com/android/inputmethod/latin/makedict/BinaryDictDecoderEncoderTests.java
+++ b/tests/src/com/android/inputmethod/latin/makedict/BinaryDictDecoderEncoderTests.java
@@ -44,7 +44,7 @@ import java.util.Random;
import java.util.Set;
/**
- * Unit tests for BinaryDictDecoderUtils and BinaryDictEncoder.
+ * Unit tests for BinaryDictDecoderUtils and BinaryDictEncoderUtils.
*/
@LargeTest
public class BinaryDictDecoderEncoderTests extends AndroidTestCase {
@@ -120,14 +120,14 @@ public class BinaryDictDecoderEncoderTests extends AndroidTestCase {
/**
* Makes new DictBuffer according to BUFFER_TYPE.
*/
- private void getDictBuffer(final BinaryDictDecoder dictDecoder, final int bufferType)
+ private void getDictBuffer(final Ver3DictDecoder dictDecoder, final int bufferType)
throws FileNotFoundException, IOException {
if (bufferType == USE_BYTE_BUFFER) {
dictDecoder.openDictBuffer(
- new BinaryDictDecoder.DictionaryBufferFromReadOnlyByteBufferFactory());
+ new Ver3DictDecoder.DictionaryBufferFromReadOnlyByteBufferFactory());
} else if (bufferType == USE_BYTE_ARRAY) {
dictDecoder.openDictBuffer(
- new BinaryDictDecoder.DictionaryBufferFromByteArrayFactory());
+ new Ver3DictDecoder.DictionaryBufferFromByteArrayFactory());
}
}
@@ -210,7 +210,7 @@ public class BinaryDictDecoderEncoderTests extends AndroidTestCase {
// If you need to dump the dict to a textual file, uncomment the line below and the
// function above
// dumpToCombinedFileForDebug(file, "/tmp/foo");
- BinaryDictEncoder.writeDictionaryBinary(out, dict, formatOptions);
+ BinaryDictEncoderUtils.writeDictionaryBinary(out, dict, formatOptions);
diff = System.currentTimeMillis() - now;
out.flush();
@@ -271,7 +271,7 @@ public class BinaryDictDecoderEncoderTests extends AndroidTestCase {
final SparseArray<List<Integer>> bigrams, final Map<String, List<String>> shortcutMap,
final int bufferType) {
long now, diff = -1;
- final BinaryDictDecoder dictDecoder = new BinaryDictDecoder(file);
+ final Ver3DictDecoder dictDecoder = new Ver3DictDecoder(file);
FusionDictionary dict = null;
try {
@@ -409,7 +409,7 @@ public class BinaryDictDecoderEncoderTests extends AndroidTestCase {
final Map<Integer, Integer> resultFreqs = CollectionUtils.newTreeMap();
long now = -1, diff = -1;
- final BinaryDictDecoder dictDecoder = new BinaryDictDecoder(file);
+ final Ver3DictDecoder dictDecoder = new Ver3DictDecoder(file);
try {
getDictBuffer(dictDecoder, bufferType);
assertNotNull("Can't get buffer.", dictDecoder.getDictBuffer());
@@ -499,7 +499,7 @@ public class BinaryDictDecoderEncoderTests extends AndroidTestCase {
}
// Tests for getTerminalPosition
- private String getWordFromBinary(final BinaryDictDecoder dictDecoder, final int address) {
+ private String getWordFromBinary(final Ver3DictDecoder dictDecoder, final int address) {
final DictBuffer dictBuffer = dictDecoder.getDictBuffer();
if (dictBuffer.position() != 0) dictBuffer.position(0);
@@ -512,11 +512,11 @@ public class BinaryDictDecoderEncoderTests extends AndroidTestCase {
return null;
}
if (fileHeader == null) return null;
- return BinaryDictDecoderUtils.getWordAtAddress(dictBuffer, fileHeader.mHeaderSize,
+ return BinaryDictDecoderUtils.getWordAtAddress(dictDecoder, fileHeader.mHeaderSize,
address - fileHeader.mHeaderSize, fileHeader.mFormatOptions).mWord;
}
- private long runGetTerminalPosition(final BinaryDictDecoder dictDecoder, final String word,
+ private long runGetTerminalPosition(final Ver3DictDecoder dictDecoder, final String word,
int index, boolean contained) {
final int expectedFrequency = (UNIGRAM_FREQ + index) % 255;
long diff = -1;
@@ -552,10 +552,10 @@ public class BinaryDictDecoderEncoderTests extends AndroidTestCase {
addUnigrams(sWords.size(), dict, sWords, null /* shortcutMap */);
timeWritingDictToFile(file, dict, VERSION3_WITH_DYNAMIC_UPDATE);
- final BinaryDictDecoder dictDecoder = new BinaryDictDecoder(file);
+ final Ver3DictDecoder dictDecoder = new Ver3DictDecoder(file);
try {
dictDecoder.openDictBuffer(
- new BinaryDictDecoder.DictionaryBufferFromByteArrayFactory());
+ new Ver3DictDecoder.DictionaryBufferFromByteArrayFactory());
} catch (IOException e) {
// ignore
Log.e(TAG, "IOException while opening the buffer", e);
@@ -613,10 +613,10 @@ public class BinaryDictDecoderEncoderTests extends AndroidTestCase {
addUnigrams(sWords.size(), dict, sWords, null /* shortcutMap */);
timeWritingDictToFile(file, dict, VERSION3_WITH_DYNAMIC_UPDATE);
- final BinaryDictDecoder dictDecoder = new BinaryDictDecoder(file);
+ final Ver3DictDecoder dictDecoder = new Ver3DictDecoder(file);
try {
dictDecoder.openDictBuffer(
- new BinaryDictDecoder.DictionaryBufferFromByteArrayFactory());
+ new Ver3DictDecoder.DictionaryBufferFromByteArrayFactory());
} catch (IOException e) {
// ignore
Log.e(TAG, "IOException while opening the buffer", e);
diff --git a/tests/src/com/android/inputmethod/latin/makedict/BinaryDictIOUtilsTests.java b/tests/src/com/android/inputmethod/latin/makedict/BinaryDictIOUtilsTests.java
index b6e439561..878417084 100644
--- a/tests/src/com/android/inputmethod/latin/makedict/BinaryDictIOUtilsTests.java
+++ b/tests/src/com/android/inputmethod/latin/makedict/BinaryDictIOUtilsTests.java
@@ -22,7 +22,7 @@ import android.test.suitebuilder.annotation.LargeTest;
import android.util.Log;
import com.android.inputmethod.latin.makedict.BinaryDictDecoderUtils.DictBuffer;
-import com.android.inputmethod.latin.makedict.BinaryDictDecoder.
+import com.android.inputmethod.latin.makedict.DictDecoder.
DictionaryBufferFromWritableByteBufferFactory;
import com.android.inputmethod.latin.makedict.FormatSpec.FileHeader;
import com.android.inputmethod.latin.makedict.FusionDictionary.PtNodeArray;
@@ -112,14 +112,15 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase {
Log.d(TAG, " end address = " + info.mEndAddress);
}
- private static void printNode(final DictBuffer dictBuffer,
+ private static void printNode(final Ver3DictDecoder dictDecoder,
final FormatSpec.FormatOptions formatOptions) {
+ final DictBuffer dictBuffer = dictDecoder.getDictBuffer();
Log.d(TAG, "Node at " + dictBuffer.position());
final int count = BinaryDictDecoderUtils.readCharGroupCount(dictBuffer);
Log.d(TAG, " charGroupCount = " + count);
for (int i = 0; i < count; ++i) {
- final CharGroupInfo currentInfo = BinaryDictDecoderUtils.readCharGroup(dictBuffer,
- dictBuffer.position(), formatOptions);
+ final CharGroupInfo currentInfo = dictDecoder.readPtNode(dictBuffer.position(),
+ formatOptions);
printCharGroup(currentInfo);
}
if (formatOptions.mSupportsDynamicUpdate) {
@@ -128,23 +129,23 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase {
}
}
- private static void printBinaryFile(final BinaryDictDecoder dictDecoder)
+ private static void printBinaryFile(final Ver3DictDecoder dictDecoder)
throws IOException, UnsupportedFormatException {
final FileHeader fileHeader = dictDecoder.readHeader();
- final DictBuffer buffer = dictDecoder.getDictBuffer();
- while (buffer.position() < buffer.limit()) {
- printNode(buffer, fileHeader.mFormatOptions);
+ final DictBuffer dictBuffer = dictDecoder.getDictBuffer();
+ while (dictBuffer.position() < dictBuffer.limit()) {
+ printNode(dictDecoder, fileHeader.mFormatOptions);
}
}
private int getWordPosition(final File file, final String word) {
int position = FormatSpec.NOT_VALID_WORD;
- final BinaryDictDecoder dictDecoder = new BinaryDictDecoder(file);
+ final Ver3DictDecoder dictDecoder = new Ver3DictDecoder(file);
FileInputStream inStream = null;
try {
inStream = new FileInputStream(file);
dictDecoder.openDictBuffer(
- new BinaryDictDecoder.DictionaryBufferFromReadOnlyByteBufferFactory());
+ new Ver3DictDecoder.DictionaryBufferFromReadOnlyByteBufferFactory());
position = BinaryDictIOUtils.getTerminalPosition(dictDecoder, word);
} catch (IOException e) {
} catch (UnsupportedFormatException e) {
@@ -161,11 +162,11 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase {
}
private CharGroupInfo findWordFromFile(final File file, final String word) {
- final BinaryDictDecoder dictDecoder = new BinaryDictDecoder(file);
+ final Ver3DictDecoder dictDecoder = new Ver3DictDecoder(file);
CharGroupInfo info = null;
try {
dictDecoder.openDictBuffer(
- new BinaryDictDecoder.DictionaryBufferFromReadOnlyByteBufferFactory());
+ new Ver3DictDecoder.DictionaryBufferFromReadOnlyByteBufferFactory());
info = BinaryDictIOUtils.findWordByBinaryDictReader(dictDecoder, word);
} catch (IOException e) {
} catch (UnsupportedFormatException e) {
@@ -177,7 +178,7 @@ 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 BinaryDictDecoder dictDecoder = new BinaryDictDecoder(file);
+ final Ver3DictDecoder dictDecoder = new Ver3DictDecoder(file);
BufferedOutputStream outStream = null;
long amountOfTime = -1;
try {
@@ -211,7 +212,7 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase {
}
private void deleteWord(final File file, final String word) {
- final BinaryDictDecoder dictDecoder = new BinaryDictDecoder(file);
+ final Ver3DictDecoder dictDecoder = new Ver3DictDecoder(file);
try {
dictDecoder.openDictBuffer(new DictionaryBufferFromWritableByteBufferFactory());
DynamicBinaryDictIOUtils.deleteWord(dictDecoder, word);
@@ -221,15 +222,14 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase {
}
private void checkReverseLookup(final File file, final String word, final int position) {
- final BinaryDictDecoder dictDecoder = new BinaryDictDecoder(file);
+ final Ver3DictDecoder dictDecoder = new Ver3DictDecoder(file);
try {
final DictBuffer dictBuffer = dictDecoder.openAndGetDictBuffer(
- new BinaryDictDecoder.DictionaryBufferFromReadOnlyByteBufferFactory());
+ new Ver3DictDecoder.DictionaryBufferFromReadOnlyByteBufferFactory());
final FileHeader fileHeader = dictDecoder.readHeader();
assertEquals(word,
- BinaryDictDecoderUtils.getWordAtAddress(dictDecoder.getDictBuffer(),
- fileHeader.mHeaderSize, position - fileHeader.mHeaderSize,
- fileHeader.mFormatOptions).mWord);
+ BinaryDictDecoderUtils.getWordAtAddress(dictDecoder, 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) {
@@ -253,7 +253,7 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase {
try {
final FileOutputStream out = new FileOutputStream(file);
- BinaryDictEncoder.writeDictionaryBinary(out, dict, FORMAT_OPTIONS);
+ BinaryDictEncoderUtils.writeDictionaryBinary(out, dict, FORMAT_OPTIONS);
out.close();
} catch (IOException e) {
fail("IOException while writing an initial dictionary : " + e);
@@ -305,7 +305,7 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase {
try {
final FileOutputStream out = new FileOutputStream(file);
- BinaryDictEncoder.writeDictionaryBinary(out, dict, FORMAT_OPTIONS);
+ BinaryDictEncoderUtils.writeDictionaryBinary(out, dict, FORMAT_OPTIONS);
out.close();
} catch (IOException e) {
fail("IOException while writing an initial dictionary : " + e);
@@ -343,7 +343,7 @@ public class BinaryDictIOUtilsTests extends AndroidTestCase {
try {
final FileOutputStream out = new FileOutputStream(file);
- BinaryDictEncoder.writeDictionaryBinary(out, dict, FORMAT_OPTIONS);
+ BinaryDictEncoderUtils.writeDictionaryBinary(out, dict, FORMAT_OPTIONS);
out.close();
} catch (IOException e) {
assertTrue(false);
diff --git a/tests/src/com/android/inputmethod/latin/makedict/BinaryDictDecoderTests.java b/tests/src/com/android/inputmethod/latin/makedict/Ver3DictDecoderTests.java
index 03742c4c1..20e8b4fda 100644
--- a/tests/src/com/android/inputmethod/latin/makedict/BinaryDictDecoderTests.java
+++ b/tests/src/com/android/inputmethod/latin/makedict/Ver3DictDecoderTests.java
@@ -17,12 +17,11 @@
package com.android.inputmethod.latin.makedict;
import com.android.inputmethod.latin.makedict.BinaryDictDecoderUtils.DictBuffer;
-import com.android.inputmethod.latin.makedict.BinaryDictDecoder.DictionaryBufferFactory;
-import com.android.inputmethod.latin.makedict.BinaryDictDecoder.
- DictionaryBufferFromByteArrayFactory;
-import com.android.inputmethod.latin.makedict.BinaryDictDecoder.
+import com.android.inputmethod.latin.makedict.DictDecoder.DictionaryBufferFactory;
+import com.android.inputmethod.latin.makedict.DictDecoder.DictionaryBufferFromByteArrayFactory;
+import com.android.inputmethod.latin.makedict.DictDecoder.
DictionaryBufferFromReadOnlyByteBufferFactory;
-import com.android.inputmethod.latin.makedict.BinaryDictDecoder.
+import com.android.inputmethod.latin.makedict.DictDecoder.
DictionaryBufferFromWritableByteBufferFactory;
import android.test.AndroidTestCase;
@@ -33,10 +32,10 @@ import java.io.FileOutputStream;
import java.io.IOException;
/**
- * Unit tests for BinaryDictDecoder
+ * Unit tests for Ver3DictDecoder
*/
-public class BinaryDictDecoderTests extends AndroidTestCase {
- private static final String TAG = BinaryDictDecoderTests.class.getSimpleName();
+public class Ver3DictDecoderTests extends AndroidTestCase {
+ private static final String TAG = Ver3DictDecoderTests.class.getSimpleName();
private final byte[] data = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
@@ -60,8 +59,7 @@ public class BinaryDictDecoderTests extends AndroidTestCase {
}
@SuppressWarnings("null")
- public void runTestOpenBuffer(final String testName,
- final DictionaryBufferFactory factory) {
+ public void runTestOpenBuffer(final String testName, final DictionaryBufferFactory factory) {
File testFile = null;
try {
testFile = File.createTempFile(testName, ".tmp", getContext().getCacheDir());
@@ -70,7 +68,7 @@ public class BinaryDictDecoderTests extends AndroidTestCase {
}
assertNotNull(testFile);
- final BinaryDictDecoder dictDecoder = new BinaryDictDecoder(testFile);
+ final Ver3DictDecoder dictDecoder = new Ver3DictDecoder(testFile);
try {
dictDecoder.openDictBuffer(factory);
} catch (Exception e) {
@@ -104,8 +102,7 @@ public class BinaryDictDecoderTests extends AndroidTestCase {
}
@SuppressWarnings("null")
- public void runTestGetBuffer(final String testName,
- final DictionaryBufferFactory factory) {
+ public void runTestGetBuffer(final String testName, final DictionaryBufferFactory factory) {
File testFile = null;
try {
testFile = File.createTempFile(testName, ".tmp", getContext().getCacheDir());
@@ -113,7 +110,7 @@ public class BinaryDictDecoderTests extends AndroidTestCase {
Log.e(TAG, "IOException while the creating temporary file", e);
}
- final BinaryDictDecoder dictDecoder = new BinaryDictDecoder(testFile);
+ final Ver3DictDecoder dictDecoder = new Ver3DictDecoder(testFile);
// the default return value of getBuffer() must be null.
assertNull("the default return value of getBuffer() is not null",
diff --git a/tests/src/com/android/inputmethod/latin/utils/UserHistoryDictIOUtilsTests.java b/tests/src/com/android/inputmethod/latin/utils/UserHistoryDictIOUtilsTests.java
index 83d9c2122..eca12c0d8 100644
--- a/tests/src/com/android/inputmethod/latin/utils/UserHistoryDictIOUtilsTests.java
+++ b/tests/src/com/android/inputmethod/latin/utils/UserHistoryDictIOUtilsTests.java
@@ -21,10 +21,10 @@ import android.test.AndroidTestCase;
import android.test.suitebuilder.annotation.LargeTest;
import android.util.Log;
-import com.android.inputmethod.latin.makedict.BinaryDictDecoder;
import com.android.inputmethod.latin.makedict.FormatSpec;
import com.android.inputmethod.latin.makedict.FusionDictionary;
import com.android.inputmethod.latin.makedict.FusionDictionary.CharGroup;
+import com.android.inputmethod.latin.makedict.Ver3DictDecoder;
import com.android.inputmethod.latin.personalization.UserHistoryDictionaryBigramList;
import com.android.inputmethod.latin.utils.UserHistoryDictIOUtils.BigramDictionaryInterface;
import com.android.inputmethod.latin.utils.UserHistoryDictIOUtils.OnAddWordListener;
@@ -147,10 +147,10 @@ public class UserHistoryDictIOUtilsTests extends AndroidTestCase
}
private void readDictFromFile(final File file, final OnAddWordListener listener) {
- final BinaryDictDecoder dictDecoder = new BinaryDictDecoder(file);
+ final Ver3DictDecoder dictDecoder = new Ver3DictDecoder(file);
try {
dictDecoder.openDictBuffer(
- new BinaryDictDecoder.DictionaryBufferFromByteArrayFactory());
+ new Ver3DictDecoder.DictionaryBufferFromByteArrayFactory());
} catch (FileNotFoundException e) {
Log.e(TAG, "file not found", e);
} catch (IOException e) {