bp2build converts java_genrule and java_genrule_host
Bp2build currently supports building genrules for cc modules, but does not support building java_genrule* modules. This commit adds this functionality. Bug: 213480907 Test: go test ./bp2build Change-Id: I473196c5bcf5582ba0c8faa65b5005f81ac973a4
This commit is contained in:
@@ -997,60 +997,6 @@ func TestSharding(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestJarGenrules(t *testing.T) {
|
||||
ctx, _ := testJava(t, `
|
||||
java_library {
|
||||
name: "foo",
|
||||
srcs: ["a.java"],
|
||||
}
|
||||
|
||||
java_genrule {
|
||||
name: "jargen",
|
||||
tool_files: ["b.java"],
|
||||
cmd: "$(location b.java) $(in) $(out)",
|
||||
out: ["jargen.jar"],
|
||||
srcs: [":foo"],
|
||||
}
|
||||
|
||||
java_library {
|
||||
name: "bar",
|
||||
static_libs: ["jargen"],
|
||||
srcs: ["c.java"],
|
||||
}
|
||||
|
||||
java_library {
|
||||
name: "baz",
|
||||
libs: ["jargen"],
|
||||
srcs: ["c.java"],
|
||||
}
|
||||
`)
|
||||
|
||||
foo := ctx.ModuleForTests("foo", "android_common").Output("javac/foo.jar")
|
||||
jargen := ctx.ModuleForTests("jargen", "android_common").Output("jargen.jar")
|
||||
bar := ctx.ModuleForTests("bar", "android_common").Output("javac/bar.jar")
|
||||
baz := ctx.ModuleForTests("baz", "android_common").Output("javac/baz.jar")
|
||||
barCombined := ctx.ModuleForTests("bar", "android_common").Output("combined/bar.jar")
|
||||
|
||||
if g, w := jargen.Implicits.Strings(), foo.Output.String(); !android.InList(w, g) {
|
||||
t.Errorf("expected jargen inputs [%q], got %q", w, g)
|
||||
}
|
||||
|
||||
if !strings.Contains(bar.Args["classpath"], jargen.Output.String()) {
|
||||
t.Errorf("bar classpath %v does not contain %q", bar.Args["classpath"], jargen.Output.String())
|
||||
}
|
||||
|
||||
if !strings.Contains(baz.Args["classpath"], jargen.Output.String()) {
|
||||
t.Errorf("baz classpath %v does not contain %q", baz.Args["classpath"], jargen.Output.String())
|
||||
}
|
||||
|
||||
if len(barCombined.Inputs) != 2 ||
|
||||
barCombined.Inputs[0].String() != bar.Output.String() ||
|
||||
barCombined.Inputs[1].String() != jargen.Output.String() {
|
||||
t.Errorf("bar combined jar inputs %v is not [%q, %q]",
|
||||
barCombined.Inputs.Strings(), bar.Output.String(), jargen.Output.String())
|
||||
}
|
||||
}
|
||||
|
||||
func TestExcludeFileGroupInSrcs(t *testing.T) {
|
||||
ctx, _ := testJava(t, `
|
||||
java_library {
|
||||
|
Reference in New Issue
Block a user