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
This commit is contained in:
@@ -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", "")
|
||||
}
|
||||
|
Reference in New Issue
Block a user