diff options
author | 2018-05-31 13:46:58 -0700 | |
---|---|---|
committer | 2018-05-31 13:48:16 -0700 | |
commit | 8d772dd9f9cb18ff3457d47d4714bce27da1684f (patch) | |
tree | fa85c03a86a996412666e07d91a632645a79d40d /src/test/java/com/google/devtools/build/lib/rules/android/AndroidLibraryTest.java | |
parent | 2a233890f26ab1e5c2988805ef1b61d62b6ace67 (diff) |
Explicitly validate local resources are passed to Java compilation first
We thought we had a test for this, but it turns out we didn't. Add one now.
RELNOTES: none
PiperOrigin-RevId: 198772854
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib/rules/android/AndroidLibraryTest.java')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/rules/android/AndroidLibraryTest.java | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/rules/android/AndroidLibraryTest.java b/src/test/java/com/google/devtools/build/lib/rules/android/AndroidLibraryTest.java index cdd630c618..87ecd9ed29 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/android/AndroidLibraryTest.java +++ b/src/test/java/com/google/devtools/build/lib/rules/android/AndroidLibraryTest.java @@ -1982,4 +1982,35 @@ public class AndroidLibraryTest extends AndroidBuildViewTestCase { "libal_bottom_for_deps-src.jar", "liblib_foo-src.jar"); } + + @Test + public void testLocalResourcesFirstInJavaCompilationClasspath() throws Exception { + scratch.file( + "java/foo/BUILD", + "android_library(", + " name='dep',", + " srcs=['dep.java'], ", + " resource_files=['res/values/dep.xml'],", + " manifest='AndroidManifest.xml')", + "android_library(", + " name='lib',", + " srcs=['lib.java'],", + " resource_files=['res/values/lib.xml'],", + " manifest='AndroidManifest.xml',", + " deps=[':dep'])"); + + JavaCompileAction javacAction = + (JavaCompileAction) + getGeneratingAction(getFileConfiguredTarget("//java/foo:liblib.jar").getArtifact()); + + assertThat(ActionsTestUtil.prettyArtifactNames(javacAction.getDirectJars())) + .containsExactly( + "java/foo/lib_resources.jar", "java/foo/dep_resources.jar", "java/foo/libdep-hjar.jar") + .inOrder(); + + assertThat(ActionsTestUtil.prettyArtifactNames(javacAction.getClasspath())) + .containsExactly( + "java/foo/lib_resources.jar", "java/foo/dep_resources.jar", "java/foo/libdep-hjar.jar") + .inOrder(); + } } |