|
@@ -101,95 +101,3 @@ func TestSdkMutator(t *testing.T) {
|
|
|
assertDep(t, libsdkNDK, libcxxNDK)
|
|
|
assertDep(t, libsdkPlatform, libcxxPlatform)
|
|
|
}
|
|
|
-
|
|
|
-func TestMakeModuleNameForSdkVariant(t *testing.T) {
|
|
|
- bp := `
|
|
|
- cc_library {
|
|
|
- name: "libfoo",
|
|
|
- srcs: ["main_test.cpp"],
|
|
|
- sdk_version: "current",
|
|
|
- stl: "none",
|
|
|
- }
|
|
|
- `
|
|
|
- platformVariant := "android_arm64_armv8-a_shared"
|
|
|
- sdkVariant := "android_arm64_armv8-a_sdk_shared"
|
|
|
- testCases := []struct {
|
|
|
- name string
|
|
|
- unbundledApps []string
|
|
|
- variant string
|
|
|
- skipInstall bool // soong skips install
|
|
|
- hideFromMake bool // no make entry
|
|
|
- makeUninstallable bool // make skips install
|
|
|
- makeModuleName string
|
|
|
- }{
|
|
|
- {
|
|
|
- name: "platform variant in normal builds",
|
|
|
- unbundledApps: nil,
|
|
|
- variant: platformVariant,
|
|
|
- // installable in soong
|
|
|
- skipInstall: false,
|
|
|
- // visiable in Make as "libfoo"
|
|
|
- hideFromMake: false,
|
|
|
- makeModuleName: "libfoo",
|
|
|
- // installable in Make
|
|
|
- makeUninstallable: false,
|
|
|
- },
|
|
|
- {
|
|
|
- name: "sdk variant in normal builds",
|
|
|
- unbundledApps: nil,
|
|
|
- variant: sdkVariant,
|
|
|
- // soong doesn't install
|
|
|
- skipInstall: true,
|
|
|
- // visible in Make as "libfoo.sdk"
|
|
|
- hideFromMake: false,
|
|
|
- makeModuleName: "libfoo.sdk",
|
|
|
- // but not installed
|
|
|
- makeUninstallable: true,
|
|
|
- },
|
|
|
- {
|
|
|
- name: "platform variant in unbunded builds",
|
|
|
- unbundledApps: []string{"bar"},
|
|
|
- variant: platformVariant,
|
|
|
- // installable in soong
|
|
|
- skipInstall: false,
|
|
|
- // hidden from make
|
|
|
- hideFromMake: true,
|
|
|
- },
|
|
|
- {
|
|
|
- name: "sdk variant in unbunded builds",
|
|
|
- unbundledApps: []string{"bar"},
|
|
|
- variant: sdkVariant,
|
|
|
- // soong doesn't install
|
|
|
- skipInstall: true,
|
|
|
- // visible in Make as "libfoo"
|
|
|
- hideFromMake: false,
|
|
|
- makeModuleName: "libfoo",
|
|
|
- // but not installed
|
|
|
- makeUninstallable: true,
|
|
|
- },
|
|
|
- }
|
|
|
- for _, tc := range testCases {
|
|
|
- t.Run(tc.name, func(t *testing.T) {
|
|
|
- fixture := android.GroupFixturePreparers(prepareForCcTest,
|
|
|
- android.FixtureModifyProductVariables(func(variables android.FixtureProductVariables) {
|
|
|
- variables.Unbundled_build_apps = tc.unbundledApps
|
|
|
- }),
|
|
|
- )
|
|
|
- ctx := fixture.RunTestWithBp(t, bp).TestContext
|
|
|
- module := ctx.ModuleForTests("libfoo", tc.variant).Module().(*Module)
|
|
|
- android.AssertBoolEquals(t, "IsSkipInstall", tc.skipInstall, module.IsSkipInstall())
|
|
|
- android.AssertBoolEquals(t, "HideFromMake", tc.hideFromMake, module.HiddenFromMake())
|
|
|
- if !tc.hideFromMake {
|
|
|
- entries := android.AndroidMkEntriesForTest(t, ctx, module)[0]
|
|
|
- android.AssertStringEquals(t, "LOCAL_MODULE",
|
|
|
- tc.makeModuleName, entries.EntryMap["LOCAL_MODULE"][0])
|
|
|
- actualUninstallable := false
|
|
|
- if actual, ok := entries.EntryMap["LOCAL_UNINSTALLABLE_MODULE"]; ok {
|
|
|
- actualUninstallable = "true" == actual[0]
|
|
|
- }
|
|
|
- android.AssertBoolEquals(t, "LOCAL_UNINSTALLABLE_MODULE",
|
|
|
- tc.makeUninstallable, actualUninstallable)
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
-}
|