aboutsummaryrefslogtreecommitdiffstats
path: root/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp
diff options
context:
space:
mode:
authorKeisuke Kuroyanagi <ksk@google.com>2014-01-16 09:27:14 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2014-01-16 09:27:14 -0800
commitb775b3c96ba670d575479d8b8b0ee32d35e17cb2 (patch)
tree4acf4342b298eb82fa1c1a5fa84be4b1d8d3ff17 /native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp
parentacb16d34e7aa2447889d3b6adee4f745c3cd3c19 (diff)
parentf4bf620502198202b98882254d7a355e1f5a6e45 (diff)
downloadlatinime-b775b3c96ba670d575479d8b8b0ee32d35e17cb2.tar.gz
latinime-b775b3c96ba670d575479d8b8b0ee32d35e17cb2.tar.xz
latinime-b775b3c96ba670d575479d8b8b0ee32d35e17cb2.zip
am f4bf6205: Merge "Add a dedicated method to control time in native code."
* commit 'f4bf620502198202b98882254d7a355e1f5a6e45': Add a dedicated method to control time in native code.
Diffstat (limited to 'native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp')
-rw-r--r--native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp b/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp
index 26570f4d8..586a306ec 100644
--- a/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp
+++ b/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp
@@ -29,6 +29,7 @@
#include "suggest/policyimpl/dictionary/structure/dictionary_structure_with_buffer_policy_factory.h"
#include "suggest/policyimpl/dictionary/utils/dict_file_writing_utils.h"
#include "utils/autocorrection_threshold_utils.h"
+#include "utils/time_keeper.h"
namespace latinime {
@@ -457,6 +458,17 @@ static jstring latinime_BinaryDictionary_getProperty(JNIEnv *env, jclass clazz,
return env->NewStringUTF(resultChars);
}
+static int latinime_BinaryDictionary_setCurrentTimeForTest(JNIEnv *env, jclass clazz,
+ jint currentTime) {
+ if (currentTime >= 0) {
+ TimeKeeper::startTestModeWithForceCurrentTime(currentTime);
+ } else {
+ TimeKeeper::stopTestMode();
+ }
+ TimeKeeper::setCurrentTime();
+ return TimeKeeper::peekCurrentTime();
+}
+
static const JNINativeMethod sMethods[] = {
{
const_cast<char *>("createEmptyDictFileNative"),
@@ -550,6 +562,11 @@ static const JNINativeMethod sMethods[] = {
reinterpret_cast<void *>(latinime_BinaryDictionary_calculateProbabilityNative)
},
{
+ const_cast<char *>("setCurrentTimeForTestNative"),
+ const_cast<char *>("(I)I"),
+ reinterpret_cast<void *>(latinime_BinaryDictionary_setCurrentTimeForTest)
+ },
+ {
const_cast<char *>("getPropertyNative"),
const_cast<char *>("(JLjava/lang/String;)Ljava/lang/String;"),
reinterpret_cast<void *>(latinime_BinaryDictionary_getProperty)