Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 1 | //######################################################################## |
| 2 | // Build FrameworksNetTests package |
| 3 | //######################################################################## |
| 4 | package { |
| 5 | // See: http://go/android-license-faq |
| 6 | // A large-scale-change added 'default_applicable_licenses' to import |
Baligh Uddin | 2afd098 | 2021-05-24 03:50:01 +0000 | [diff] [blame] | 7 | // all of the 'license_kinds' from "Android-Apache-2.0" |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 8 | // to get the below license kinds: |
| 9 | // SPDX-license-identifier-Apache-2.0 |
Baligh Uddin | 2afd098 | 2021-05-24 03:50:01 +0000 | [diff] [blame] | 10 | default_applicable_licenses: ["Android-Apache-2.0"], |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 11 | } |
| 12 | |
Aaron Huang | 1ed8aff | 2021-09-28 15:37:49 +0800 | [diff] [blame] | 13 | // Whether to enable the FrameworksNetTests. Set to false in the branches that might have older |
| 14 | // frameworks/base since FrameworksNetTests includes the test for classes that are not in |
| 15 | // connectivity module. |
| 16 | enable_frameworks_net_tests = true |
| 17 | // Placeholder |
| 18 | // This is a placeholder comment to minimize merge conflicts, as enable_frameworks_net_tests |
| 19 | // may have different values depending on the branch |
| 20 | // Placeholder |
| 21 | |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 22 | java_defaults { |
| 23 | name: "FrameworksNetTests-jni-defaults", |
| 24 | jni_libs: [ |
| 25 | "ld-android", |
Lorenzo Colitti | 0c26c9e | 2022-01-27 18:40:51 +0900 | [diff] [blame] | 26 | "libandroid_net_frameworktests_util_jni", |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 27 | "libbase", |
| 28 | "libbinder", |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 29 | "libc++", |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 30 | "libcrypto", |
| 31 | "libcutils", |
| 32 | "libdl_android", |
| 33 | "libhidl-gen-utils", |
| 34 | "libhidlbase", |
| 35 | "libjsoncpp", |
| 36 | "liblog", |
| 37 | "liblzma", |
| 38 | "libnativehelper", |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 39 | "libnetdutils", |
Ken Chen | f426b2b | 2022-01-23 15:39:13 +0800 | [diff] [blame] | 40 | "libnetworkstats", |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 41 | "libnetworkstatsfactorytestjni", |
| 42 | "libpackagelistparser", |
| 43 | "libpcre2", |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 44 | "libselinux", |
| 45 | "libtinyxml2", |
| 46 | "libui", |
| 47 | "libunwindstack", |
| 48 | "libutils", |
| 49 | "libutilscallstack", |
| 50 | "libvndksupport", |
| 51 | "libziparchive", |
| 52 | "libz", |
| 53 | "netd_aidl_interface-V5-cpp", |
| 54 | ], |
| 55 | } |
| 56 | |
Aaron Huang | 1ed8aff | 2021-09-28 15:37:49 +0800 | [diff] [blame] | 57 | filegroup { |
| 58 | name: "non-connectivity-module-test", |
| 59 | srcs: [ |
Aaron Huang | 1ed8aff | 2021-09-28 15:37:49 +0800 | [diff] [blame] | 60 | "java/android/net/Ikev2VpnProfileTest.java", |
| 61 | "java/android/net/IpMemoryStoreTest.java", |
Aaron Huang | 1ed8aff | 2021-09-28 15:37:49 +0800 | [diff] [blame] | 62 | "java/android/net/TelephonyNetworkSpecifierTest.java", |
| 63 | "java/android/net/VpnManagerTest.java", |
| 64 | "java/android/net/ipmemorystore/*.java", |
junyulai | a1bb3a3 | 2022-01-25 09:55:24 +0800 | [diff] [blame] | 65 | "java/android/net/netstats/NetworkStatsDataMigrationUtilsTest.kt", |
Aaron Huang | 1ed8aff | 2021-09-28 15:37:49 +0800 | [diff] [blame] | 66 | "java/com/android/internal/net/NetworkUtilsInternalTest.java", |
| 67 | "java/com/android/internal/net/VpnProfileTest.java", |
chiachangwang | 7f5d049 | 2022-06-28 09:15:12 +0000 | [diff] [blame] | 68 | "java/com/android/server/VpnManagerServiceTest.java", |
Aaron Huang | 1ed8aff | 2021-09-28 15:37:49 +0800 | [diff] [blame] | 69 | "java/com/android/server/connectivity/IpConnectivityEventBuilderTest.java", |
| 70 | "java/com/android/server/connectivity/IpConnectivityMetricsTest.java", |
Mark | 53e71c3 | 2023-01-13 07:00:25 +0000 | [diff] [blame] | 71 | "java/com/android/server/connectivity/MetricsTestUtil.java", |
Aaron Huang | 1ed8aff | 2021-09-28 15:37:49 +0800 | [diff] [blame] | 72 | "java/com/android/server/connectivity/MultipathPolicyTrackerTest.java", |
| 73 | "java/com/android/server/connectivity/NetdEventListenerServiceTest.java", |
| 74 | "java/com/android/server/connectivity/VpnTest.java", |
| 75 | "java/com/android/server/net/ipmemorystore/*.java", |
Aaron Huang | 1ed8aff | 2021-09-28 15:37:49 +0800 | [diff] [blame] | 76 | ] |
| 77 | } |
| 78 | |
Remi NGUYEN VAN | f96ecf2 | 2021-11-19 18:26:07 +0900 | [diff] [blame] | 79 | // Subset of services-core used to by ConnectivityService tests to test VPN realistically. |
| 80 | // This is stripped by jarjar (see rules below) from other unrelated classes, so tests do not |
| 81 | // include most classes from services-core, which are unrelated and cause wrong code coverage |
| 82 | // calculations. |
| 83 | java_library { |
| 84 | name: "services.core-vpn", |
| 85 | static_libs: ["services.core"], |
| 86 | jarjar_rules: "vpn-jarjar-rules.txt", |
| 87 | visibility: ["//visibility:private"], |
| 88 | } |
| 89 | |
Remi NGUYEN VAN | 2ba9dbe | 2022-02-01 23:07:33 +0900 | [diff] [blame] | 90 | java_defaults { |
| 91 | name: "FrameworksNetTestsDefaults", |
Remi NGUYEN VAN | 168b3d1 | 2021-06-21 13:36:05 +0000 | [diff] [blame] | 92 | min_sdk_version: "30", |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 93 | defaults: [ |
Remi NGUYEN VAN | 1a8ee10 | 2022-05-30 12:42:24 +0900 | [diff] [blame] | 94 | "framework-connectivity-internal-test-defaults", |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 95 | ], |
| 96 | srcs: [ |
| 97 | "java/**/*.java", |
| 98 | "java/**/*.kt", |
| 99 | ], |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 100 | static_libs: [ |
| 101 | "androidx.test.rules", |
Daniel Peykov | 2bf3a38 | 2022-09-16 16:52:24 +0000 | [diff] [blame] | 102 | "androidx.test.uiautomator_uiautomator", |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 103 | "bouncycastle-repackaged-unbundled", |
Remi NGUYEN VAN | 819045f | 2021-06-07 13:10:49 +0900 | [diff] [blame] | 104 | "core-tests-support", |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 105 | "FrameworksNetCommonTests", |
| 106 | "frameworks-base-testutils", |
| 107 | "frameworks-net-integration-testutils", |
| 108 | "framework-protos", |
| 109 | "mockito-target-minus-junit4", |
| 110 | "net-tests-utils", |
Remi NGUYEN VAN | f96ecf2 | 2021-11-19 18:26:07 +0900 | [diff] [blame] | 111 | "net-utils-services-common", |
Luke Huang | 952a55c | 2021-07-13 11:58:37 +0800 | [diff] [blame] | 112 | "platform-compat-test-rules", |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 113 | "platform-test-annotations", |
| 114 | "service-connectivity-pre-jarjar", |
paulhu | 802ab97 | 2021-12-14 01:30:22 +0000 | [diff] [blame] | 115 | "service-connectivity-tiramisu-pre-jarjar", |
Remi NGUYEN VAN | f96ecf2 | 2021-11-19 18:26:07 +0900 | [diff] [blame] | 116 | "services.core-vpn", |
Aaron Huang | 361e617 | 2023-02-03 17:35:12 +0800 | [diff] [blame] | 117 | "testables", |
Paul Hu | 67db37d | 2022-07-29 01:50:24 +0000 | [diff] [blame] | 118 | "cts-net-utils" |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 119 | ], |
| 120 | libs: [ |
| 121 | "android.net.ipsec.ike.stubs.module_lib", |
| 122 | "android.test.runner", |
| 123 | "android.test.base", |
| 124 | "android.test.mock", |
| 125 | "ServiceConnectivityResources", |
| 126 | ], |
Wei Li | 8a177f6 | 2022-01-14 15:45:18 -0800 | [diff] [blame] | 127 | exclude_kotlinc_generated_files: false, |
Remi NGUYEN VAN | 168b3d1 | 2021-06-21 13:36:05 +0000 | [diff] [blame] | 128 | } |
| 129 | |
Remi NGUYEN VAN | 2ba9dbe | 2022-02-01 23:07:33 +0900 | [diff] [blame] | 130 | android_library { |
| 131 | name: "FrameworksNetTestsLib", |
| 132 | defaults: [ |
| 133 | "FrameworksNetTestsDefaults", |
| 134 | ], |
| 135 | exclude_srcs: [":non-connectivity-module-test"], |
| 136 | visibility: ["//packages/modules/Connectivity/tests:__subpackages__"], |
| 137 | } |
| 138 | |
Mark | 53e71c3 | 2023-01-13 07:00:25 +0000 | [diff] [blame] | 139 | genrule { |
| 140 | name: "frameworks-net-tests-jarjar-rules", |
| 141 | defaults: ["jarjar-rules-combine-defaults"], |
| 142 | srcs: [ |
| 143 | ":frameworks-net-tests-lib-jarjar-gen", |
| 144 | // This is necessary because the tests use framework-connectivity-internal-test-defaults, |
| 145 | // which require the user to use connectivity jarjar rules. |
| 146 | ":connectivity-jarjar-rules", |
| 147 | ], |
| 148 | out: ["frameworks-net-tests-jarjar-rules.txt"], |
| 149 | visibility: ["//packages/modules/Connectivity/tests:__subpackages__"], |
| 150 | } |
| 151 | |
| 152 | java_genrule { |
| 153 | name: "frameworks-net-tests-lib-jarjar-gen", |
| 154 | tool_files: [ |
| 155 | ":FrameworksNetTestsLib{.jar}", |
| 156 | "jarjar-excludes.txt", |
| 157 | ], |
| 158 | tools: [ |
| 159 | "jarjar-rules-generator", |
| 160 | ], |
| 161 | out: ["frameworks-net-tests-lib-jarjar-rules.txt"], |
| 162 | cmd: "$(location jarjar-rules-generator) " + |
| 163 | "$(location :FrameworksNetTestsLib{.jar}) " + |
| 164 | "--prefix android.net.connectivity " + |
| 165 | "--excludes $(location jarjar-excludes.txt) " + |
| 166 | "--output $(out)", |
| 167 | visibility: ["//visibility:private"], |
| 168 | } |
| 169 | |
Remi NGUYEN VAN | 168b3d1 | 2021-06-21 13:36:05 +0000 | [diff] [blame] | 170 | android_test { |
| 171 | name: "FrameworksNetTests", |
Aaron Huang | 1ed8aff | 2021-09-28 15:37:49 +0800 | [diff] [blame] | 172 | enabled: enable_frameworks_net_tests, |
Remi NGUYEN VAN | 168b3d1 | 2021-06-21 13:36:05 +0000 | [diff] [blame] | 173 | defaults: [ |
Remi NGUYEN VAN | 2ba9dbe | 2022-02-01 23:07:33 +0900 | [diff] [blame] | 174 | "FrameworksNetTestsDefaults", |
Remi NGUYEN VAN | 168b3d1 | 2021-06-21 13:36:05 +0000 | [diff] [blame] | 175 | "FrameworksNetTests-jni-defaults", |
| 176 | ], |
Mark | 53e71c3 | 2023-01-13 07:00:25 +0000 | [diff] [blame] | 177 | jarjar_rules: ":frameworks-net-tests-jarjar-rules", |
Remi NGUYEN VAN | 168b3d1 | 2021-06-21 13:36:05 +0000 | [diff] [blame] | 178 | test_suites: ["device-tests"], |
| 179 | static_libs: [ |
Remi NGUYEN VAN | f96ecf2 | 2021-11-19 18:26:07 +0900 | [diff] [blame] | 180 | "services.core", |
| 181 | "services.net", |
Aaron Huang | 1ed8aff | 2021-09-28 15:37:49 +0800 | [diff] [blame] | 182 | ], |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 183 | jni_libs: [ |
Remi NGUYEN VAN | d950489 | 2022-02-02 13:03:29 +0900 | [diff] [blame] | 184 | "libandroid_net_connectivity_com_android_net_module_util_jni", |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 185 | "libservice-connectivity", |
Remi NGUYEN VAN | 2ba9dbe | 2022-02-01 23:07:33 +0900 | [diff] [blame] | 186 | ], |
Remi NGUYEN VAN | 678277c | 2021-05-11 13:37:06 +0000 | [diff] [blame] | 187 | } |