Merge "Test changes to prepare for allowlist v2" into main
This commit is contained in:
commit
c774c92f57
6 changed files with 56 additions and 53 deletions
|
@ -102,6 +102,7 @@ android_library {
|
|||
sdk_version: "current",
|
||||
}
|
||||
`,
|
||||
StubbedBuildDefinitions: []string{"lib_dep"},
|
||||
ExpectedBazelTargets: []string{
|
||||
MakeBazelTarget(
|
||||
"android_library",
|
||||
|
|
|
@ -348,19 +348,6 @@ custom {
|
|||
}),
|
||||
},
|
||||
},
|
||||
{
|
||||
Description: "non-existent dep",
|
||||
Blueprint: `custom {
|
||||
name: "has_dep",
|
||||
arch_paths: [":dep"],
|
||||
bazel_module: { bp2build_available: true },
|
||||
}`,
|
||||
ExpectedBazelTargets: []string{
|
||||
MakeBazelTarget("custom", "has_dep", AttrNameToString{
|
||||
"arch_paths": `[":dep__BP2BUILD__MISSING__DEP"]`,
|
||||
}),
|
||||
},
|
||||
},
|
||||
{
|
||||
Description: "arch-variant srcs",
|
||||
Blueprint: `custom {
|
||||
|
|
|
@ -559,8 +559,8 @@ func TestCcLibraryWholeStaticLibsAlwaysLink(t *testing.T) {
|
|||
ModuleTypeUnderTest: "cc_library",
|
||||
ModuleTypeUnderTestFactory: cc.LibraryFactory,
|
||||
Dir: "foo/bar",
|
||||
StubbedBuildDefinitions: []string{"//foo/bar:prebuilt_whole_static_lib_for_shared", "//foo/bar:prebuilt_whole_static_lib_for_static",
|
||||
"//foo/bar:prebuilt_whole_static_lib_for_both"},
|
||||
StubbedBuildDefinitions: []string{"//foo/bar:whole_static_lib_for_shared", "//foo/bar:whole_static_lib_for_static",
|
||||
"//foo/bar:whole_static_lib_for_both"},
|
||||
Filesystem: map[string]string{
|
||||
"foo/bar/Android.bp": `
|
||||
cc_library {
|
||||
|
@ -3355,6 +3355,7 @@ func TestCcLibraryWithTargetApex(t *testing.T) {
|
|||
Description: "cc_library with target.apex",
|
||||
ModuleTypeUnderTest: "cc_library",
|
||||
ModuleTypeUnderTestFactory: cc.LibraryFactory,
|
||||
StubbedBuildDefinitions: []string{"bar", "baz", "buh"},
|
||||
Blueprint: `
|
||||
cc_library {
|
||||
name: "foo",
|
||||
|
@ -3366,27 +3367,29 @@ cc_library {
|
|||
exclude_static_libs: ["buh"],
|
||||
}
|
||||
}
|
||||
}`,
|
||||
}` + simpleModule("cc_library_static", "baz") +
|
||||
simpleModule("cc_library_static", "buh") +
|
||||
simpleModule("cc_library_static", "bar"),
|
||||
ExpectedBazelTargets: []string{
|
||||
MakeBazelTarget("cc_library_static", "foo_bp2build_cc_library_static", AttrNameToString{
|
||||
"implementation_deps": `[":baz__BP2BUILD__MISSING__DEP"] + select({
|
||||
"implementation_deps": `[":baz"] + select({
|
||||
"//build/bazel/rules/apex:in_apex": [],
|
||||
"//conditions:default": [":buh__BP2BUILD__MISSING__DEP"],
|
||||
"//conditions:default": [":buh"],
|
||||
})`,
|
||||
"implementation_dynamic_deps": `[":baz__BP2BUILD__MISSING__DEP"] + select({
|
||||
"implementation_dynamic_deps": `[":baz"] + select({
|
||||
"//build/bazel/rules/apex:in_apex": [],
|
||||
"//conditions:default": [":bar__BP2BUILD__MISSING__DEP"],
|
||||
"//conditions:default": [":bar"],
|
||||
})`,
|
||||
"local_includes": `["."]`,
|
||||
}),
|
||||
MakeBazelTarget("cc_library_shared", "foo", AttrNameToString{
|
||||
"implementation_deps": `[":baz__BP2BUILD__MISSING__DEP"] + select({
|
||||
"implementation_deps": `[":baz"] + select({
|
||||
"//build/bazel/rules/apex:in_apex": [],
|
||||
"//conditions:default": [":buh__BP2BUILD__MISSING__DEP"],
|
||||
"//conditions:default": [":buh"],
|
||||
})`,
|
||||
"implementation_dynamic_deps": `[":baz__BP2BUILD__MISSING__DEP"] + select({
|
||||
"implementation_dynamic_deps": `[":baz"] + select({
|
||||
"//build/bazel/rules/apex:in_apex": [],
|
||||
"//conditions:default": [":bar__BP2BUILD__MISSING__DEP"],
|
||||
"//conditions:default": [":bar"],
|
||||
})`,
|
||||
"local_includes": `["."]`,
|
||||
}),
|
||||
|
@ -3412,20 +3415,23 @@ cc_library_static {
|
|||
exclude_static_libs: ["abc"],
|
||||
}
|
||||
}
|
||||
}`,
|
||||
}` + simpleModule("cc_library_static", "bar") +
|
||||
simpleModule("cc_library_static", "baz") +
|
||||
simpleModule("cc_library_static", "abc"),
|
||||
StubbedBuildDefinitions: []string{"bar", "baz", "abc"},
|
||||
ExpectedBazelTargets: []string{
|
||||
MakeBazelTarget("cc_library_static", "foo", AttrNameToString{
|
||||
"implementation_dynamic_deps": `select({
|
||||
"//build/bazel/rules/apex:in_apex": [],
|
||||
"//conditions:default": [":bar__BP2BUILD__MISSING__DEP"],
|
||||
"//conditions:default": [":bar"],
|
||||
})`,
|
||||
"dynamic_deps": `select({
|
||||
"//build/bazel/rules/apex:in_apex": [],
|
||||
"//conditions:default": [":baz__BP2BUILD__MISSING__DEP"],
|
||||
"//conditions:default": [":baz"],
|
||||
})`,
|
||||
"deps": `select({
|
||||
"//build/bazel/rules/apex:in_apex": [],
|
||||
"//conditions:default": [":abc__BP2BUILD__MISSING__DEP"],
|
||||
"//conditions:default": [":abc"],
|
||||
})`,
|
||||
"local_includes": `["."]`,
|
||||
}),
|
||||
|
@ -5198,7 +5204,7 @@ ndk_headers {
|
|||
name: "libfoo_headers",
|
||||
from: "from",
|
||||
to: "to",
|
||||
srcs: ["from/foo.h", "from/foo_other.h"]
|
||||
srcs: ["foo.h", "foo_other.h"]
|
||||
}
|
||||
`,
|
||||
ExpectedBazelTargets: []string{
|
||||
|
@ -5206,8 +5212,8 @@ ndk_headers {
|
|||
"strip_import_prefix": `"from"`,
|
||||
"import_prefix": `"to"`,
|
||||
"hdrs": `[
|
||||
"from/foo.h",
|
||||
"from/foo_other.h",
|
||||
"foo.h",
|
||||
"foo_other.h",
|
||||
]`,
|
||||
}),
|
||||
},
|
||||
|
|
|
@ -70,10 +70,6 @@ func TestCcLibraryHeadersSimple(t *testing.T) {
|
|||
runCcLibraryHeadersTestCase(t, Bp2buildTestCase{
|
||||
Description: "cc_library_headers test",
|
||||
Filesystem: map[string]string{
|
||||
"lib-1/lib1a.h": "",
|
||||
"lib-1/lib1b.h": "",
|
||||
"lib-2/lib2a.h": "",
|
||||
"lib-2/lib2b.h": "",
|
||||
"dir-1/dir1a.h": "",
|
||||
"dir-1/dir1b.h": "",
|
||||
"dir-2/dir2a.h": "",
|
||||
|
@ -86,7 +82,6 @@ func TestCcLibraryHeadersSimple(t *testing.T) {
|
|||
cc_library_headers {
|
||||
name: "foo_headers",
|
||||
export_include_dirs: ["dir-1", "dir-2"],
|
||||
header_libs: ["lib-1", "lib-2"],
|
||||
|
||||
arch: {
|
||||
arm64: {
|
||||
|
@ -322,7 +317,7 @@ func TestCcLibraryHeadersExportedStaticLibHeadersReexported(t *testing.T) {
|
|||
runCcLibraryHeadersTestCase(t, Bp2buildTestCase{
|
||||
Description: "cc_library_headers exported_static_lib_headers is reexported",
|
||||
Filesystem: map[string]string{},
|
||||
StubbedBuildDefinitions: []string{"foo_export"},
|
||||
StubbedBuildDefinitions: []string{"foo_export", "foo_no_reexport"},
|
||||
Blueprint: soongCcLibraryHeadersPreamble + `
|
||||
cc_library_headers {
|
||||
name: "foo_headers",
|
||||
|
@ -330,7 +325,8 @@ cc_library_headers {
|
|||
static_libs: ["foo_export", "foo_no_reexport"],
|
||||
bazel_module: { bp2build_available: true },
|
||||
}
|
||||
` + simpleModule("cc_library_headers", "foo_export"),
|
||||
` + simpleModule("cc_library_headers", "foo_export") +
|
||||
simpleModule("cc_library_headers", "foo_no_reexport"),
|
||||
ExpectedBazelTargets: []string{
|
||||
MakeBazelTarget("cc_library_headers", "foo_headers", AttrNameToString{
|
||||
"deps": `[":foo_export"]`,
|
||||
|
@ -343,7 +339,7 @@ func TestCcLibraryHeadersExportedSharedLibHeadersReexported(t *testing.T) {
|
|||
runCcLibraryHeadersTestCase(t, Bp2buildTestCase{
|
||||
Description: "cc_library_headers exported_shared_lib_headers is reexported",
|
||||
Filesystem: map[string]string{},
|
||||
StubbedBuildDefinitions: []string{"foo_export"},
|
||||
StubbedBuildDefinitions: []string{"foo_export", "foo_no_reexport"},
|
||||
Blueprint: soongCcLibraryHeadersPreamble + `
|
||||
cc_library_headers {
|
||||
name: "foo_headers",
|
||||
|
@ -351,7 +347,8 @@ cc_library_headers {
|
|||
shared_libs: ["foo_export", "foo_no_reexport"],
|
||||
bazel_module: { bp2build_available: true },
|
||||
}
|
||||
` + simpleModule("cc_library_headers", "foo_export"),
|
||||
` + simpleModule("cc_library_headers", "foo_export") +
|
||||
simpleModule("cc_library_headers", "foo_no_reexport"),
|
||||
ExpectedBazelTargets: []string{
|
||||
MakeBazelTarget("cc_library_headers", "foo_headers", AttrNameToString{
|
||||
"deps": `[":foo_export"]`,
|
||||
|
@ -364,7 +361,7 @@ func TestCcLibraryHeadersExportedHeaderLibHeadersReexported(t *testing.T) {
|
|||
runCcLibraryHeadersTestCase(t, Bp2buildTestCase{
|
||||
Description: "cc_library_headers exported_header_lib_headers is reexported",
|
||||
Filesystem: map[string]string{},
|
||||
StubbedBuildDefinitions: []string{"foo_export"},
|
||||
StubbedBuildDefinitions: []string{"foo_export", "foo_no_reexport"},
|
||||
Blueprint: soongCcLibraryHeadersPreamble + `
|
||||
cc_library_headers {
|
||||
name: "foo_headers",
|
||||
|
@ -372,7 +369,8 @@ cc_library_headers {
|
|||
header_libs: ["foo_export", "foo_no_reexport"],
|
||||
bazel_module: { bp2build_available: true },
|
||||
}
|
||||
` + simpleModule("cc_library_headers", "foo_export"),
|
||||
` + simpleModule("cc_library_headers", "foo_export") +
|
||||
simpleModule("cc_library_headers", "foo_no_reexport"),
|
||||
ExpectedBazelTargets: []string{
|
||||
MakeBazelTarget("cc_library_headers", "foo_headers", AttrNameToString{
|
||||
"deps": `[":foo_export"]`,
|
||||
|
@ -426,7 +424,7 @@ cc_prebuilt_library_headers {
|
|||
func TestPrebuiltCcLibraryHeadersPreferredRdepUpdated(t *testing.T) {
|
||||
runCcLibraryHeadersTestCase(t, Bp2buildTestCase{
|
||||
Description: "cc_library_headers prebuilt preferred is used as rdep",
|
||||
StubbedBuildDefinitions: []string{"foo_export"},
|
||||
StubbedBuildDefinitions: []string{"foo_export", "//foo/bar:foo_headers"},
|
||||
Filesystem: map[string]string{
|
||||
"foo/bar/Android.bp": simpleModule("cc_library_headers", "foo_headers"),
|
||||
},
|
||||
|
@ -458,7 +456,7 @@ cc_library_shared {
|
|||
func TestPrebuiltCcLibraryHeadersRdepUpdated(t *testing.T) {
|
||||
runCcLibraryHeadersTestCase(t, Bp2buildTestCase{
|
||||
Description: "cc_library_headers not preferred is not used for rdep",
|
||||
StubbedBuildDefinitions: []string{"foo_export"},
|
||||
StubbedBuildDefinitions: []string{"foo_export", "//foo/bar:foo_headers"},
|
||||
Filesystem: map[string]string{
|
||||
"foo/bar/Android.bp": simpleModule("cc_library_headers", "foo_headers"),
|
||||
},
|
||||
|
|
|
@ -15,16 +15,22 @@
|
|||
package bp2build
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"android/soong/android"
|
||||
"android/soong/genrule"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func registerModulesForGensrcsTests(ctx android.RegistrationContext) {
|
||||
ctx.RegisterModuleType("filegroup", android.FileGroupFactory)
|
||||
}
|
||||
|
||||
func TestGensrcs(t *testing.T) {
|
||||
testcases := []struct {
|
||||
name string
|
||||
bp string
|
||||
expectedBazelAttrs AttrNameToString
|
||||
name string
|
||||
bp string
|
||||
expectedBazelAttrs AttrNameToString
|
||||
stubbedBuildDefinitions []string
|
||||
}{
|
||||
{
|
||||
name: "gensrcs with common usage of properties",
|
||||
|
@ -37,18 +43,22 @@ func TestGensrcs(t *testing.T) {
|
|||
data: ["foo/file.txt", ":external_files"],
|
||||
output_extension: "out",
|
||||
bazel_module: { bp2build_available: true },
|
||||
}
|
||||
filegroup {
|
||||
name: "external_files",
|
||||
}`,
|
||||
stubbedBuildDefinitions: []string{"external_files"},
|
||||
expectedBazelAttrs: AttrNameToString{
|
||||
"srcs": `[
|
||||
"test/input.txt",
|
||||
":external_files__BP2BUILD__MISSING__DEP",
|
||||
":external_files",
|
||||
]`,
|
||||
"tools": `["program.py"]`,
|
||||
"output_extension": `"out"`,
|
||||
"cmd": `"$(location program.py) $(SRC) $(OUT) $(location foo/file.txt) $(location :external_files__BP2BUILD__MISSING__DEP)"`,
|
||||
"cmd": `"$(location program.py) $(SRC) $(OUT) $(location foo/file.txt) $(location :external_files)"`,
|
||||
"data": `[
|
||||
"foo/file.txt",
|
||||
":external_files__BP2BUILD__MISSING__DEP",
|
||||
":external_files",
|
||||
]`,
|
||||
},
|
||||
},
|
||||
|
@ -73,12 +83,13 @@ func TestGensrcs(t *testing.T) {
|
|||
MakeBazelTargetNoRestrictions("gensrcs", "foo", test.expectedBazelAttrs),
|
||||
}
|
||||
t.Run(test.name, func(t *testing.T) {
|
||||
RunBp2BuildTestCase(t, func(ctx android.RegistrationContext) {},
|
||||
RunBp2BuildTestCase(t, registerModulesForGensrcsTests,
|
||||
Bp2buildTestCase{
|
||||
ModuleTypeUnderTest: "gensrcs",
|
||||
ModuleTypeUnderTestFactory: genrule.GenSrcsFactory,
|
||||
Blueprint: test.bp,
|
||||
ExpectedBazelTargets: expectedBazelTargets,
|
||||
StubbedBuildDefinitions: test.stubbedBuildDefinitions,
|
||||
})
|
||||
})
|
||||
}
|
||||
|
|
|
@ -635,7 +635,7 @@ func TestJavaLibraryAidlNonAdjacentAidlFilegroup(t *testing.T) {
|
|||
Description: "java_library with non adjacent aidl filegroup",
|
||||
ModuleTypeUnderTest: "java_library",
|
||||
ModuleTypeUnderTestFactory: java.LibraryFactory,
|
||||
StubbedBuildDefinitions: []string{"A_aidl"},
|
||||
StubbedBuildDefinitions: []string{"//path/to/A:A_aidl"},
|
||||
Filesystem: map[string]string{
|
||||
"path/to/A/Android.bp": `
|
||||
filegroup {
|
||||
|
|
Loading…
Reference in a new issue