diff options
author | elenairina <elenairina@google.com> | 2017-10-10 14:08:54 +0200 |
---|---|---|
committer | Marcel Hlopko <hlopko@google.com> | 2017-10-11 10:00:00 +0200 |
commit | 7c605cf6ea9755a06e5abb16a631faac8ebe2937 (patch) | |
tree | 58b2a1df3d14e9942c91729655375602c0198ead /src/test/java/com/google/devtools/build/lib/rules/android | |
parent | ca74482825e0c0ca5d119eceab74ba4292428557 (diff) |
Return JavaInfo providers only once in Java rules.
Previously the java rules returned some providers twice: once as regular providers and once wrapped in JavaInfo (e.g. JavaCompilationArgsProvider). This is unnecessary, inefficient and error prone. JavaInfo should be the only way of returning these providers.
RELNOTES: None.
PiperOrigin-RevId: 171663550
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib/rules/android')
4 files changed, 14 insertions, 8 deletions
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 a81404bde5..42a4434b99 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 @@ -27,6 +27,7 @@ import com.google.devtools.build.lib.analysis.configuredtargets.FileConfiguredTa import com.google.devtools.build.lib.analysis.util.BuildViewTestCase; import com.google.devtools.build.lib.collect.nestedset.NestedSet; import com.google.devtools.build.lib.rules.java.JavaCompilationArgsProvider; +import com.google.devtools.build.lib.rules.java.JavaInfo; import com.google.devtools.build.lib.rules.java.JavaRuleOutputJarsProvider; import com.google.devtools.build.lib.rules.java.JavaRuleOutputJarsProvider.OutputJar; import java.util.Set; @@ -152,7 +153,7 @@ public class AarImportTest extends BuildViewTestCase { ConfiguredTarget aarImportTarget = getConfiguredTarget("//a:foo"); Iterable<OutputJar> outputJars = - aarImportTarget.getProvider(JavaRuleOutputJarsProvider.class).getOutputJars(); + JavaInfo.getProvider(JavaRuleOutputJarsProvider.class, aarImportTarget).getOutputJars(); assertThat(outputJars).hasSize(1); Artifact classesJar = outputJars.iterator().next().getClassJar(); @@ -224,8 +225,8 @@ public class AarImportTest extends BuildViewTestCase { public void testJavaCompilationArgsProvider() throws Exception { ConfiguredTarget aarImportTarget = getConfiguredTarget("//a:bar"); - JavaCompilationArgsProvider provider = aarImportTarget - .getProvider(JavaCompilationArgsProvider.class); + JavaCompilationArgsProvider provider = JavaInfo + .getProvider(JavaCompilationArgsProvider.class, aarImportTarget); assertThat(provider).isNotNull(); assertThat(artifactsToStrings(provider.getJavaCompilationArgs().getRuntimeJars())) .containsExactly( diff --git a/src/test/java/com/google/devtools/build/lib/rules/android/AndroidBinaryTest.java b/src/test/java/com/google/devtools/build/lib/rules/android/AndroidBinaryTest.java index c50042c52c..2c7bb8d8e6 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/android/AndroidBinaryTest.java +++ b/src/test/java/com/google/devtools/build/lib/rules/android/AndroidBinaryTest.java @@ -46,6 +46,7 @@ import com.google.devtools.build.lib.rules.android.deployinfo.AndroidDeployInfoO import com.google.devtools.build.lib.rules.cpp.CppFileTypes; import com.google.devtools.build.lib.rules.java.JavaCompilationArgsProvider; import com.google.devtools.build.lib.rules.java.JavaCompileAction; +import com.google.devtools.build.lib.rules.java.JavaInfo; import com.google.devtools.build.lib.rules.java.JavaSemantics; import com.google.devtools.build.lib.testutil.MoreAsserts; import com.google.devtools.build.lib.util.FileType; @@ -2603,8 +2604,8 @@ public class AndroidBinaryTest extends AndroidBuildViewTestCase { "android_binary(name = 'a', manifest = 'AndroidManifest.xml', ", " srcs = ['A.java'], javacopts = ['-g:lines,source'])"); - final JavaCompilationArgsProvider provider = - getConfiguredTarget("//java/foo:a").getProvider(JavaCompilationArgsProvider.class); + final JavaCompilationArgsProvider provider = JavaInfo + .getProvider(JavaCompilationArgsProvider.class, getConfiguredTarget("//java/foo:a")); assertThat(provider).isNotNull(); } 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 5ae85d5c54..a283dfbbf8 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 @@ -36,6 +36,7 @@ import com.google.devtools.build.lib.analysis.util.BuildViewTestCase; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.rules.android.deployinfo.AndroidDeployInfoOuterClass.AndroidDeployInfo; import com.google.devtools.build.lib.rules.java.JavaCompileAction; +import com.google.devtools.build.lib.rules.java.JavaInfo; import com.google.devtools.build.lib.rules.java.JavaRuleOutputJarsProvider; import com.google.devtools.build.lib.testutil.TestRuleClassProvider; import com.google.devtools.build.lib.util.Preconditions; @@ -153,7 +154,8 @@ public abstract class AndroidBuildViewTestCase extends BuildViewTestCase { } protected Artifact getResourceClassJar(final ConfiguredTarget target) { - JavaRuleOutputJarsProvider jarProvider = target.getProvider(JavaRuleOutputJarsProvider.class); + JavaRuleOutputJarsProvider jarProvider = + JavaInfo.getProvider(JavaRuleOutputJarsProvider.class, target); assertThat(jarProvider).isNotNull(); return Iterables.find( jarProvider.getOutputJars(), 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 0f76cd20d1..98f17b9a70 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 @@ -39,6 +39,7 @@ import com.google.devtools.build.lib.rules.android.AndroidIdeInfoProvider.Source import com.google.devtools.build.lib.rules.java.JavaCompilationArgsProvider; import com.google.devtools.build.lib.rules.java.JavaCompileAction; import com.google.devtools.build.lib.rules.java.JavaExportsProvider; +import com.google.devtools.build.lib.rules.java.JavaInfo; import com.google.devtools.build.lib.rules.java.JavaSemantics; import com.google.devtools.build.lib.vfs.PathFragment; import java.util.Arrays; @@ -345,7 +346,7 @@ public class AndroidLibraryTest extends AndroidBuildViewTestCase { ConfiguredTarget a = getConfiguredTarget("//java/peach:a"); Iterable<String> compileTimeJars = ActionsTestUtil.baseArtifactNames( - a.getProvider(JavaCompilationArgsProvider.class) + JavaInfo.getProvider(JavaCompilationArgsProvider.class, a) .getJavaCompilationArgs().getCompileTimeJars()); assertThat(compileTimeJars).contains("libb-hjar.jar"); assertThat(compileTimeJars).doesNotContain("libc-hjar.jar"); @@ -957,7 +958,8 @@ public class AndroidLibraryTest extends AndroidBuildViewTestCase { ConfiguredTarget libNeverlink = getConfiguredTarget("//java/apps/android:lib_neverlink"); NestedSet<Artifact> neverLinkFilesToBuild = getFilesToBuild(libNeverlink); NestedSet<Artifact> libFilesToBuild = getFilesToBuild(lib); - JavaCompilationArgsProvider argsProvider = foo.getProvider(JavaCompilationArgsProvider.class); + JavaCompilationArgsProvider argsProvider = + JavaInfo.getProvider(JavaCompilationArgsProvider.class, foo); assertThat(argsProvider.getJavaCompilationArgs().getCompileTimeJars()) .contains(ActionsTestUtil.getFirstArtifactEndingWith( |