summaryrefslogtreecommitdiff
path: root/java/droidstubs_test.go
diff options
context:
space:
mode:
author Jihoon Kang <jihoonkang@google.com> 2023-01-26 08:08:52 +0000
committer Jihoon Kang <jihoonkang@google.com> 2023-01-26 18:44:25 +0000
commit3198f3cb52c07addf3953edae1a826947b0714eb (patch)
treeab085f1a21c49467d6d73c636f59e0762ebe158a /java/droidstubs_test.go
parentba46e7662221801867534444e64928f438511a5b (diff)
Generate java_api_contribution module from droidstubs module
Context - droidstubs module are either generated from the java_sdk_library module or defined in the bp files. - Since droidstubs module contains API text file property, java_api_contribution module can by dynamically created from droidstubs. Implementation - Add `api_surface` property in droidstubs module. This property is either inherited from the java_sdk_library or written in the module definition in the bp file. - Add defaultable hook in droidstubs module to generate the child java_api_contribution module. Test: m Change-Id: Ica43d65614723c623cd0c155266f9844e69e5d5e
Diffstat (limited to 'java/droidstubs_test.go')
-rw-r--r--java/droidstubs_test.go24
1 files changed, 24 insertions, 0 deletions
diff --git a/java/droidstubs_test.go b/java/droidstubs_test.go
index ef2e6dc8a..6c2293746 100644
--- a/java/droidstubs_test.go
+++ b/java/droidstubs_test.go
@@ -346,3 +346,27 @@ func TestApiSurfaceFromDroidStubsName(t *testing.T) {
android.AssertStringEquals(t, tc.desc, tc.expectedApiSurface, bazelApiSurfaceName(tc.name))
}
}
+
+func TestDroidStubsApiContributionGeneration(t *testing.T) {
+ ctx, _ := testJavaWithFS(t, `
+ droidstubs {
+ name: "foo",
+ srcs: ["A/a.java"],
+ api_surface: "public",
+ check_api: {
+ current: {
+ api_file: "A/current.txt",
+ removed_api_file: "A/removed.txt",
+ }
+ }
+ }
+ `,
+ map[string][]byte{
+ "A/a.java": nil,
+ "A/current.txt": nil,
+ "A/removed.txt": nil,
+ },
+ )
+
+ ctx.ModuleForTests("foo.api.contribution", "")
+}