diff options
author | Googler <noreply@google.com> | 2015-11-18 21:35:09 +0000 |
---|---|---|
committer | Damien Martin-Guillerez <dmarting@google.com> | 2015-11-19 10:04:26 +0000 |
commit | d59c7618d359e8dedca45fbbd7a172ccf5953775 (patch) | |
tree | c4d31336259b8841795496d7a5a1e6ed260099be /src/test/java | |
parent | dd00dcecfcfb2458ed5f4c05deef407717cea0aa (diff) |
Add generate_resource_class to android_studio_ide_info.proto.
This boolean matches bazel's semantics on whether a R.java class should
be generated. Android Studio generates its own in-memory class, but we
need to know *whether* we should generate one.
--
MOS_MIGRATED_REVID=108175802
Diffstat (limited to 'src/test/java')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspectTest.java | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspectTest.java b/src/test/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspectTest.java index 40afb1707a..df30f4c200 100644 --- a/src/test/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspectTest.java +++ b/src/test/java/com/google/devtools/build/lib/ideinfo/AndroidStudioInfoAspectTest.java @@ -775,4 +775,35 @@ public class AndroidStudioInfoAspectTest extends AndroidStudioInfoAspectTestBase RuleIdeInfo libInfo = getRuleInfoAndVerifyLabel("//com/google/example:foobar", ruleIdeInfos); assertThat(libInfo.getDependenciesList()).isEmpty(); } + + public void testAndroidLibraryGeneratesResourceClass() throws Exception { + scratch.file( + "java/com/google/example/BUILD", + "android_library(", + " name = 'resource_files',", + " resource_files = ['res/drawable/a.png'],", + " manifest = 'AndroidManifest.xml',", + ")", + "android_library(", + " name = 'manifest',", + " manifest = 'AndroidManifest.xml',", + ")", + "android_library(", + " name = 'neither',", + " srcs = ['FooBar.java'],", + " deps = [':resource_files', ':manifest']", + ")"); + + Map<String, RuleIdeInfo> ruleIdeInfos = buildRuleIdeInfo("//java/com/google/example:neither"); + RuleIdeInfo neither = getRuleInfoAndVerifyLabel( + "//java/com/google/example:neither", ruleIdeInfos); + RuleIdeInfo resourceFiles = getRuleInfoAndVerifyLabel( + "//java/com/google/example:resource_files", ruleIdeInfos); + RuleIdeInfo manifest = getRuleInfoAndVerifyLabel( + "//java/com/google/example:manifest", ruleIdeInfos); + + assertThat(neither.getAndroidRuleIdeInfo().getGenerateResourceClass()).isFalse(); + assertThat(resourceFiles.getAndroidRuleIdeInfo().getGenerateResourceClass()).isTrue(); + assertThat(manifest.getAndroidRuleIdeInfo().getGenerateResourceClass()).isTrue(); + } } |