diff options
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/rules/android/AndroidLibraryTest.java | 28 |
1 files changed, 28 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 85d0263abf..7c7d821479 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 @@ -1560,4 +1560,32 @@ public class AndroidLibraryTest extends AndroidBuildViewTestCase { .getPath() .toString()).contains("processed_manifest"); } + + @Test + public void testAndroidLibrary_SrcsLessDepsHostConfigurationNoOverride() throws Exception { + scratch.file( + "java/srclessdeps/BUILD", + "android_library(name = 'dep_for_foo',", + " srcs = ['a.java'],", + " )", + "android_library(name = 'foo',", + " deps = [':dep_for_foo'],", + " )", + "genrule(name = 'some_genrule',", + " tools = [':foo'],", + " outs = ['some_outs'],", + " cmd = '$(location :foo) do_something $@',", + " )"); + + useConfiguration("--experimental_allow_android_library_deps_without_srcs"); + // genrule builds its tools using the host configuration. + ConfiguredTarget genruleTarget = getConfiguredTarget("//java/srclessdeps:some_genrule"); + ConfiguredTarget target = getDirectPrerequisite(genruleTarget, "//java/srclessdeps:foo"); + assertThat( + target + .getConfiguration() + .getFragment(AndroidConfiguration.class) + .allowSrcsLessAndroidLibraryDeps()) + .isTrue(); + } } |