diff options
author | 2017-12-05 07:12:12 -0800 | |
---|---|---|
committer | 2017-12-05 07:15:32 -0800 | |
commit | a1c3231f3b48f22638529960257c59c71c38b668 (patch) | |
tree | 6f28de948273c9aebfb99b1dbd389d49cdf25278 /src/test/java/com/google | |
parent | 1fa2dfb28c5318cfa8190f47297f75e155d88e11 (diff) |
Expose getGenJarsProvider methods from JavaSkylarkApiProvider in JavaInfo
JavaSkylarkApiProvider will be deprecated soon and replaced by JavaInfo.
Methods exposed:
getGenJarsProvider()
Made changed in all relevant Java family rules, to build JavaGenJarsProvider provider and assign to JavaInfo
RELNOTES:none
PiperOrigin-RevId: 177950965
Diffstat (limited to 'src/test/java/com/google')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java | 36 |
1 files changed, 33 insertions, 3 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java b/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java index f5aac5caec..4ec72daf94 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java +++ b/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java @@ -987,7 +987,7 @@ public class JavaSkylarkApiTest extends BuildViewTestCase { myRuleTarget.get(new SkylarkKey(Label.parseAbsolute("//foo:extension.bzl"), "result")); @SuppressWarnings("unchecked") - SkylarkNestedSet sourceJars = (SkylarkNestedSet) (info.getValue("property")); + SkylarkNestedSet sourceJars = (SkylarkNestedSet) info.getValue("property"); assertThat(prettyJarNames(sourceJars.getSet(Artifact.class))) .containsExactly( @@ -1018,7 +1018,7 @@ public class JavaSkylarkApiTest extends BuildViewTestCase { myRuleTarget.get(new SkylarkKey(Label.parseAbsolute("//foo:extension.bzl"), "result")); @SuppressWarnings("unchecked") - SkylarkNestedSet sourceJars = (SkylarkNestedSet) (info.getValue("property")); + SkylarkNestedSet sourceJars = (SkylarkNestedSet) info.getValue("property"); assertThat(prettyJarNames(sourceJars.getSet(Artifact.class))) .containsExactly( @@ -1049,13 +1049,43 @@ public class JavaSkylarkApiTest extends BuildViewTestCase { myRuleTarget.get(new SkylarkKey(Label.parseAbsolute("//foo:extension.bzl"), "result")); @SuppressWarnings("unchecked") - SkylarkNestedSet sourceJars = (SkylarkNestedSet) (info.getValue("property")); + SkylarkNestedSet sourceJars = (SkylarkNestedSet) info.getValue("property"); assertThat(prettyJarNames(sourceJars.getSet(Artifact.class))) .containsExactly( "foo/libmy_java_lib_a.jar", "foo/libmy_java_lib_b.jar", "foo/libmy_java_lib_c.jar"); } + + @Test + public void testJavaInfoGetGenJarsProvider() throws Exception { + scratch.file( + "foo/extension.bzl", + "result = provider()", + "def _impl(ctx):", + " return [result(property = ctx.attr.dep[JavaInfo].annotation_processing)]", + "my_rule = rule(_impl, attrs = { 'dep' : attr.label() })"); + + scratch.file( + "foo/BUILD", + "load(':extension.bzl', 'my_rule')", + "java_library(name = 'my_java_lib_a', srcs = ['java/A.java'], ", + "javacopts = ['-processor com.google.process.Processor'])", + "my_rule(name = 'my_skylark_rule', dep = ':my_java_lib_a')"); + assertNoEvents(); + ConfiguredTarget myRuleTarget = getConfiguredTarget("//foo:my_skylark_rule"); + Info info = myRuleTarget.get( + new SkylarkKey(Label.parseAbsolute("//foo:extension.bzl"), "result")); + + JavaGenJarsProvider javaGenJarsProvider = (JavaGenJarsProvider) info.getValue("property"); + + assertThat(javaGenJarsProvider.getGenClassJar().getFilename()) + .isEqualTo("libmy_java_lib_a-gen.jar"); + assertThat(javaGenJarsProvider.getGenSourceJar().getFilename()) + .isEqualTo("libmy_java_lib_a-gensrc.jar"); + } + + @Test public void strictDepsEnabled() throws Exception { scratch.file( |