summaryrefslogtreecommitdiff
path: root/java/java_test.go
diff options
context:
space:
mode:
author Jooyung Han <jooyung@google.com> 2021-11-06 07:08:45 +0900
committer Jooyung Han <jooyung@google.com> 2021-11-06 07:31:50 +0900
commit07f70c0e924aee6907b07e2815df96732bec50ef (patch)
tree42a6ebb9ddf0d0a89feb70abfbc80dd6a7eff561 /java/java_test.go
parentdbb2a94cda172feb4dad8bfb3cc07d1b267e424e (diff)
Pass --min_sdk_version to aidl compiler
cc/java modules can have .aidl files as srcs. Pass min_sdk_version to the aidl compiler so that it can check some features against it. For example, ParcelableHolder AIDL type is available since 31. Bug: 205338951 Test: soong test && m Change-Id: I7ecab913e00c9b6a3ce870dacbe9773d2ddb7e93
Diffstat (limited to 'java/java_test.go')
-rw-r--r--java/java_test.go30
1 files changed, 30 insertions, 0 deletions
diff --git a/java/java_test.go b/java/java_test.go
index bc9b40964..c039f7246 100644
--- a/java/java_test.go
+++ b/java/java_test.go
@@ -1357,6 +1357,36 @@ func TestAidlFlagsArePassedToTheAidlCompiler(t *testing.T) {
}
}
+func TestAidlFlagsWithMinSdkVersion(t *testing.T) {
+ fixture := android.GroupFixturePreparers(
+ prepareForJavaTest, FixtureWithPrebuiltApis(map[string][]string{"14": {"foo"}}))
+
+ for _, tc := range []struct {
+ name string
+ sdkVersion string
+ expected string
+ }{
+ {"default is current", "", "current"},
+ {"use sdk_version", `sdk_version: "14"`, "14"},
+ {"system_current", `sdk_version: "system_current"`, "current"},
+ } {
+ t.Run(tc.name, func(t *testing.T) {
+ ctx := fixture.RunTestWithBp(t, `
+ java_library {
+ name: "foo",
+ srcs: ["aidl/foo/IFoo.aidl"],
+ `+tc.sdkVersion+`
+ }
+ `)
+ aidlCommand := ctx.ModuleForTests("foo", "android_common").Rule("aidl").RuleParams.Command
+ expectedAidlFlag := "--min_sdk_version=" + tc.expected
+ if !strings.Contains(aidlCommand, expectedAidlFlag) {
+ t.Errorf("aidl command %q does not contain %q", aidlCommand, expectedAidlFlag)
+ }
+ })
+ }
+}
+
func TestDataNativeBinaries(t *testing.T) {
ctx, _ := testJava(t, `
java_test_host {