1package {
2    // See: http://go/android-license-faq
3    // A large-scale-change added 'default_applicable_licenses' to import
4    // all of the 'license_kinds' from "frameworks_base_license"
5    // to get the below license kinds:
6    //   SPDX-license-identifier-Apache-2.0
7    default_applicable_licenses: ["frameworks_base_license"],
8}
9
10android_test {
11    name: "FrameworksCoreTests",
12
13    srcs: [
14        "src/**/*.java",
15        "src/**/*.kt",
16        "src/**/I*.aidl",
17        "DisabledTestApp/src/**/*.java",
18        "EnabledTestApp/src/**/*.java",
19        "BinderProxyCountingTestApp/src/**/*.java",
20        "BinderProxyCountingTestService/src/**/*.java",
21        "BinderDeathRecipientHelperApp/src/**/*.java",
22        "aidl/**/I*.aidl",
23    ],
24
25    aidl: {
26        local_include_dirs: ["aidl"],
27    },
28
29    dxflags: ["--core-library"],
30
31    aaptflags: [
32        "-0 .dat",
33        "-0 .gld",
34        "-c fa",
35    ],
36    static_libs: [
37        "frameworks-base-testutils",
38        "core-test-rules", // for libcore.dalvik.system.CloseGuardSupport
39        "core-tests-support",
40        "android-common",
41        "frameworks-core-util-lib",
42        "mockwebserver",
43        "guava",
44        "androidx.core_core",
45        "androidx.test.espresso.core",
46        "androidx.test.ext.junit",
47        "androidx.test.runner",
48        "androidx.test.rules",
49        "mockito-target-minus-junit4",
50        "ub-uiautomator",
51        "platform-test-annotations",
52        "platform-compat-test-rules",
53        "truth-prebuilt",
54        "print-test-util-lib",
55        "testng",
56        "servicestests-utils",
57        "AppSearchTestUtils",
58    ],
59
60    libs: [
61        "android.test.runner",
62        "testables",
63        "org.apache.http.legacy",
64        "android.test.base",
65        "android.test.mock",
66        "framework",
67        "ext",
68        "framework-res",
69    ],
70    jni_libs: [
71        "libpowermanagertest_jni",
72    ],
73
74    platform_apis: true,
75    sdk_version: "core_platform",
76    test_suites: ["device-tests"],
77
78    certificate: "platform",
79
80    resource_dirs: ["res"],
81    resource_zips: [":FrameworksCoreTests_apks_as_resources"],
82
83    data: [
84        ":BstatsTestApp",
85        ":BinderDeathRecipientHelperApp1",
86        ":BinderDeathRecipientHelperApp2",
87    ],
88    required: ["com.android.cts.helpers.aosp"],
89}
90
91// Rules to copy all the test apks to the intermediate raw resource directory
92java_genrule {
93    name: "FrameworksCoreTests_apks_as_resources",
94    srcs: [
95        ":FrameworksCoreTests_install",
96        ":FrameworksCoreTests_install_bad_dex",
97        ":FrameworksCoreTests_install_complete_package_info",
98        ":FrameworksCoreTests_install_decl_perm",
99        ":FrameworksCoreTests_install_jni_lib_open_from_apk",
100        ":FrameworksCoreTests_install_loc_auto",
101        ":FrameworksCoreTests_install_loc_internal",
102        ":FrameworksCoreTests_install_loc_sdcard",
103        ":FrameworksCoreTests_install_loc_unspecified",
104        ":FrameworksCoreTests_install_use_perm_good",
105        ":FrameworksCoreTests_install_uses_feature",
106        ":FrameworksCoreTests_install_verifier_bad",
107        ":FrameworksCoreTests_install_verifier_good",
108        ":FrameworksCoreTests_keyset_permdef_sa_unone",
109        ":FrameworksCoreTests_keyset_permuse_sa_ua_ub",
110        ":FrameworksCoreTests_keyset_permuse_sb_ua_ub",
111        ":FrameworksCoreTests_keyset_sab_ua",
112        ":FrameworksCoreTests_keyset_sa_ua",
113        ":FrameworksCoreTests_keyset_sa_uab",
114        ":FrameworksCoreTests_keyset_sa_ua_ub",
115        ":FrameworksCoreTests_keyset_sa_ub",
116        ":FrameworksCoreTests_keyset_sa_unone",
117        ":FrameworksCoreTests_keyset_sau_ub",
118        ":FrameworksCoreTests_keyset_sb_ua",
119        ":FrameworksCoreTests_keyset_sb_ub",
120        ":FrameworksCoreTests_keyset_splata_api",
121        ":FrameworksCoreTests_keyset_splat_api",
122        ":FrameworksCoreTests_locales",
123        ":FrameworksCoreTests_overlay_config",
124        ":FrameworksCoreTests_version_1",
125        ":FrameworksCoreTests_version_1_diff",
126        ":FrameworksCoreTests_version_1_nosys",
127        ":FrameworksCoreTests_version_2",
128        ":FrameworksCoreTests_version_2_diff",
129        ":FrameworksCoreTests_version_3",
130    ],
131    out: ["FrameworkCoreTests_apks_as_resources.res.zip"],
132    tools: ["soong_zip"],
133
134    cmd: "mkdir -p $(genDir)/res/raw && " +
135        "for i in $(in); do " +
136        "  x=$${i##*FrameworksCoreTests_}; echo $${x}; cp $$i $(genDir)/res/raw/$${x%.apk};" +
137        "done && " +
138        "$(location soong_zip) -o $(out) -C $(genDir)/res -D $(genDir)/res",
139}
140