Merge "mockingservicestest: add jni dependency" into sc-dev

This commit is contained in:
TreeHugger Robot
2021-02-09 23:22:04 +00:00
committed by Android (Google) Code Review
5 changed files with 95 additions and 2 deletions

View File

@@ -56,10 +56,10 @@ cc_library_static {
"com_android_server_vibrator_VibratorController.cpp",
"com_android_server_VibratorManagerService.cpp",
"com_android_server_PersistentDataBlockService.cpp",
"com_android_server_am_CachedAppOptimizer.cpp",
"com_android_server_am_LowMemDetector.cpp",
"com_android_server_pm_PackageManagerShellCommandDataLoader.cpp",
"onload.cpp",
":lib_cachedAppOptimizer_native",
":lib_networkStatsFactory_native",
],
@@ -193,3 +193,10 @@ filegroup {
"com_android_server_net_NetworkStatsFactory.cpp",
],
}
filegroup {
name: "lib_cachedAppOptimizer_native",
srcs: [
"com_android_server_am_CachedAppOptimizer.cpp",
],
}

View File

@@ -11,9 +11,16 @@
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
java_defaults {
name: "FrameworkMockingServicesTests-jni-defaults",
jni_libs: [
"libactivitymanagermockingservicestestjni",
],
}
android_test {
name: "FrameworksMockingServicesTests",
defaults: ["FrameworkMockingServicesTests-jni-defaults"],
srcs: ["src/**/*.java", "src/**/*.kt"],
@@ -72,4 +79,4 @@ java_library {
libs: [
"android.test.runner",
],
}
}

View File

@@ -0,0 +1,33 @@
cc_library_shared {
name: "libactivitymanagermockingservicestestjni",
cflags: [
"-Wall",
"-Werror",
"-Wno-unused-parameter",
"-Wthread-safety",
],
srcs: [
":lib_cachedAppOptimizer_native",
"onload.cpp",
],
include_dirs: [
"frameworks/base/libs",
"frameworks/native/services",
"system/memory/libmeminfo/include",
],
shared_libs: [
"libandroid",
"libandroid_runtime",
"libbase",
"libbinder",
"liblog",
"libmeminfo",
"libnativehelper",
"libprocessgroup",
"libutils",
],
}

View File

@@ -0,0 +1,45 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/*
* this is a mini native libaray for cached app optimizer tests to run properly. It
* loads all the native methods necessary.
*/
#include <nativehelper/JNIHelp.h>
#include "jni.h"
#include "utils/Log.h"
#include "utils/misc.h"
namespace android {
int register_android_server_am_CachedAppOptimizer(JNIEnv* env);
};
using namespace android;
extern "C" jint JNI_OnLoad(JavaVM* vm, void* /* reserved */)
{
JNIEnv* env = NULL;
jint result = -1;
if (vm->GetEnv((void**) &env, JNI_VERSION_1_4) != JNI_OK) {
ALOGE("GetEnv failed!");
return result;
}
ALOG_ASSERT(env, "Could not retrieve the env!");
register_android_server_am_CachedAppOptimizer(env);
return JNI_VERSION_1_4;
}

View File

@@ -97,6 +97,7 @@ public final class CachedAppOptimizerTest {
@Before
public void setUp() {
System.loadLibrary("activitymanagermockingservicestestjni");
mHandlerThread = new HandlerThread("");
mHandlerThread.start();
mHandler = new Handler(mHandlerThread.getLooper());