821 lines
17 KiB
Plaintext
821 lines
17 KiB
Plaintext
//
|
|
// Copyright (C) 2014 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.
|
|
//
|
|
|
|
package {
|
|
// See: http://go/android-license-faq
|
|
// A large-scale-change added 'default_applicable_licenses' to import
|
|
// all of the 'license_kinds' from "frameworks_native_license"
|
|
// to get the below license kinds:
|
|
// SPDX-license-identifier-Apache-2.0
|
|
default_applicable_licenses: ["frameworks_native_license"],
|
|
}
|
|
|
|
cc_defaults {
|
|
name: "binder_test_defaults",
|
|
cflags: [
|
|
"-Wall",
|
|
"-Werror",
|
|
],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderDriverInterfaceTest_IPC_32",
|
|
defaults: ["binder_test_defaults"],
|
|
srcs: ["binderDriverInterfaceTest.cpp"],
|
|
header_libs: ["libbinder_headers"],
|
|
compile_multilib: "32",
|
|
multilib: {
|
|
lib32: {
|
|
suffix: "",
|
|
},
|
|
},
|
|
cflags: ["-DBINDER_IPC_32BIT=1"],
|
|
test_suites: ["vts"],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderDriverInterfaceTest",
|
|
defaults: ["binder_test_defaults"],
|
|
product_variables: {
|
|
binder32bit: {
|
|
cflags: ["-DBINDER_IPC_32BIT=1"],
|
|
},
|
|
},
|
|
header_libs: ["libbinder_headers"],
|
|
srcs: ["binderDriverInterfaceTest.cpp"],
|
|
test_suites: [
|
|
"device-tests",
|
|
"vts",
|
|
],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderLibTest_IPC_32",
|
|
defaults: ["binder_test_defaults"],
|
|
srcs: ["binderLibTest.cpp"],
|
|
shared_libs: [
|
|
"libbase",
|
|
"libbinder",
|
|
"liblog",
|
|
"libutils",
|
|
],
|
|
static_libs: [
|
|
"libgmock",
|
|
],
|
|
compile_multilib: "32",
|
|
multilib: {
|
|
lib32: {
|
|
suffix: "",
|
|
},
|
|
},
|
|
cflags: ["-DBINDER_IPC_32BIT=1"],
|
|
test_suites: ["vts"],
|
|
require_root: true,
|
|
}
|
|
|
|
// unit test only, which can run on host and doesn't use /dev/binder
|
|
cc_test {
|
|
name: "binderUnitTest",
|
|
host_supported: true,
|
|
target: {
|
|
darwin: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
srcs: [
|
|
"binderParcelUnitTest.cpp",
|
|
"binderBinderUnitTest.cpp",
|
|
"binderStatusUnitTest.cpp",
|
|
"binderMemoryHeapBaseUnitTest.cpp",
|
|
"binderRecordedTransactionTest.cpp",
|
|
],
|
|
shared_libs: [
|
|
"libbinder",
|
|
"libcutils",
|
|
"libutils",
|
|
],
|
|
test_suites: ["general-tests"],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderLibTest",
|
|
defaults: ["binder_test_defaults"],
|
|
product_variables: {
|
|
binder32bit: {
|
|
cflags: ["-DBINDER_IPC_32BIT=1"],
|
|
},
|
|
},
|
|
|
|
srcs: ["binderLibTest.cpp"],
|
|
shared_libs: [
|
|
"libbase",
|
|
"libbinder",
|
|
"liblog",
|
|
"libutils",
|
|
],
|
|
static_libs: [
|
|
"libgmock",
|
|
],
|
|
test_suites: [
|
|
"device-tests",
|
|
"vts",
|
|
],
|
|
require_root: true,
|
|
}
|
|
|
|
aidl_interface {
|
|
name: "binderRpcTestIface",
|
|
vendor_available: true,
|
|
host_supported: true,
|
|
unstable: true,
|
|
srcs: [
|
|
"BinderRpcTestClientInfo.aidl",
|
|
"BinderRpcTestServerConfig.aidl",
|
|
"BinderRpcTestServerInfo.aidl",
|
|
"IBinderRpcCallback.aidl",
|
|
"IBinderRpcSession.aidl",
|
|
"IBinderRpcTest.aidl",
|
|
"ParcelableCertificateData.aidl",
|
|
],
|
|
backend: {
|
|
java: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
}
|
|
|
|
cc_library_static {
|
|
name: "libbinder_tls_test_utils",
|
|
host_supported: true,
|
|
vendor_available: true,
|
|
target: {
|
|
darwin: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
defaults: [
|
|
"binder_test_defaults",
|
|
"libbinder_tls_shared_deps",
|
|
],
|
|
shared_libs: [
|
|
"libbase",
|
|
"liblog",
|
|
],
|
|
static_libs: [
|
|
"libbinder_tls_static",
|
|
],
|
|
srcs: [
|
|
"RpcTlsTestUtils.cpp",
|
|
],
|
|
export_include_dirs: [
|
|
"include_tls_test_utils",
|
|
],
|
|
visibility: [
|
|
":__subpackages__",
|
|
],
|
|
}
|
|
|
|
cc_defaults {
|
|
name: "binderRpcTest_common_defaults",
|
|
host_supported: true,
|
|
target: {
|
|
darwin: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
defaults: [
|
|
"binder_test_defaults",
|
|
],
|
|
|
|
static_libs: [
|
|
"libbinder_tls_static",
|
|
"libbinder_tls_test_utils",
|
|
"binderRpcTestIface-cpp",
|
|
"binderRpcTestIface-ndk",
|
|
],
|
|
}
|
|
|
|
cc_defaults {
|
|
name: "binderRpcTest_service_defaults",
|
|
defaults: [
|
|
"binderRpcTest_common_defaults",
|
|
],
|
|
gtest: false,
|
|
auto_gen_config: false,
|
|
srcs: [
|
|
"binderRpcTestCommon.cpp",
|
|
"binderRpcTestService.cpp",
|
|
],
|
|
}
|
|
|
|
cc_defaults {
|
|
name: "binderRpcTest_defaults",
|
|
target: {
|
|
android: {
|
|
test_suites: ["vts"],
|
|
},
|
|
},
|
|
defaults: [
|
|
"binderRpcTest_common_defaults",
|
|
],
|
|
|
|
srcs: [
|
|
"binderRpcTest.cpp",
|
|
"binderRpcTestCommon.cpp",
|
|
"binderRpcUniversalTests.cpp",
|
|
],
|
|
|
|
// This test uses a lot of resources and takes a long time. Due to
|
|
// design of several tests, it is also very sensitive to resource
|
|
// contention on the device. b/276820894
|
|
test_options: {
|
|
unit_test: false,
|
|
},
|
|
|
|
test_suites: ["general-tests"],
|
|
require_root: true,
|
|
|
|
data_bins: [
|
|
"binder_rpc_test_service",
|
|
"binder_rpc_test_service_no_kernel",
|
|
"binder_rpc_test_service_single_threaded",
|
|
"binder_rpc_test_service_single_threaded_no_kernel",
|
|
],
|
|
}
|
|
|
|
cc_defaults {
|
|
name: "binderRpcTest_shared_defaults",
|
|
cflags: [
|
|
"-DBINDER_WITH_KERNEL_IPC",
|
|
],
|
|
|
|
shared_libs: [
|
|
"libbinder",
|
|
"libbinder_ndk",
|
|
"libbase",
|
|
"libutils",
|
|
"libcutils",
|
|
"liblog",
|
|
],
|
|
}
|
|
|
|
cc_defaults {
|
|
name: "binderRpcTest_static_defaults",
|
|
|
|
shared_libs: [
|
|
"liblog",
|
|
"libutils",
|
|
// libcrypto_static is not visible to this module
|
|
"libcrypto",
|
|
],
|
|
static_libs: [
|
|
"libbase",
|
|
"libcutils",
|
|
"libssl",
|
|
],
|
|
|
|
cflags: [
|
|
// Disable tests that require shared libraries,
|
|
// e.g., libbinder.so or libbinder_ndk.so
|
|
"-DBINDER_TEST_NO_SHARED_LIBS",
|
|
],
|
|
}
|
|
|
|
cc_test {
|
|
// The module name cannot start with "binderRpcTest" because
|
|
// then atest tries to execute it as part of binderRpcTest
|
|
name: "binder_rpc_test_service",
|
|
defaults: [
|
|
"binderRpcTest_service_defaults",
|
|
"binderRpcTest_shared_defaults",
|
|
"libbinder_tls_shared_deps",
|
|
],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binder_rpc_test_service_no_kernel",
|
|
defaults: [
|
|
"binderRpcTest_service_defaults",
|
|
"binderRpcTest_static_defaults",
|
|
],
|
|
static_libs: [
|
|
"libbinder_rpc_no_kernel",
|
|
],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binder_rpc_test_service_single_threaded",
|
|
defaults: [
|
|
"binderRpcTest_service_defaults",
|
|
"binderRpcTest_static_defaults",
|
|
],
|
|
cflags: [
|
|
"-DBINDER_RPC_SINGLE_THREADED",
|
|
"-DBINDER_WITH_KERNEL_IPC",
|
|
],
|
|
static_libs: [
|
|
"libbinder_rpc_single_threaded",
|
|
],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binder_rpc_test_service_single_threaded_no_kernel",
|
|
defaults: [
|
|
"binderRpcTest_service_defaults",
|
|
"binderRpcTest_static_defaults",
|
|
],
|
|
cflags: [
|
|
"-DBINDER_RPC_SINGLE_THREADED",
|
|
],
|
|
static_libs: [
|
|
"libbinder_rpc_single_threaded_no_kernel",
|
|
],
|
|
}
|
|
|
|
cc_binary {
|
|
name: "binderRpcTestService_on_trusty_mock",
|
|
defaults: [
|
|
"trusty_mock_defaults",
|
|
],
|
|
|
|
srcs: [
|
|
"binderRpcTestCommon.cpp",
|
|
"binderRpcTestServiceTrusty.cpp",
|
|
],
|
|
|
|
shared_libs: [
|
|
"libbinder_on_trusty_mock",
|
|
"libbase",
|
|
"libutils",
|
|
"libcutils",
|
|
],
|
|
|
|
static_libs: [
|
|
"binderRpcTestIface-cpp",
|
|
],
|
|
}
|
|
|
|
cc_binary {
|
|
name: "binderRpcTest_on_trusty_mock",
|
|
defaults: [
|
|
"trusty_mock_defaults",
|
|
],
|
|
|
|
srcs: [
|
|
"binderRpcUniversalTests.cpp",
|
|
"binderRpcTestCommon.cpp",
|
|
"binderRpcTestTrusty.cpp",
|
|
],
|
|
|
|
shared_libs: [
|
|
"libbinder_on_trusty_mock",
|
|
"libbase",
|
|
"libutils",
|
|
"libcutils",
|
|
],
|
|
|
|
static_libs: [
|
|
"binderRpcTestIface-cpp",
|
|
"libgtest",
|
|
],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderRpcTest",
|
|
defaults: [
|
|
"binderRpcTest_defaults",
|
|
"binderRpcTest_shared_defaults",
|
|
"libbinder_tls_shared_deps",
|
|
],
|
|
|
|
// Add the Trusty mock library as a fake dependency so it gets built
|
|
required: [
|
|
"libbinder_on_trusty_mock",
|
|
"binderRpcTestService_on_trusty_mock",
|
|
"binderRpcTest_on_trusty_mock",
|
|
],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderRpcTestNoKernel",
|
|
defaults: [
|
|
"binderRpcTest_defaults",
|
|
"binderRpcTest_static_defaults",
|
|
],
|
|
static_libs: [
|
|
"libbinder_rpc_no_kernel",
|
|
],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderRpcTestSingleThreaded",
|
|
defaults: [
|
|
"binderRpcTest_defaults",
|
|
"binderRpcTest_static_defaults",
|
|
],
|
|
cflags: [
|
|
"-DBINDER_RPC_SINGLE_THREADED",
|
|
"-DBINDER_WITH_KERNEL_IPC",
|
|
],
|
|
static_libs: [
|
|
"libbinder_rpc_single_threaded",
|
|
],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderRpcTestSingleThreadedNoKernel",
|
|
defaults: [
|
|
"binderRpcTest_defaults",
|
|
"binderRpcTest_static_defaults",
|
|
],
|
|
cflags: [
|
|
"-DBINDER_RPC_SINGLE_THREADED",
|
|
],
|
|
static_libs: [
|
|
"libbinder_rpc_single_threaded_no_kernel",
|
|
],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderRpcToTrustyTest",
|
|
vendor: true,
|
|
host_supported: false,
|
|
defaults: [
|
|
"binderRpcTest_common_defaults",
|
|
"binderRpcTest_static_defaults",
|
|
],
|
|
|
|
srcs: [
|
|
"binderRpcTest.cpp",
|
|
"binderRpcTestCommon.cpp",
|
|
"binderRpcUniversalTests.cpp",
|
|
],
|
|
|
|
cflags: [
|
|
"-DBINDER_RPC_TO_TRUSTY_TEST",
|
|
],
|
|
|
|
static_libs: [
|
|
// We want to link libbinder statically so we can push the binary
|
|
// to the device for testing independently of the library
|
|
"libbinder_rpc_no_kernel",
|
|
"libbinder_trusty",
|
|
"libtrusty",
|
|
],
|
|
|
|
test_suites: ["device-tests"],
|
|
require_root: true,
|
|
}
|
|
|
|
cc_test {
|
|
name: "RpcTlsUtilsTest",
|
|
host_supported: true,
|
|
target: {
|
|
darwin: {
|
|
enabled: false,
|
|
},
|
|
android: {
|
|
test_suites: ["vts"],
|
|
},
|
|
},
|
|
defaults: [
|
|
"binder_test_defaults",
|
|
"libbinder_tls_shared_deps",
|
|
],
|
|
srcs: [
|
|
"RpcTlsUtilsTest.cpp",
|
|
],
|
|
shared_libs: [
|
|
"libbinder",
|
|
"libbase",
|
|
"libutils",
|
|
"liblog",
|
|
],
|
|
static_libs: [
|
|
"libbinder_tls_test_utils",
|
|
"libbinder_tls_static",
|
|
],
|
|
test_suites: [
|
|
"general-tests",
|
|
"device-tests",
|
|
],
|
|
}
|
|
|
|
cc_benchmark {
|
|
name: "binderRpcBenchmark",
|
|
defaults: [
|
|
"binder_test_defaults",
|
|
"libbinder_tls_shared_deps",
|
|
],
|
|
host_supported: true,
|
|
target: {
|
|
darwin: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
srcs: [
|
|
"binderRpcBenchmark.cpp",
|
|
"IBinderRpcBenchmark.aidl",
|
|
],
|
|
shared_libs: [
|
|
"libbase",
|
|
"libbinder",
|
|
"liblog",
|
|
"libutils",
|
|
],
|
|
static_libs: [
|
|
"libbinder_tls_test_utils",
|
|
"libbinder_tls_static",
|
|
],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderRpcWireProtocolTest",
|
|
host_supported: true,
|
|
target: {
|
|
darwin: {
|
|
enabled: false,
|
|
},
|
|
android: {
|
|
test_suites: ["vts"],
|
|
},
|
|
},
|
|
defaults: [
|
|
"binder_test_defaults",
|
|
],
|
|
srcs: [
|
|
"binderRpcWireProtocolTest.cpp",
|
|
],
|
|
shared_libs: [
|
|
"libbinder",
|
|
"libbase",
|
|
"libutils",
|
|
"libcutils",
|
|
"liblog",
|
|
],
|
|
test_suites: ["general-tests"],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderThroughputTest",
|
|
defaults: ["binder_test_defaults"],
|
|
srcs: ["binderThroughputTest.cpp"],
|
|
shared_libs: [
|
|
"libbinder",
|
|
"libutils",
|
|
],
|
|
cflags: [
|
|
"-g",
|
|
"-Wno-missing-field-initializers",
|
|
"-Wno-sign-compare",
|
|
"-O3",
|
|
],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderTextOutputTest",
|
|
defaults: ["binder_test_defaults"],
|
|
srcs: ["binderTextOutputTest.cpp"],
|
|
shared_libs: [
|
|
"libbinder",
|
|
"libutils",
|
|
"libbase",
|
|
],
|
|
test_suites: ["device-tests"],
|
|
}
|
|
|
|
cc_test {
|
|
name: "schd-dbg",
|
|
defaults: ["binder_test_defaults"],
|
|
srcs: ["schd-dbg.cpp"],
|
|
shared_libs: [
|
|
"libbinder",
|
|
"libutils",
|
|
"libbase",
|
|
],
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderSafeInterfaceTest",
|
|
defaults: ["binder_test_defaults"],
|
|
srcs: ["binderSafeInterfaceTest.cpp"],
|
|
|
|
cppflags: [
|
|
"-Wextra",
|
|
],
|
|
|
|
cpp_std: "experimental",
|
|
gnu_extensions: false,
|
|
|
|
shared_libs: [
|
|
"libbinder",
|
|
"libcutils",
|
|
"liblog",
|
|
"libutils",
|
|
],
|
|
test_suites: [
|
|
"device-tests",
|
|
"vts",
|
|
],
|
|
require_root: true,
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderClearBufTest",
|
|
defaults: ["binder_test_defaults"],
|
|
srcs: [
|
|
"binderClearBufTest.cpp",
|
|
],
|
|
|
|
shared_libs: [
|
|
"libbase",
|
|
"libbinder",
|
|
"liblog",
|
|
"libutils",
|
|
],
|
|
|
|
test_suites: ["general-tests"],
|
|
require_root: true,
|
|
}
|
|
|
|
aidl_interface {
|
|
name: "binderStabilityTestIface",
|
|
unstable: true,
|
|
srcs: [
|
|
"IBinderStabilityTest.aidl",
|
|
],
|
|
backend: {
|
|
java: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderStabilityTest",
|
|
defaults: ["binder_test_defaults"],
|
|
srcs: [
|
|
"binderStabilityTest.cpp",
|
|
],
|
|
|
|
// critical that libbinder/libbinder_ndk are shared for VTS
|
|
shared_libs: [
|
|
"libbinder_ndk",
|
|
"libbinder",
|
|
"liblog",
|
|
"libutils",
|
|
],
|
|
static_libs: [
|
|
"binderStabilityTestIface-cpp",
|
|
"binderStabilityTestIface-ndk",
|
|
],
|
|
|
|
test_suites: [
|
|
"device-tests",
|
|
"vts",
|
|
],
|
|
require_root: true,
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderAllocationLimits",
|
|
defaults: ["binder_test_defaults"],
|
|
srcs: ["binderAllocationLimits.cpp"],
|
|
shared_libs: [
|
|
"libbinder",
|
|
"liblog",
|
|
"libcutils",
|
|
"libutils",
|
|
"libutilscallstack",
|
|
"libbase",
|
|
],
|
|
test_suites: ["device-tests"],
|
|
require_root: true,
|
|
}
|
|
|
|
cc_benchmark {
|
|
name: "binderParcelBenchmark",
|
|
defaults: ["binder_test_defaults"],
|
|
srcs: ["binderParcelBenchmark.cpp"],
|
|
shared_libs: [
|
|
"libbase",
|
|
"libbinder",
|
|
"liblog",
|
|
"libutils",
|
|
],
|
|
}
|
|
|
|
cc_test_host {
|
|
name: "binderUtilsHostTest",
|
|
defaults: ["binder_test_defaults"],
|
|
srcs: ["binderUtilsHostTest.cpp"],
|
|
shared_libs: [
|
|
"libbase",
|
|
"libbinder",
|
|
],
|
|
static_libs: [
|
|
"libgmock",
|
|
],
|
|
test_suites: ["general-tests"],
|
|
target: {
|
|
darwin: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
}
|
|
|
|
cc_test_host {
|
|
name: "binderHostDeviceTest",
|
|
defaults: ["binder_test_defaults"],
|
|
srcs: ["binderHostDeviceTest.cpp"],
|
|
test_config: "binderHostDeviceTest.xml",
|
|
shared_libs: [
|
|
"libbase",
|
|
"libbinder",
|
|
"liblog",
|
|
"libutils",
|
|
],
|
|
static_libs: [
|
|
"libgmock",
|
|
],
|
|
target_required: [
|
|
"binderHostDeviceTestService",
|
|
],
|
|
test_suites: ["general-tests"],
|
|
target: {
|
|
darwin: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
test_options: {
|
|
unit_test: false,
|
|
},
|
|
}
|
|
|
|
cc_test {
|
|
name: "binderHostDeviceTestService",
|
|
// The binary is named differently from the module so that PushFilePreparer pushes the binary
|
|
// directly, not the test module directory.
|
|
stem: "binderHostDeviceTest-service",
|
|
defaults: ["binder_test_defaults"],
|
|
gtest: false,
|
|
auto_gen_config: false,
|
|
srcs: ["binderHostDeviceTestService.cpp"],
|
|
shared_libs: [
|
|
"libbase",
|
|
"libbinder",
|
|
"liblog",
|
|
"libutils",
|
|
],
|
|
test_suites: ["general-tests"],
|
|
}
|
|
|
|
cc_defaults {
|
|
name: "service_fuzzer_defaults",
|
|
static_libs: [
|
|
"libbase",
|
|
"libbinder_random_parcel",
|
|
"libcutils",
|
|
],
|
|
target: {
|
|
android: {
|
|
shared_libs: [
|
|
"libbinder_ndk",
|
|
"libbinder",
|
|
"libutils",
|
|
],
|
|
},
|
|
host: {
|
|
static_libs: [
|
|
"libbinder_ndk",
|
|
"libbinder",
|
|
"libutils",
|
|
],
|
|
},
|
|
darwin: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
fuzz_config: {
|
|
cc: [
|
|
"smoreland@google.com",
|
|
"waghpawan@google.com",
|
|
],
|
|
// Adds bugs to hotlist "AIDL fuzzers bugs" on buganizer
|
|
hotlists: ["4637097"],
|
|
},
|
|
}
|