From 3b760aff0f617607af1b2c0672ad89bc37e96421 Mon Sep 17 00:00:00 2001 From: Googler Date: Thu, 1 Feb 2018 15:19:31 -0800 Subject: PiperOrigin-RevId: 184203570 --- .../build/lib/rules/android/AarImportTest.java | 20 ++++----- .../rules/android/AndroidBuildViewTestCase.java | 23 +++++----- .../lib/rules/android/AndroidLibraryTest.java | 52 +++++++++++++--------- 3 files changed, 53 insertions(+), 42 deletions(-) (limited to 'src/test/java/com/google/devtools/build/lib/rules') diff --git a/src/test/java/com/google/devtools/build/lib/rules/android/AarImportTest.java b/src/test/java/com/google/devtools/build/lib/rules/android/AarImportTest.java index 681f893d09..bb7ee64b06 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/android/AarImportTest.java +++ b/src/test/java/com/google/devtools/build/lib/rules/android/AarImportTest.java @@ -78,9 +78,8 @@ public class AarImportTest extends BuildViewTestCase { public void testResourcesProvided() throws Exception { ConfiguredTarget aarImportTarget = getConfiguredTarget("//a:foo"); - NestedSet directResources = aarImportTarget - .getProvider(AndroidResourcesProvider.class) - .getDirectAndroidResources(); + NestedSet directResources = + aarImportTarget.get(AndroidResourcesInfo.PROVIDER).getDirectAndroidResources(); assertThat(directResources).hasSize(1); ResourceContainer resourceContainer = directResources.iterator().next(); @@ -99,7 +98,7 @@ public class AarImportTest extends BuildViewTestCase { public void testResourcesExtractor() throws Exception { ResourceContainer resourceContainer = getConfiguredTarget("//a:foo") - .getProvider(AndroidResourcesProvider.class) + .get(AndroidResourcesInfo.PROVIDER) .getDirectAndroidResources() .toList() .get(0); @@ -176,11 +175,12 @@ public class AarImportTest extends BuildViewTestCase { @Test public void testNoCustomJavaPackage() throws Exception { - ResourceContainer resourceContainer = getConfiguredTarget("//a:foo") - .getProvider(AndroidResourcesProvider.class) - .getDirectAndroidResources() - .iterator() - .next(); + ResourceContainer resourceContainer = + getConfiguredTarget("//a:foo") + .get(AndroidResourcesInfo.PROVIDER) + .getDirectAndroidResources() + .iterator() + .next(); // aar_import should not set a custom java package. Instead aapt will read the // java package from the manifest. @@ -293,7 +293,7 @@ public class AarImportTest extends BuildViewTestCase { private String getAndroidManifest(String aarImport) throws Exception { return getConfiguredTarget(aarImport) - .getProvider(AndroidResourcesProvider.class) + .get(AndroidResourcesInfo.PROVIDER) .getDirectAndroidResources() .toList() .get(0) diff --git a/src/test/java/com/google/devtools/build/lib/rules/android/AndroidBuildViewTestCase.java b/src/test/java/com/google/devtools/build/lib/rules/android/AndroidBuildViewTestCase.java index 5b3c4a6bc0..70003b2b6e 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/android/AndroidBuildViewTestCase.java +++ b/src/test/java/com/google/devtools/build/lib/rules/android/AndroidBuildViewTestCase.java @@ -20,6 +20,7 @@ import static com.google.devtools.build.lib.actions.util.ActionsTestUtil.getFirs import static org.junit.Assert.fail; import com.google.common.base.Preconditions; +import com.google.common.base.Splitter; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterables; @@ -130,12 +131,10 @@ public abstract class AndroidBuildViewTestCase extends BuildViewTestCase { ConfiguredTarget target, boolean transitive) { Preconditions.checkNotNull(target); - final AndroidResourcesProvider provider = target.getProvider(AndroidResourcesProvider.class); - assertThat(provider).named("No android resources exported from the target.").isNotNull(); + final AndroidResourcesInfo info = target.get(AndroidResourcesInfo.PROVIDER); + assertThat(info).named("No android resources exported from the target.").isNotNull(); return getOnlyElement( - transitive - ? provider.getTransitiveAndroidResources() - : provider.getDirectAndroidResources()); + transitive ? info.getTransitiveAndroidResources() : info.getDirectAndroidResources()); } protected Artifact getResourceClassJar(final ConfiguredTarget target) { @@ -161,10 +160,12 @@ public abstract class AndroidBuildViewTestCase extends BuildViewTestCase { String actualFlagValue = actualArgs.get(actualArgs.indexOf("--primaryData") + 1); List actualPaths = null; if (actualFlagValue.matches("[^;]*;[^;]*;.*")) { - actualPaths = Arrays.asList(actualFlagValue.split(";")[0].split("#")); + actualPaths = + Arrays.asList(Iterables.get(Splitter.on(';').split(actualFlagValue), 0).split("#")); } else if (actualFlagValue.matches("[^:]*:[^:]*:.*")) { - actualPaths = Arrays.asList(actualFlagValue.split(":")[0].split("#")); + actualPaths = + Arrays.asList(Iterables.get(Splitter.on(':').split(actualFlagValue), 0).split("#")); } else { fail(String.format("Failed to parse --primaryData: %s", actualFlagValue)); } @@ -193,8 +194,9 @@ public abstract class AndroidBuildViewTestCase extends BuildViewTestCase { fail(String.format("Failed to parse flag: %s", actualFlagValue)); } ImmutableList.Builder actualPaths = ImmutableList.builder(); - for (String resourceDependency : actualFlagValue.split(",")) { - actualPaths.add(resourceDependency.split(separator)[0].split("#")); + for (String resourceDependency : Splitter.on(',').split(actualFlagValue)) { + actualPaths.add( + Iterables.get(Splitter.on(separator).split(resourceDependency), 0).split("#")); } return actualPaths.build(); } @@ -223,8 +225,7 @@ public abstract class AndroidBuildViewTestCase extends BuildViewTestCase { // Returns an artifact that will be generated when a rule has resources. protected static Artifact getResourceArtifact(ConfiguredTarget target) { // the last provider is the provider from the target. - return Iterables.getLast( - target.getProvider(AndroidResourcesProvider.class).getDirectAndroidResources()) + return Iterables.getLast(target.get(AndroidResourcesInfo.PROVIDER).getDirectAndroidResources()) .getJavaClassJar(); } 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 929013e090..ea752af511 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 @@ -906,7 +906,7 @@ public class AndroidLibraryTest extends AndroidBuildViewTestCase { } @Test - public void testNeverlinkResources_AndroidResourcesProvider() throws Exception { + public void testNeverlinkResources_AndroidResourcesInfo() throws Exception { scratch.file("java/apps/android/BUILD", "android_library(name = 'foo',", " manifest = 'AndroidManifest.xml',", @@ -922,29 +922,31 @@ public class AndroidLibraryTest extends AndroidBuildViewTestCase { " manifest = 'AndroidManifest.xml')"); Function getLabel = ResourceContainer::getLabel; ConfiguredTarget foo = getConfiguredTarget("//java/apps/android:foo"); - assertThat(Iterables.transform( - foo.getProvider(AndroidResourcesProvider.class).getTransitiveAndroidResources(), getLabel)) + assertThat( + Iterables.transform( + foo.get(AndroidResourcesInfo.PROVIDER).getTransitiveAndroidResources(), getLabel)) .containsExactly( Label.parseAbsolute("//java/apps/android:lib"), Label.parseAbsolute("//java/apps/android:bar")); - assertThat(Iterables.transform( - foo.getProvider(AndroidResourcesProvider.class).getDirectAndroidResources(), getLabel)) + assertThat( + Iterables.transform( + foo.get(AndroidResourcesInfo.PROVIDER).getDirectAndroidResources(), getLabel)) .containsExactly(Label.parseAbsolute("//java/apps/android:foo")); ConfiguredTarget lib = getConfiguredTarget("//java/apps/android:lib"); - assertThat(Iterables.transform( - lib.getProvider(AndroidResourcesProvider.class).getTransitiveAndroidResources(), getLabel)) + assertThat( + Iterables.transform( + lib.get(AndroidResourcesInfo.PROVIDER).getTransitiveAndroidResources(), getLabel)) .containsExactly(Label.parseAbsolute("//java/apps/android:bar")); - assertThat(Iterables.transform( - lib.getProvider(AndroidResourcesProvider.class).getDirectAndroidResources(), getLabel)) + assertThat( + Iterables.transform( + lib.get(AndroidResourcesInfo.PROVIDER).getDirectAndroidResources(), getLabel)) .containsExactly(Label.parseAbsolute("//java/apps/android:lib")); ConfiguredTarget libNeverlink = getConfiguredTarget("//java/apps/android:lib_neverlink"); - assertThat(libNeverlink.getProvider(AndroidResourcesProvider.class) - .getTransitiveAndroidResources()) + assertThat(libNeverlink.get(AndroidResourcesInfo.PROVIDER).getTransitiveAndroidResources()) .isEmpty(); - assertThat(libNeverlink.getProvider(AndroidResourcesProvider.class) - .getDirectAndroidResources()) + assertThat(libNeverlink.get(AndroidResourcesInfo.PROVIDER).getDirectAndroidResources()) .isEmpty(); } @@ -1010,7 +1012,7 @@ public class AndroidLibraryTest extends AndroidBuildViewTestCase { ResourceContainer resources = Iterables.getOnlyElement( - target.getProvider(AndroidResourcesProvider.class).getDirectAndroidResources()); + target.get(AndroidResourcesInfo.PROVIDER).getDirectAndroidResources()); SpawnAction resourceParserAction = (SpawnAction) @@ -1125,8 +1127,11 @@ public class AndroidLibraryTest extends AndroidBuildViewTestCase { .isEqualTo( ActionsTestUtil.getFirstArtifactEndingWith( artifactClosure, "java/android/AndroidManifest.xml")); - ResourceContainer resources = getOnlyElement(getConfiguredTarget("//java/android:r") - .getProvider(AndroidResourcesProvider.class).getDirectAndroidResources()); + ResourceContainer resources = + getOnlyElement( + getConfiguredTarget("//java/android:r") + .get(AndroidResourcesInfo.PROVIDER) + .getDirectAndroidResources()); assertThat(provider.getGeneratedManifest()).isEqualTo(resources.getManifest()); } @@ -1154,9 +1159,11 @@ public class AndroidLibraryTest extends AndroidBuildViewTestCase { .isEqualTo( ActionsTestUtil.getFirstArtifactEndingWith( artifactClosure, "handwriting/AndroidManifest.xml")); - ResourceContainer resources = getOnlyElement( - getConfiguredTarget("//research/handwriting/java/com/google/research/handwriting:r") - .getProvider(AndroidResourcesProvider.class).getDirectAndroidResources()); + ResourceContainer resources = + getOnlyElement( + getConfiguredTarget("//research/handwriting/java/com/google/research/handwriting:r") + .get(AndroidResourcesInfo.PROVIDER) + .getDirectAndroidResources()); assertThat(provider.getGeneratedManifest()).isEqualTo(resources.getManifest()); } @@ -1186,8 +1193,11 @@ public class AndroidLibraryTest extends AndroidBuildViewTestCase { .isEqualTo( ActionsTestUtil.getFirstArtifactEndingWith( artifactClosure, "java/android/AndroidManifest.xml")); - ResourceContainer resources = getOnlyElement(getConfiguredTarget("//java/android:r") - .getProvider(AndroidResourcesProvider.class).getDirectAndroidResources()); + ResourceContainer resources = + getOnlyElement( + getConfiguredTarget("//java/android:r") + .get(AndroidResourcesInfo.PROVIDER) + .getDirectAndroidResources()); assertThat(provider.getGeneratedManifest()).isEqualTo(resources.getManifest()); } -- cgit v1.2.3