1// Copyright (C) 2021 The Android Open Source Project 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15package { 16 default_team: "trendy_team_fwk_core_networking", 17 default_applicable_licenses: ["Android-Apache-2.0"], 18} 19 20java_library { 21 name: "net-tests-utils", 22 srcs: [ 23 "devicetests/**/*.java", 24 "devicetests/**/*.kt", 25 ], 26 defaults: [ 27 "framework-connectivity-test-defaults", 28 "lib_mockito_extended", 29 ], 30 libs: [ 31 "androidx.annotation_annotation", 32 "net-utils-device-common-bpf", // TestBpfMap extends IBpfMap. 33 ], 34 static_libs: [ 35 "androidx.test.ext.junit", 36 "collector-device-lib", 37 "kotlin-reflect", 38 "libnanohttpd", 39 "net-tests-utils-host-device-common", 40 "net-utils-device-common", 41 "net-utils-device-common-async", 42 "net-utils-device-common-netlink", 43 "net-utils-device-common-struct", 44 "net-utils-device-common-struct-base", 45 "net-utils-device-common-wear", 46 "modules-utils-build_system", 47 ], 48 lint: { 49 strict_updatability_linting: true, 50 }, 51} 52 53java_library { 54 // Consider using net-tests-utils instead if writing device code. 55 // That library has a lot more useful tools into it for users that 56 // work on Android and includes this lib. 57 name: "net-tests-utils-host-device-common", 58 srcs: [ 59 "hostdevice/**/*.java", 60 "hostdevice/**/*.kt", 61 ], 62 host_supported: true, 63 visibility: [ 64 "//packages/modules/Connectivity/staticlibs/tests:__subpackages__", 65 "//packages/modules/Connectivity/staticlibs/client-libs/tests:__subpackages__", 66 "//packages/modules/Connectivity/tests/cts/hostside", 67 ], 68 // There are downstream branches using an old version of Kotlin 69 // that used to reserve the right to make breaking changes to the 70 // Result type and disallowed returning an instance of it. 71 // Later versions allowed this and there was never a change, 72 // so no matter the version returning Result is always fine, 73 // but on sc-mainline-prod the compiler rejects it without 74 // the following flag. 75 kotlincflags: ["-Xallow-result-return-type"], 76 libs: [ 77 "jsr305", 78 ], 79 static_libs: [ 80 "kotlin-test", 81 ], 82 lint: { 83 strict_updatability_linting: true, 84 }, 85} 86 87java_test_host { 88 name: "net-tests-utils-host-common", 89 srcs: [ 90 "host/java/**/*.java", 91 "host/java/**/*.kt", 92 ], 93 libs: ["tradefed"], 94 test_suites: [ 95 "ats", 96 "device-tests", 97 "general-tests", 98 "cts", 99 "mts-networking", 100 "mts-tethering", 101 "mcts-tethering", 102 ], 103 device_common_data: [":ConnectivityTestPreparer"], 104} 105 106python_library_host { 107 name: "net-tests-utils-host-python-common", 108 srcs: [ 109 "host/python/*.py", 110 ], 111 pkg_path: "net_tests_utils", 112} 113