aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com
diff options
context:
space:
mode:
authorGravatar Googler <noreply@google.com>2017-12-08 06:03:08 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2017-12-08 06:04:27 -0800
commit6a4f0ab631f4395c5a16ae69ce994bd7f5486ac6 (patch)
tree213c28662f51dffd665ed3bd6b83a7fa3ecb78b4 /src/main/java/com
parent2a9e125499c8fadb731420a1a9dfe7adc8f08792 (diff)
Infrastructure for fixed checking if android_test can inherit resources
RELNOTES: none PiperOrigin-RevId: 178369060
Diffstat (limited to 'src/main/java/com')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/android/AndroidResourcesProcessorBuilder.java10
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/android/ApplicationManifest.java6
2 files changed, 14 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidResourcesProcessorBuilder.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidResourcesProcessorBuilder.java
index 368fee5d40..ff521ecd3d 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidResourcesProcessorBuilder.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidResourcesProcessorBuilder.java
@@ -104,6 +104,7 @@ public class AndroidResourcesProcessorBuilder {
private boolean throwOnResourceConflict;
private String packageUnderTest;
private boolean useCompiledResourcesForMerge;
+ private boolean isTestWithResources = false;
/**
* @param ruleContext The RuleContext that was used to create the SpawnAction.Builder.
@@ -272,6 +273,11 @@ public class AndroidResourcesProcessorBuilder {
return this;
}
+ public AndroidResourcesProcessorBuilder setIsTestWithResources(boolean isTestWithResources) {
+ this.isTestWithResources = isTestWithResources;
+ return this;
+ }
+
private ResourceContainer createAapt2ApkAction(ActionConstructionContext context) {
List<Artifact> outs = new ArrayList<>();
@@ -547,5 +553,9 @@ public class AndroidResourcesProcessorBuilder {
if (packageUnderTest != null) {
builder.add("--packageUnderTest", packageUnderTest);
}
+
+ if (isTestWithResources) {
+ builder.add("--isTestWithResources");
+ }
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/ApplicationManifest.java b/src/main/java/com/google/devtools/build/lib/rules/android/ApplicationManifest.java
index 70ef13b9aa..df468bfa52 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/ApplicationManifest.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/ApplicationManifest.java
@@ -342,7 +342,8 @@ public final class ApplicationManifest {
@Nullable Artifact rTxt,
boolean incremental,
Artifact proguardCfg,
- @Nullable String packageUnderTest)
+ @Nullable String packageUnderTest,
+ boolean hasLocalResourceFiles)
throws InterruptedException, RuleErrorException {
LocalResourceContainer data =
LocalResourceContainer.forAssetsAndResources(
@@ -382,7 +383,8 @@ public final class ApplicationManifest {
.getConfiguration()
.getFragment(AndroidConfiguration.class)
.throwOnResourceConflict())
- .setPackageUnderTest(packageUnderTest);
+ .setPackageUnderTest(packageUnderTest)
+ .setIsTestWithResources(hasLocalResourceFiles);
if (!incremental) {
builder
.targetAaptVersion(targetAaptVersion)