Merge "Add filegroup_defaults module"
This commit is contained in:
@@ -26,13 +26,18 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
RegisterModuleType("filegroup", FileGroupFactory)
|
RegisterFilegroupBuildComponents(InitRegistrationContext)
|
||||||
}
|
}
|
||||||
|
|
||||||
var PrepareForTestWithFilegroup = FixtureRegisterWithContext(func(ctx RegistrationContext) {
|
var PrepareForTestWithFilegroup = FixtureRegisterWithContext(func(ctx RegistrationContext) {
|
||||||
ctx.RegisterModuleType("filegroup", FileGroupFactory)
|
RegisterFilegroupBuildComponents(ctx)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
func RegisterFilegroupBuildComponents(ctx RegistrationContext) {
|
||||||
|
ctx.RegisterModuleType("filegroup", FileGroupFactory)
|
||||||
|
ctx.RegisterModuleType("filegroup_defaults", FileGroupDefaultsFactory)
|
||||||
|
}
|
||||||
|
|
||||||
var convertedProtoLibrarySuffix = "_bp2build_converted"
|
var convertedProtoLibrarySuffix = "_bp2build_converted"
|
||||||
|
|
||||||
// IsFilegroup checks that a module is a filegroup type
|
// IsFilegroup checks that a module is a filegroup type
|
||||||
@@ -178,6 +183,7 @@ type fileGroupProperties struct {
|
|||||||
type fileGroup struct {
|
type fileGroup struct {
|
||||||
ModuleBase
|
ModuleBase
|
||||||
BazelModuleBase
|
BazelModuleBase
|
||||||
|
DefaultableModuleBase
|
||||||
FileGroupAsLibrary
|
FileGroupAsLibrary
|
||||||
properties fileGroupProperties
|
properties fileGroupProperties
|
||||||
srcs Paths
|
srcs Paths
|
||||||
@@ -195,6 +201,7 @@ func FileGroupFactory() Module {
|
|||||||
module.AddProperties(&module.properties)
|
module.AddProperties(&module.properties)
|
||||||
InitAndroidModule(module)
|
InitAndroidModule(module)
|
||||||
InitBazelModule(module)
|
InitBazelModule(module)
|
||||||
|
InitDefaultableModule(module)
|
||||||
return module
|
return module
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -326,3 +333,17 @@ func ToFileGroupAsLibrary(ctx BazelConversionPathContext, name string) (FileGrou
|
|||||||
}
|
}
|
||||||
return nil, false
|
return nil, false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Defaults
|
||||||
|
type FileGroupDefaults struct {
|
||||||
|
ModuleBase
|
||||||
|
DefaultsModuleBase
|
||||||
|
}
|
||||||
|
|
||||||
|
func FileGroupDefaultsFactory() Module {
|
||||||
|
module := &FileGroupDefaults{}
|
||||||
|
module.AddProperties(&fileGroupProperties{})
|
||||||
|
InitDefaultsModule(module)
|
||||||
|
|
||||||
|
return module
|
||||||
|
}
|
||||||
|
@@ -58,3 +58,24 @@ func TestFileGroupWithPathProp(t *testing.T) {
|
|||||||
AssertStringEquals(t, "src full path", expectedOutputfile, fg.srcs[0].String())
|
AssertStringEquals(t, "src full path", expectedOutputfile, fg.srcs[0].String())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestFilegroupDefaults(t *testing.T) {
|
||||||
|
bp := FixtureAddTextFile("p/Android.bp", `
|
||||||
|
filegroup_defaults {
|
||||||
|
name: "defaults",
|
||||||
|
visibility: ["//x"],
|
||||||
|
}
|
||||||
|
filegroup {
|
||||||
|
name: "foo",
|
||||||
|
defaults: ["defaults"],
|
||||||
|
visibility: ["//y"],
|
||||||
|
}
|
||||||
|
`)
|
||||||
|
result := GroupFixturePreparers(
|
||||||
|
PrepareForTestWithFilegroup,
|
||||||
|
PrepareForTestWithDefaults,
|
||||||
|
PrepareForTestWithVisibility,
|
||||||
|
bp).RunTest(t)
|
||||||
|
rules := effectiveVisibilityRules(result.Config, qualifiedModuleName{pkg: "p", name: "foo"})
|
||||||
|
AssertDeepEquals(t, "visibility", []string{"//x", "//y"}, rules.Strings())
|
||||||
|
}
|
||||||
|
Reference in New Issue
Block a user