Create (API) bp2build converters for droidstubs
- The converter runs for api_bp2build, not bp2build workspace - Since droidstubs is an internal module created by java_sdk_library, the conversion encompasses the latter as well - Since droidstubs do not have an api_surface attribute, this conversion uses naming convention to infer the api_surface represented by the api file e.g. *stubs.source -> publicapi, *stubs.source.system -> systemapi) - Also adds an SdkIntraCore enum to represent the API surface provided by one core module to another There is also ongoing work to check in java_api_contribution modules in Soong. Once we have that, we can update this converter to operate on that module type instead Test: go test ./bp2build Change-Id: Ia85828e04c738d9ffcc524856d7c3034ee29bbf9
This commit is contained in:
@@ -304,3 +304,45 @@ func TestDroidstubsWithSdkExtensions(t *testing.T) {
|
||||
android.AssertStringDoesContain(t, "sdk-extensions-root present", cmdline, "--sdk-extensions-root sdk/extensions")
|
||||
android.AssertStringDoesContain(t, "sdk-extensions-info present", cmdline, "--sdk-extensions-info sdk/extensions/info.txt")
|
||||
}
|
||||
|
||||
func TestApiSurfaceFromDroidStubsName(t *testing.T) {
|
||||
testCases := []struct {
|
||||
desc string
|
||||
name string
|
||||
expectedApiSurface string
|
||||
}{
|
||||
{
|
||||
desc: "Default is publicapi",
|
||||
name: "mydroidstubs",
|
||||
expectedApiSurface: "publicapi",
|
||||
},
|
||||
{
|
||||
desc: "name contains system substring",
|
||||
name: "mydroidstubs.system.suffix",
|
||||
expectedApiSurface: "systemapi",
|
||||
},
|
||||
{
|
||||
desc: "name contains system_server substring",
|
||||
name: "mydroidstubs.system_server.suffix",
|
||||
expectedApiSurface: "system-serverapi",
|
||||
},
|
||||
{
|
||||
desc: "name contains module_lib substring",
|
||||
name: "mydroidstubs.module_lib.suffix",
|
||||
expectedApiSurface: "module-libapi",
|
||||
},
|
||||
{
|
||||
desc: "name contains test substring",
|
||||
name: "mydroidstubs.test.suffix",
|
||||
expectedApiSurface: "testapi",
|
||||
},
|
||||
{
|
||||
desc: "name contains intra.core substring",
|
||||
name: "mydroidstubs.intra.core.suffix",
|
||||
expectedApiSurface: "intracoreapi",
|
||||
},
|
||||
}
|
||||
for _, tc := range testCases {
|
||||
android.AssertStringEquals(t, tc.desc, tc.expectedApiSurface, bazelApiSurfaceName(tc.name))
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user