1//######################################################################## 2// Build FrameworksNetTests package 3//######################################################################## 4package { 5 // See: http://go/android-license-faq 6 // A large-scale-change added 'default_applicable_licenses' to import 7 // all of the 'license_kinds' from "Android-Apache-2.0" 8 // to get the below license kinds: 9 // SPDX-license-identifier-Apache-2.0 10 default_applicable_licenses: ["Android-Apache-2.0"], 11} 12 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. 16enable_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 22java_defaults { 23 name: "FrameworksNetTests-jni-defaults", 24 jni_libs: [ 25 "ld-android", 26 "libandroid_net_frameworktests_util_jni", 27 "libbase", 28 "libbinder", 29 "libbpf_bcc", 30 "libc++", 31 "libcrypto", 32 "libcutils", 33 "libdl_android", 34 "libhidl-gen-utils", 35 "libhidlbase", 36 "libjsoncpp", 37 "liblog", 38 "liblzma", 39 "libnativehelper", 40 "libnetdutils", 41 "libnetworkstats", 42 "libnetworkstatsfactorytestjni", 43 "libpackagelistparser", 44 "libpcre2", 45 "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 58filegroup { 59 name: "non-connectivity-module-test", 60 srcs: [ 61 "java/android/app/usage/*.java", 62 "java/android/net/EthernetNetworkUpdateRequestTest.java", 63 "java/android/net/Ikev2VpnProfileTest.java", 64 "java/android/net/IpMemoryStoreTest.java", 65 "java/android/net/IpSecAlgorithmTest.java", 66 "java/android/net/IpSecConfigTest.java", 67 "java/android/net/IpSecManagerTest.java", 68 "java/android/net/IpSecTransformTest.java", 69 "java/android/net/KeepalivePacketDataUtilTest.java", 70 "java/android/net/NetworkIdentitySetTest.kt", 71 "java/android/net/NetworkIdentityTest.kt", 72 "java/android/net/NetworkStats*.java", 73 "java/android/net/NetworkTemplateTest.kt", 74 "java/android/net/TelephonyNetworkSpecifierTest.java", 75 "java/android/net/VpnManagerTest.java", 76 "java/android/net/ipmemorystore/*.java", 77 "java/android/net/netstats/NetworkStatsDataMigrationUtilsTest.kt", 78 "java/android/net/nsd/*.java", 79 "java/com/android/internal/net/NetworkUtilsInternalTest.java", 80 "java/com/android/internal/net/VpnProfileTest.java", 81 "java/com/android/server/IpSecServiceParameterizedTest.java", 82 "java/com/android/server/IpSecServiceRefcountedResourceTest.java", 83 "java/com/android/server/IpSecServiceTest.java", 84 "java/com/android/server/NetworkManagementServiceTest.java", 85 "java/com/android/server/NsdServiceTest.java", 86 "java/com/android/server/connectivity/IpConnectivityEventBuilderTest.java", 87 "java/com/android/server/connectivity/IpConnectivityMetricsTest.java", 88 "java/com/android/server/connectivity/MultipathPolicyTrackerTest.java", 89 "java/com/android/server/connectivity/NetdEventListenerServiceTest.java", 90 "java/com/android/server/connectivity/VpnTest.java", 91 "java/com/android/server/ethernet/*.java", 92 "java/com/android/server/net/ipmemorystore/*.java", 93 "java/com/android/server/net/BpfInterfaceMapUpdaterTest.java", 94 "java/com/android/server/net/IpConfigStoreTest.java", 95 "java/com/android/server/net/NetworkStats*.java", 96 "java/com/android/server/net/TestableUsageCallback.kt", 97 ] 98} 99 100// Subset of services-core used to by ConnectivityService tests to test VPN realistically. 101// This is stripped by jarjar (see rules below) from other unrelated classes, so tests do not 102// include most classes from services-core, which are unrelated and cause wrong code coverage 103// calculations. 104java_library { 105 name: "services.core-vpn", 106 static_libs: ["services.core"], 107 jarjar_rules: "vpn-jarjar-rules.txt", 108 visibility: ["//visibility:private"], 109} 110 111java_defaults { 112 name: "FrameworksNetTestsDefaults", 113 min_sdk_version: "30", 114 defaults: [ 115 "framework-connectivity-internal-test-defaults", 116 ], 117 srcs: [ 118 "java/**/*.java", 119 "java/**/*.kt", 120 ], 121 static_libs: [ 122 "androidx.test.rules", 123 "androidx.test.uiautomator", 124 "bouncycastle-repackaged-unbundled", 125 "core-tests-support", 126 "FrameworksNetCommonTests", 127 "frameworks-base-testutils", 128 "frameworks-net-integration-testutils", 129 "framework-protos", 130 "mockito-target-minus-junit4", 131 "net-tests-utils", 132 "net-utils-services-common", 133 "platform-compat-test-rules", 134 "platform-test-annotations", 135 "service-connectivity-pre-jarjar", 136 "service-connectivity-tiramisu-pre-jarjar", 137 "services.core-vpn", 138 "cts-net-utils" 139 ], 140 libs: [ 141 "android.net.ipsec.ike.stubs.module_lib", 142 "android.test.runner", 143 "android.test.base", 144 "android.test.mock", 145 "ServiceConnectivityResources", 146 ], 147 exclude_kotlinc_generated_files: false, 148} 149 150android_library { 151 name: "FrameworksNetTestsLib", 152 defaults: [ 153 "FrameworksNetTestsDefaults", 154 ], 155 exclude_srcs: [":non-connectivity-module-test"], 156 visibility: ["//packages/modules/Connectivity/tests:__subpackages__"], 157} 158 159android_test { 160 name: "FrameworksNetTests", 161 enabled: enable_frameworks_net_tests, 162 defaults: [ 163 "FrameworksNetTestsDefaults", 164 "FrameworksNetTests-jni-defaults", 165 ], 166 jarjar_rules: ":connectivity-jarjar-rules", 167 test_suites: ["device-tests"], 168 static_libs: [ 169 "services.core", 170 "services.net", 171 ], 172 jni_libs: [ 173 "libandroid_net_connectivity_com_android_net_module_util_jni", 174 "libservice-connectivity", 175 "libandroid_net_connectivity_com_android_net_module_util_jni", 176 ], 177} 178