diff options
author | Colin Cross <ccross@android.com> | 2018-03-28 14:58:31 -0700 |
---|---|---|
committer | Colin Cross <ccross@android.com> | 2018-04-16 15:24:47 -0700 |
commit | a97c5d3f08c1df08c73cee4808feb3c1e015bdc8 (patch) | |
tree | e5e21a8264e93af5c588f4780ca4dee874245572 /java/app_test.go | |
parent | ad6cbf18da303f1bd498a4ecf7856a23eeccfca5 (diff) | |
download | android_build_soong-a97c5d3f08c1df08c73cee4808feb3c1e015bdc8.tar.gz android_build_soong-a97c5d3f08c1df08c73cee4808feb3c1e015bdc8.tar.bz2 android_build_soong-a97c5d3f08c1df08c73cee4808feb3c1e015bdc8.zip |
Add support for android_library modules
Add support for compiling android_library modules into AARs,
and refactor app support on top of it.
Bug: 73724997
Test: app_test.go
Change-Id: I1dfac5fffe577c6680bc4709147b2061eb7d819c
Diffstat (limited to 'java/app_test.go')
-rw-r--r-- | java/app_test.go | 65 |
1 files changed, 34 insertions, 31 deletions
diff --git a/java/app_test.go b/java/app_test.go index ba017a18..7a617713 100644 --- a/java/app_test.go +++ b/java/app_test.go @@ -59,41 +59,44 @@ func testApp(t *testing.T, bp string) *android.TestContext { } func TestApp(t *testing.T) { - ctx := testApp(t, ` - android_app { - name: "foo", - srcs: ["a.java"], - } - `) - - foo := ctx.ModuleForTests("foo", "android_common") - - expectedLinkImplicits := []string{"AndroidManifest.xml"} - - frameworkRes := ctx.ModuleForTests("framework-res", "android_common") - expectedLinkImplicits = append(expectedLinkImplicits, - frameworkRes.Output("package-res.apk").Output.String()) - - // Test the mapping from input files to compiled output file names - compile := foo.Output(compiledResourceFiles[0]) - if !reflect.DeepEqual(resourceFiles, compile.Inputs.Strings()) { - t.Errorf("expected aapt2 compile inputs expected:\n %#v\n got:\n %#v", - resourceFiles, compile.Inputs.Strings()) - } + for _, moduleType := range []string{"android_app", "android_library"} { + t.Run(moduleType, func(t *testing.T) { + ctx := testApp(t, moduleType+` { + name: "foo", + srcs: ["a.java"], + } + `) + + foo := ctx.ModuleForTests("foo", "android_common") - compiledResourceOutputs := compile.Outputs.Strings() - sort.Strings(compiledResourceOutputs) + expectedLinkImplicits := []string{"AndroidManifest.xml"} - expectedLinkImplicits = append(expectedLinkImplicits, compiledResourceOutputs...) + frameworkRes := ctx.ModuleForTests("framework-res", "android_common") + expectedLinkImplicits = append(expectedLinkImplicits, + frameworkRes.Output("package-res.apk").Output.String()) + + // Test the mapping from input files to compiled output file names + compile := foo.Output(compiledResourceFiles[0]) + if !reflect.DeepEqual(resourceFiles, compile.Inputs.Strings()) { + t.Errorf("expected aapt2 compile inputs expected:\n %#v\n got:\n %#v", + resourceFiles, compile.Inputs.Strings()) + } - list := foo.Output("aapt2/res.list") - expectedLinkImplicits = append(expectedLinkImplicits, list.Output.String()) + compiledResourceOutputs := compile.Outputs.Strings() + sort.Strings(compiledResourceOutputs) - // Check that the link rule uses - res := ctx.ModuleForTests("foo", "android_common").Output("package-res.apk") - if !reflect.DeepEqual(expectedLinkImplicits, res.Implicits.Strings()) { - t.Errorf("expected aapt2 link implicits expected:\n %#v\n got:\n %#v", - expectedLinkImplicits, res.Implicits.Strings()) + expectedLinkImplicits = append(expectedLinkImplicits, compiledResourceOutputs...) + + list := foo.Output("aapt2/res.list") + expectedLinkImplicits = append(expectedLinkImplicits, list.Output.String()) + + // Check that the link rule uses + res := ctx.ModuleForTests("foo", "android_common").Output("package-res.apk") + if !reflect.DeepEqual(expectedLinkImplicits, res.Implicits.Strings()) { + t.Errorf("expected aapt2 link implicits expected:\n %#v\n got:\n %#v", + expectedLinkImplicits, res.Implicits.Strings()) + } + }) } } |