From 173f8b129d7f20786f69aabdc56f647e04301061 Mon Sep 17 00:00:00 2001 From: Remi NGUYEN VAN Date: Tue, 16 Mar 2021 01:31:07 +0000 Subject: [PATCH] Add framework-connectivity-test-defaults The defaults follow the same pattern as framework-wifi-test-defaults to allow unit tests to build against hidden API in Connectivity. Bug: 171540887 Test: m Change-Id: I58bb6574f7e95053e4a95f76d1025506749ec2b8 --- framework/Android.bp | 11 ++++++++++- test/Android.bp | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 test/Android.bp diff --git a/framework/Android.bp b/framework/Android.bp index 74cecdd351..609455f27b 100644 --- a/framework/Android.bp +++ b/framework/Android.bp @@ -121,7 +121,16 @@ java_sdk_library { "//packages/modules/Connectivity/service", "//frameworks/base/packages/Connectivity/service", "//frameworks/base", - "//packages/modules/Connectivity/Tethering/tests/unit", + + // Tests using hidden APIs + "//external/sl4a:__subpackages__", + "//frameworks/base/tests/net:__subpackages__", + "//frameworks/libs/net/common/testutils", + "//frameworks/libs/net/common/tests:__subpackages__", + "//frameworks/opt/telephony/tests/telephonytests", + "//packages/modules/Connectivity/Tethering/tests:__subpackages__", + "//packages/modules/Connectivity/tests:__subpackages__", + "//packages/modules/NetworkStack/tests:__subpackages__", ], apex_available: [ "com.android.tethering", diff --git a/test/Android.bp b/test/Android.bp new file mode 100644 index 0000000000..a6cad2e7fa --- /dev/null +++ b/test/Android.bp @@ -0,0 +1,38 @@ +// +// Copyright (C) 2021 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +package { + default_applicable_licenses: ["frameworks_base_license"], +} + +// defaults for tests that need to build against framework-connectivity's @hide APIs +// Only usable from targets that have visibility on framework-connectivity.impl. +// Instead of using this, consider avoiding to depend on hidden connectivity APIs in +// tests. +java_defaults { + name: "framework-connectivity-test-defaults", + sdk_version: "core_platform", // tests can use @CorePlatformApi's + libs: [ + // order matters: classes in framework-connectivity are resolved before framework, + // meaning @hide APIs in framework-connectivity are resolved before @SystemApi + // stubs in framework + "framework-connectivity.impl", + "framework", + + // if sdk_version="" this gets automatically included, but here we need to add manually. + "framework-res", + ], +}