diff options
| author | Sam Delmerico <delmerico@google.com> | 2022-08-03 17:13:06 +0000 |
|---|---|---|
| committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2022-08-03 17:13:06 +0000 |
| commit | c31778ffbcff13aab48c4d4c36e1a3fb9872272d (patch) | |
| tree | 52e02e12dba8cbc19bc1b8e341a4b5de913ef3f2 /java/java_test.go | |
| parent | fb845984df736f1c07150d4c8424b2f143f8886b (diff) | |
| parent | 277795cb4f615dcda45452e570069274e16542e1 (diff) | |
Merge "add java_import to mixed build"
Diffstat (limited to 'java/java_test.go')
| -rw-r--r-- | java/java_test.go | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/java/java_test.go b/java/java_test.go index 32b0b0f68..9e5cf0cf2 100644 --- a/java/java_test.go +++ b/java/java_test.go @@ -1667,3 +1667,48 @@ func TestDataDeviceBinsBuildsDeviceBinary(t *testing.T) { }) } } + +func TestImportMixedBuild(t *testing.T) { + bp := ` + java_import { + name: "baz", + jars: [ + "test1.jar", + "test2.jar", + ], + bazel_module: { label: "//foo/bar:baz" }, + } + ` + + ctx := android.GroupFixturePreparers( + prepareForJavaTest, + android.FixtureModifyConfig(func(config android.Config) { + config.BazelContext = android.MockBazelContext{ + OutputBaseDir: "outputbase", + LabelToOutputFiles: map[string][]string{ + "//foo/bar:baz": []string{"test1.jar", "test2.jar"}, + }, + } + }), + ).RunTestWithBp(t, bp) + + bazMod := ctx.ModuleForTests("baz", "android_common").Module() + producer := bazMod.(android.OutputFileProducer) + expectedOutputFiles := []string{".intermediates/baz/android_common/bazelCombined/baz.jar"} + + outputFiles, err := producer.OutputFiles("") + if err != nil { + t.Errorf("Unexpected error getting java_import outputfiles %s", err) + } + actualOutputFiles := android.NormalizePathsForTesting(outputFiles) + android.AssertDeepEquals(t, "Output files are produced", expectedOutputFiles, actualOutputFiles) + + javaInfoProvider := ctx.ModuleProvider(bazMod, JavaInfoProvider) + javaInfo, ok := javaInfoProvider.(JavaInfo) + if !ok { + t.Error("could not get JavaInfo from java_import module") + } + android.AssertDeepEquals(t, "Header JARs are produced", expectedOutputFiles, android.NormalizePathsForTesting(javaInfo.HeaderJars)) + android.AssertDeepEquals(t, "Implementation/Resources JARs are produced", expectedOutputFiles, android.NormalizePathsForTesting(javaInfo.ImplementationAndResourcesJars)) + android.AssertDeepEquals(t, "Implementation JARs are produced", expectedOutputFiles, android.NormalizePathsForTesting(javaInfo.ImplementationJars)) +} |
