diff options
author | 2022-11-28 18:48:51 +0000 | |
---|---|---|
committer | 2022-12-28 23:58:52 +0000 | |
commit | 0b555e323bc18ab64d119fc20c77f2e456cca612 (patch) | |
tree | 4fcbcec7ef0a03d568d99f2536393243a5584428 /java/droidstubs_test.go | |
parent | 067210f70db32f980675bf24d6c96a91a0309474 (diff) |
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
Diffstat (limited to 'java/droidstubs_test.go')
-rw-r--r-- | java/droidstubs_test.go | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/java/droidstubs_test.go b/java/droidstubs_test.go index 25f8c8667..ef2e6dc8a 100644 --- a/java/droidstubs_test.go +++ b/java/droidstubs_test.go @@ -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)) + } +} |