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
diff --git a/wifi/Android.bp b/wifi/Android.bp
index 08115ec..d7a85c5 100644
--- a/wifi/Android.bp
+++ b/wifi/Android.bp
@@ -43,11 +43,19 @@
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 @@
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 @@
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,
+}