1*8b6cd535SAndroid Build Coastguard Worker // Copyright (C) 2019 Google LLC 2*8b6cd535SAndroid Build Coastguard Worker // 3*8b6cd535SAndroid Build Coastguard Worker // Licensed under the Apache License, Version 2.0 (the "License"); 4*8b6cd535SAndroid Build Coastguard Worker // you may not use this file except in compliance with the License. 5*8b6cd535SAndroid Build Coastguard Worker // You may obtain a copy of the License at 6*8b6cd535SAndroid Build Coastguard Worker // 7*8b6cd535SAndroid Build Coastguard Worker // http://www.apache.org/licenses/LICENSE-2.0 8*8b6cd535SAndroid Build Coastguard Worker // 9*8b6cd535SAndroid Build Coastguard Worker // Unless required by applicable law or agreed to in writing, software 10*8b6cd535SAndroid Build Coastguard Worker // distributed under the License is distributed on an "AS IS" BASIS, 11*8b6cd535SAndroid Build Coastguard Worker // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*8b6cd535SAndroid Build Coastguard Worker // See the License for the specific language governing permissions and 13*8b6cd535SAndroid Build Coastguard Worker // limitations under the License. 14*8b6cd535SAndroid Build Coastguard Worker 15*8b6cd535SAndroid Build Coastguard Worker #include <jni.h> 16*8b6cd535SAndroid Build Coastguard Worker 17*8b6cd535SAndroid Build Coastguard Worker #include "gtest/gtest.h" 18*8b6cd535SAndroid Build Coastguard Worker #include "icing/testing/logging-event-listener.h" 19*8b6cd535SAndroid Build Coastguard Worker 20*8b6cd535SAndroid Build Coastguard Worker // Global variable used so that the test implementation can access the JNIEnv. 21*8b6cd535SAndroid Build Coastguard Worker JNIEnv* g_jenv = nullptr; 22*8b6cd535SAndroid Build Coastguard Worker 23*8b6cd535SAndroid Build Coastguard Worker extern "C" JNIEXPORT jboolean JNICALL Java_icing_jni_IcingSearchEngineJniTest_testsMain(JNIEnv * env,jclass ignored)24*8b6cd535SAndroid Build Coastguard WorkerJava_icing_jni_IcingSearchEngineJniTest_testsMain(JNIEnv* env, jclass ignored) { 25*8b6cd535SAndroid Build Coastguard Worker g_jenv = env; 26*8b6cd535SAndroid Build Coastguard Worker 27*8b6cd535SAndroid Build Coastguard Worker std::vector<char*> my_argv; 28*8b6cd535SAndroid Build Coastguard Worker char arg[] = "jni-test-lib"; 29*8b6cd535SAndroid Build Coastguard Worker my_argv.push_back(arg); 30*8b6cd535SAndroid Build Coastguard Worker int argc = 1; 31*8b6cd535SAndroid Build Coastguard Worker char** argv = &(my_argv[0]); 32*8b6cd535SAndroid Build Coastguard Worker testing::InitGoogleTest(&argc, argv); 33*8b6cd535SAndroid Build Coastguard Worker testing::UnitTest::GetInstance()->listeners().Append( 34*8b6cd535SAndroid Build Coastguard Worker new icing::lib::LoggingEventListener()); 35*8b6cd535SAndroid Build Coastguard Worker return RUN_ALL_TESTS() == 0; 36*8b6cd535SAndroid Build Coastguard Worker } 37