summaryrefslogtreecommitdiff
path: root/sdk/sdk_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'sdk/sdk_test.go')
-rw-r--r--sdk/sdk_test.go51
1 files changed, 49 insertions, 2 deletions
diff --git a/sdk/sdk_test.go b/sdk/sdk_test.go
index ef62b79ba..2e6c62a9b 100644
--- a/sdk/sdk_test.go
+++ b/sdk/sdk_test.go
@@ -108,6 +108,9 @@ func TestSnapshotVisibility(t *testing.T) {
// generated sdk_snapshot.
":__subpackages__",
],
+ prebuilt_visibility: [
+ "//prebuilts/mysdk",
+ ],
java_header_libs: [
"myjavalib",
"mypublicjavalib",
@@ -176,6 +179,7 @@ java_import {
visibility: [
"//other/foo",
"//package",
+ "//prebuilts/mysdk",
],
jars: ["java/myjavalib.jar"],
}
@@ -186,6 +190,7 @@ java_import {
visibility: [
"//other/foo",
"//package",
+ "//prebuilts/mysdk",
],
jars: ["java/myjavalib.jar"],
}
@@ -210,6 +215,7 @@ java_import {
visibility: [
"//other/bar",
"//package",
+ "//prebuilts/mysdk",
],
jars: ["java/mydefaultedjavalib.jar"],
}
@@ -220,6 +226,7 @@ java_import {
visibility: [
"//other/bar",
"//package",
+ "//prebuilts/mysdk",
],
jars: ["java/mydefaultedjavalib.jar"],
}
@@ -227,14 +234,20 @@ java_import {
java_import {
name: "mysdk_myprivatejavalib@current",
sdk_member_name: "myprivatejavalib",
- visibility: ["//package"],
+ visibility: [
+ "//package",
+ "//prebuilts/mysdk",
+ ],
jars: ["java/myprivatejavalib.jar"],
}
java_import {
name: "myprivatejavalib",
prefer: false,
- visibility: ["//package"],
+ visibility: [
+ "//package",
+ "//prebuilts/mysdk",
+ ],
jars: ["java/myprivatejavalib.jar"],
}
@@ -254,6 +267,40 @@ sdk_snapshot {
`))
}
+func TestPrebuiltVisibilityProperty_IsValidated(t *testing.T) {
+ testSdkError(t, `prebuilt_visibility: cannot mix "//visibility:private" with any other visibility rules`, `
+ sdk {
+ name: "mysdk",
+ prebuilt_visibility: [
+ "//foo",
+ "//visibility:private",
+ ],
+ }
+`)
+}
+
+func TestPrebuiltVisibilityProperty_AddPrivate(t *testing.T) {
+ testSdkError(t, `prebuilt_visibility: "//visibility:private" does not widen the visibility`, `
+ sdk {
+ name: "mysdk",
+ prebuilt_visibility: [
+ "//visibility:private",
+ ],
+ java_header_libs: [
+ "myjavalib",
+ ],
+ }
+
+ java_library {
+ name: "myjavalib",
+ // Uses package default visibility
+ srcs: ["Test.java"],
+ system_modules: "none",
+ sdk_version: "none",
+ }
+`)
+}
+
func TestSDkInstall(t *testing.T) {
sdk := `
sdk {