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        ":FrameworksCoreTestDoubles-sources",
24    ],
25
26    aidl: {
27        generate_get_transaction_name: true,
28        local_include_dirs: ["aidl"],
29    },
30
31    dxflags: ["--core-library"],
32
33    aaptflags: [
34        "-0 .dat",
35        "-0 .gld",
36        "-c fa",
37    ],
38    static_libs: [
39        "collector-device-lib-platform",
40        "frameworks-base-testutils",
41        "core-test-rules", // for libcore.dalvik.system.CloseGuardSupport
42        "core-tests-support",
43        "android-common",
44        "frameworks-core-util-lib",
45        "mockwebserver",
46        "guava",
47        "androidx.core_core",
48        "androidx.core_core-ktx",
49        "androidx.test.espresso.core",
50        "androidx.test.ext.junit",
51        "androidx.test.runner",
52        "androidx.test.rules",
53        "junit-params",
54        "kotlin-test",
55        "mockito-target-minus-junit4",
56        "ub-uiautomator",
57        "platform-test-annotations",
58        "platform-compat-test-rules",
59        "truth-prebuilt",
60        "print-test-util-lib",
61        "testng",
62        "servicestests-utils",
63        "device-time-shell-utils",
64    ],
65
66    libs: [
67        "android.test.runner",
68        "testables",
69        "org.apache.http.legacy",
70        "android.test.base",
71        "android.test.mock",
72        "framework",
73        "ext",
74        "framework-res",
75    ],
76    jni_libs: [
77        "libpowermanagertest_jni",
78        "libworksourceparceltest_jni",
79    ],
80
81    sdk_version: "core_platform",
82    test_suites: [
83        "device-tests",
84        "automotive-tests",
85    ],
86
87    certificate: "platform",
88
89    resource_dirs: ["res"],
90    resource_zips: [":FrameworksCoreTests_apks_as_resources"],
91    java_resources: [":ApkVerityTestCertDer"],
92
93    data: [
94        ":BstatsTestApp",
95        ":BinderDeathRecipientHelperApp1",
96        ":BinderDeathRecipientHelperApp2",
97        ":com.android.cts.helpers.aosp",
98    ],
99}
100
101// Rules to copy all the test apks to the intermediate raw resource directory
102java_genrule {
103    name: "FrameworksCoreTests_apks_as_resources",
104    srcs: [
105        ":FrameworksCoreTests_install_jni_lib_open_from_apk",
106        ":FrameworksCoreTests_install_verifier_bad",
107        ":FrameworksCoreTests_install_verifier_good",
108        ":FrameworksCoreTests_locales",
109        ":FrameworksCoreTests_overlay_config",
110        ":FrameworksCoreTests_version_1",
111        ":FrameworksCoreTests_version_1_diff",
112        ":FrameworksCoreTests_version_1_nosys",
113        ":FrameworksCoreTests_version_2",
114        ":FrameworksCoreTests_version_2_diff",
115        ":FrameworksCoreTests_version_3",
116    ],
117    out: ["FrameworkCoreTests_apks_as_resources.res.zip"],
118    tools: ["soong_zip"],
119
120    cmd: "mkdir -p $(genDir)/res/raw && " +
121        "for i in $(in); do " +
122        "  x=$${i##*FrameworksCoreTests_}; echo $${x}; cp $$i $(genDir)/res/raw/$${x%.apk};" +
123        "done && " +
124        "$(location soong_zip) -o $(out) -C $(genDir)/res -D $(genDir)/res",
125}
126
127// In addition to running as part of FrameworksCoreTests, we run (a subclass of)
128// ChooserActivityTest against the unbundled ChooserActivity implementation in
129// //packages/modules/IntentResolver/. The following library provides the
130// minimum dependencies required to build that test in the unbundled package.
131android_library {
132    name: "ChooserActivityTestsLib",
133    visibility: ["//packages/modules/IntentResolver/java/tests:__pkg__"],
134
135    srcs: [
136        "src/com/android/internal/app/ChooserActivityLoggerFake.java",
137        "src/com/android/internal/app/ChooserActivityOverrideData.java",
138        "src/com/android/internal/app/ChooserActivityTest.java",
139        "src/com/android/internal/app/ChooserWrapperActivity.java",
140        "src/com/android/internal/app/IChooserWrapper.java",
141        "src/com/android/internal/app/MatcherUtils.java",
142        "src/com/android/internal/app/ResolverDataProvider.java",
143    ],
144
145    static_libs: [
146        "androidx.test.espresso.core",
147        "androidx.test.ext.junit",
148        "androidx.test.runner",
149        "androidx.test.rules",
150        "mockito-target-minus-junit4",
151        "truth-prebuilt",
152    ],
153
154    libs: [
155        "android.test.runner",
156        "android.test.base",
157        "android.test.mock",
158        "framework",
159        "framework-res",
160    ],
161}
162