blob: 4a1298f86f10416c5061e6a35beb976b8625e730 [file] [log] [blame]
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +00001//########################################################################
2// Build FrameworksNetTests package
3//########################################################################
4package {
Aditya Choudhary01b5ede2024-01-31 11:08:57 +00005 default_team: "trendy_team_fwk_core_networking",
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +00006 // See: http://go/android-license-faq
7 // A large-scale-change added 'default_applicable_licenses' to import
Baligh Uddin2afd0982021-05-24 03:50:01 +00008 // all of the 'license_kinds' from "Android-Apache-2.0"
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +00009 // to get the below license kinds:
10 // SPDX-license-identifier-Apache-2.0
Baligh Uddin2afd0982021-05-24 03:50:01 +000011 default_applicable_licenses: ["Android-Apache-2.0"],
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +000012}
13
Aaron Huang1ed8aff2021-09-28 15:37:49 +080014// Whether to enable the FrameworksNetTests. Set to false in the branches that might have older
15// frameworks/base since FrameworksNetTests includes the test for classes that are not in
16// connectivity module.
17enable_frameworks_net_tests = true
18// Placeholder
19// This is a placeholder comment to minimize merge conflicts, as enable_frameworks_net_tests
20// may have different values depending on the branch
21// Placeholder
22
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +000023java_defaults {
24 name: "FrameworksNetTests-jni-defaults",
25 jni_libs: [
26 "ld-android",
Lorenzo Colitti0c26c9e2022-01-27 18:40:51 +090027 "libandroid_net_frameworktests_util_jni",
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +000028 "libbase",
29 "libbinder",
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +000030 "libc++",
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +000031 "libcrypto",
32 "libcutils",
33 "libdl_android",
34 "libhidl-gen-utils",
35 "libhidlbase",
36 "libjsoncpp",
37 "liblog",
38 "liblzma",
39 "libnativehelper",
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +000040 "libnetdutils",
Ken Chenf426b2b2022-01-23 15:39:13 +080041 "libnetworkstats",
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +000042 "libnetworkstatsfactorytestjni",
43 "libpackagelistparser",
44 "libpcre2",
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +000045 "libselinux",
46 "libtinyxml2",
47 "libui",
48 "libunwindstack",
49 "libutils",
50 "libutilscallstack",
51 "libvndksupport",
52 "libziparchive",
53 "libz",
54 "netd_aidl_interface-V5-cpp",
55 ],
56}
57
Aaron Huang1ed8aff2021-09-28 15:37:49 +080058filegroup {
59 name: "non-connectivity-module-test",
60 srcs: [
Aaron Huang1ed8aff2021-09-28 15:37:49 +080061 "java/android/net/Ikev2VpnProfileTest.java",
62 "java/android/net/IpMemoryStoreTest.java",
Aaron Huang1ed8aff2021-09-28 15:37:49 +080063 "java/android/net/TelephonyNetworkSpecifierTest.java",
64 "java/android/net/VpnManagerTest.java",
65 "java/android/net/ipmemorystore/*.java",
junyulaia1bb3a32022-01-25 09:55:24 +080066 "java/android/net/netstats/NetworkStatsDataMigrationUtilsTest.kt",
Aaron Huang1ed8aff2021-09-28 15:37:49 +080067 "java/com/android/internal/net/NetworkUtilsInternalTest.java",
68 "java/com/android/internal/net/VpnProfileTest.java",
chiachangwang7f5d0492022-06-28 09:15:12 +000069 "java/com/android/server/VpnManagerServiceTest.java",
Aaron Huang1ed8aff2021-09-28 15:37:49 +080070 "java/com/android/server/connectivity/IpConnectivityEventBuilderTest.java",
71 "java/com/android/server/connectivity/IpConnectivityMetricsTest.java",
Mark53e71c32023-01-13 07:00:25 +000072 "java/com/android/server/connectivity/MetricsTestUtil.java",
Aaron Huang1ed8aff2021-09-28 15:37:49 +080073 "java/com/android/server/connectivity/MultipathPolicyTrackerTest.java",
74 "java/com/android/server/connectivity/NetdEventListenerServiceTest.java",
75 "java/com/android/server/connectivity/VpnTest.java",
76 "java/com/android/server/net/ipmemorystore/*.java",
Aditya Choudhary01b5ede2024-01-31 11:08:57 +000077 ],
Aaron Huang1ed8aff2021-09-28 15:37:49 +080078}
79
Remi NGUYEN VANf96ecf22021-11-19 18:26:07 +090080// Subset of services-core used to by ConnectivityService tests to test VPN realistically.
81// This is stripped by jarjar (see rules below) from other unrelated classes, so tests do not
82// include most classes from services-core, which are unrelated and cause wrong code coverage
83// calculations.
84java_library {
85 name: "services.core-vpn",
86 static_libs: ["services.core"],
87 jarjar_rules: "vpn-jarjar-rules.txt",
88 visibility: ["//visibility:private"],
89}
90
Remi NGUYEN VAN2ba9dbe2022-02-01 23:07:33 +090091java_defaults {
92 name: "FrameworksNetTestsDefaults",
Remi NGUYEN VAN168b3d12021-06-21 13:36:05 +000093 min_sdk_version: "30",
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +000094 defaults: [
Remi NGUYEN VAN1a8ee102022-05-30 12:42:24 +090095 "framework-connectivity-internal-test-defaults",
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +000096 ],
97 srcs: [
98 "java/**/*.java",
99 "java/**/*.kt",
100 ],
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +0000101 static_libs: [
102 "androidx.test.rules",
Daniel Peykov2bf3a382022-09-16 16:52:24 +0000103 "androidx.test.uiautomator_uiautomator",
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +0000104 "bouncycastle-repackaged-unbundled",
Remi NGUYEN VAN819045f2021-06-07 13:10:49 +0900105 "core-tests-support",
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +0000106 "FrameworksNetCommonTests",
107 "frameworks-base-testutils",
108 "frameworks-net-integration-testutils",
109 "framework-protos",
110 "mockito-target-minus-junit4",
111 "net-tests-utils",
Remi NGUYEN VANf96ecf22021-11-19 18:26:07 +0900112 "net-utils-services-common",
Luke Huang952a55c2021-07-13 11:58:37 +0800113 "platform-compat-test-rules",
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +0000114 "platform-test-annotations",
115 "service-connectivity-pre-jarjar",
paulhu802ab972021-12-14 01:30:22 +0000116 "service-connectivity-tiramisu-pre-jarjar",
Remi NGUYEN VANf96ecf22021-11-19 18:26:07 +0900117 "services.core-vpn",
Aaron Huang361e6172023-02-03 17:35:12 +0800118 "testables",
Aditya Choudhary01b5ede2024-01-31 11:08:57 +0000119 "cts-net-utils",
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +0000120 ],
121 libs: [
122 "android.net.ipsec.ike.stubs.module_lib",
123 "android.test.runner",
124 "android.test.base",
125 "android.test.mock",
126 "ServiceConnectivityResources",
127 ],
Wei Li8a177f62022-01-14 15:45:18 -0800128 exclude_kotlinc_generated_files: false,
Remi NGUYEN VAN168b3d12021-06-21 13:36:05 +0000129}
130
Remi NGUYEN VAN2ba9dbe2022-02-01 23:07:33 +0900131android_library {
132 name: "FrameworksNetTestsLib",
133 defaults: [
134 "FrameworksNetTestsDefaults",
135 ],
136 exclude_srcs: [":non-connectivity-module-test"],
137 visibility: ["//packages/modules/Connectivity/tests:__subpackages__"],
138}
139
Mark53e71c32023-01-13 07:00:25 +0000140genrule {
141 name: "frameworks-net-tests-jarjar-rules",
142 defaults: ["jarjar-rules-combine-defaults"],
143 srcs: [
144 ":frameworks-net-tests-lib-jarjar-gen",
145 // This is necessary because the tests use framework-connectivity-internal-test-defaults,
146 // which require the user to use connectivity jarjar rules.
147 ":connectivity-jarjar-rules",
148 ],
149 out: ["frameworks-net-tests-jarjar-rules.txt"],
150 visibility: ["//packages/modules/Connectivity/tests:__subpackages__"],
151}
152
153java_genrule {
154 name: "frameworks-net-tests-lib-jarjar-gen",
155 tool_files: [
156 ":FrameworksNetTestsLib{.jar}",
157 "jarjar-excludes.txt",
158 ],
159 tools: [
160 "jarjar-rules-generator",
161 ],
162 out: ["frameworks-net-tests-lib-jarjar-rules.txt"],
163 cmd: "$(location jarjar-rules-generator) " +
164 "$(location :FrameworksNetTestsLib{.jar}) " +
165 "--prefix android.net.connectivity " +
166 "--excludes $(location jarjar-excludes.txt) " +
167 "--output $(out)",
168 visibility: ["//visibility:private"],
169}
170
Remi NGUYEN VAN168b3d12021-06-21 13:36:05 +0000171android_test {
172 name: "FrameworksNetTests",
Aaron Huang1ed8aff2021-09-28 15:37:49 +0800173 enabled: enable_frameworks_net_tests,
Remi NGUYEN VAN168b3d12021-06-21 13:36:05 +0000174 defaults: [
Remi NGUYEN VAN2ba9dbe2022-02-01 23:07:33 +0900175 "FrameworksNetTestsDefaults",
Remi NGUYEN VAN168b3d12021-06-21 13:36:05 +0000176 "FrameworksNetTests-jni-defaults",
177 ],
Mark53e71c32023-01-13 07:00:25 +0000178 jarjar_rules: ":frameworks-net-tests-jarjar-rules",
Remi NGUYEN VAN168b3d12021-06-21 13:36:05 +0000179 test_suites: ["device-tests"],
180 static_libs: [
Remi NGUYEN VANf96ecf22021-11-19 18:26:07 +0900181 "services.core",
182 "services.net",
Aaron Huang1ed8aff2021-09-28 15:37:49 +0800183 ],
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +0000184 jni_libs: [
Remi NGUYEN VANd9504892022-02-02 13:03:29 +0900185 "libandroid_net_connectivity_com_android_net_module_util_jni",
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +0000186 "libservice-connectivity",
Remi NGUYEN VAN2ba9dbe2022-02-01 23:07:33 +0900187 ],
Remi NGUYEN VAN678277c2021-05-11 13:37:06 +0000188}