aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java
diff options
context:
space:
mode:
authorGravatar Googler <noreply@google.com>2015-11-18 21:35:09 +0000
committerGravatar Damien Martin-Guillerez <dmarting@google.com>2015-11-19 10:04:26 +0000
commitd59c7618d359e8dedca45fbbd7a172ccf5953775 (patch)
treec4d31336259b8841795496d7a5a1e6ed260099be /src/test/java
parentdd00dcecfcfb2458ed5f4c05deef407717cea0aa (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.java31
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();
+ }
}