From 90ed10582dea42c660feda7bfc243d81d953fe6e Mon Sep 17 00:00:00 2001 From: David Su Date: Wed, 18 Dec 2019 18:20:28 -0800 Subject: [PATCH] framework-wifi: default build rule for tests Create a java_default build rule for tests that need to build against @hide APIs from framework-wifi. Visibility is restricted to select tests for now. Also restricted visibility for framework-wifi itself. Bug: 146513037 Test: compiles Change-Id: Ia6dec8cf0202e0417d54a480c1715190b03e5e3e --- wifi/Android.bp | 31 ++++++++++++++++++++++++++++--- 1 file changed, 28 insertions(+), 3 deletions(-) diff --git a/wifi/Android.bp b/wifi/Android.bp index 08115ecb6b2b4..d7a85c5f75cc6 100644 --- a/wifi/Android.bp +++ b/wifi/Android.bp @@ -43,11 +43,19 @@ filegroup { srcs: ["java/android/net/wifi/WifiAnnotations.java"], } +// list of tests that are allowed to access @hide APIs from framework-wifi +test_access_hidden_api_whitelist = [ + "//frameworks/base/wifi/tests", + "//frameworks/opt/net/wifi/tests/wifitests:__subpackages__", +] + java_library { name: "framework-wifi", - sdk_version: "core_platform", // TODO(b/140299412) should be core_current + // TODO(b/140299412) should be core_current once we build against framework-system-stubs + sdk_version: "core_platform", libs: [ - "framework-minus-apex", // TODO(b/140299412) should be framework-system-stubs + // TODO(b/140299412) should be framework-system-stubs once we fix all @hide dependencies + "framework-minus-apex", ], srcs: [ ":framework-wifi-updatable-sources", @@ -55,7 +63,11 @@ java_library { installable: true, optimize: { enabled: false - } + }, + visibility: [ + "//frameworks/base", // TODO(b/140299412) remove once all dependencies are fixed + "//frameworks/opt/net/wifi/service:__subpackages__", + ] + test_access_hidden_api_whitelist, } droidstubs { @@ -85,3 +97,16 @@ java_library { installable: false, } +// defaults for tests that need to build against framework-wifi's @hide APIs +java_defaults { + name: "framework-wifi-test-defaults", + sdk_version: "core_platform", // tests can use @CorePlatformApi's + libs: [ + "framework-wifi", + "framework-minus-apex", + + // if sdk_version="" this gets automatically included, but here we need to add manually. + "framework-res", + ], + visibility: test_access_hidden_api_whitelist, +}