aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java/com
diff options
context:
space:
mode:
authorGravatar Dmitry Lomov <dslomov@google.com>2016-09-25 20:24:24 +0000
committerGravatar Laszlo Csomor <laszlocsomor@google.com>2016-09-26 07:48:01 +0000
commit94b2c8889817359705710a544d850987d535135d (patch)
tree75b78821de62860898f0d98dc1ab47d222392221 /src/test/java/com
parent8d76f0729ba3b6f12cf3546ab19a3437991315e3 (diff)
Native declared providers are automatically exported.
-- MOS_MIGRATED_REVID=134221884
Diffstat (limited to 'src/test/java/com')
-rw-r--r--src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java5
-rw-r--r--src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java4
-rw-r--r--src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java14
3 files changed, 18 insertions, 5 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 453f47d1ad..8a18f541d9 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
@@ -23,7 +23,7 @@ import com.google.devtools.build.lib.analysis.SkylarkProviders;
import com.google.devtools.build.lib.analysis.util.BuildViewTestCase;
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.packages.SkylarkClassObject;
-import com.google.devtools.build.lib.packages.SkylarkClassObjectConstructor.Key;
+import com.google.devtools.build.lib.packages.SkylarkClassObjectConstructor.SkylarkKey;
import java.util.List;
import javax.annotation.Nullable;
import org.junit.Test;
@@ -64,7 +64,8 @@ public class JavaSkylarkApiTest extends BuildViewTestCase {
ConfiguredTarget configuredTarget = getConfiguredTarget("//java/test:my");
SkylarkProviders provider = configuredTarget.getProvider(SkylarkProviders.class);
SkylarkClassObject skylarkClassObject = provider
- .getDeclaredProvider(new Key(Label.parseAbsolute("//java/test:extension.bzl"), "result"));
+ .getDeclaredProvider(
+ new SkylarkKey(Label.parseAbsolute("//java/test:extension.bzl"), "result"));
assertThat(Iterables.transform((List<?>) skylarkClassObject.getValue("processor_classpath"),
new Function<Object, String>() {
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java
index a140187290..dc08c01695 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java
@@ -817,7 +817,7 @@ public class SkylarkIntegrationTest extends BuildViewTestCase {
);
ConfiguredTarget configuredTarget = getConfiguredTarget("//test:r");
- SkylarkClassObjectConstructor.Key key = new SkylarkClassObjectConstructor.Key(
+ SkylarkClassObjectConstructor.Key key = new SkylarkClassObjectConstructor.SkylarkKey(
Label.create(configuredTarget.getLabel().getPackageIdentifier(), "extension.bzl"),
"my_provider");
SkylarkProviders skylarkProviders = configuredTarget.getProvider(SkylarkProviders.class);
@@ -844,7 +844,7 @@ public class SkylarkIntegrationTest extends BuildViewTestCase {
);
ConfiguredTarget configuredTarget = getConfiguredTarget("//test:r");
- SkylarkClassObjectConstructor.Key key = new SkylarkClassObjectConstructor.Key(
+ SkylarkClassObjectConstructor.Key key = new SkylarkClassObjectConstructor.SkylarkKey(
Label.create(configuredTarget.getLabel().getPackageIdentifier(), "extension.bzl"),
"my_provider");
SkylarkProviders skylarkProviders = configuredTarget.getProvider(SkylarkProviders.class);
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java
index 42cd32a2a8..7a78b6e2a2 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java
@@ -981,7 +981,7 @@ public class SkylarkRuleClassFunctionsTest extends SkylarkTestCase {
assertThat(dataConstructor.isExported()).isTrue();
assertThat(dataConstructor.getPrintableName()).isEqualTo("data");
assertThat(dataConstructor.getKey()).isEqualTo(
- new SkylarkClassObjectConstructor.Key(FAKE_LABEL, "data")
+ new SkylarkClassObjectConstructor.SkylarkKey(FAKE_LABEL, "data")
);
}
@@ -1017,4 +1017,16 @@ public class SkylarkRuleClassFunctionsTest extends SkylarkTestCase {
"d = d1 + d2"
);
}
+
+ @Test
+ public void structsAsDeclaredProvidersTest() throws Exception {
+ evalAndExport(
+ "data = struct(x = 1)"
+ );
+ SkylarkClassObject data = (SkylarkClassObject) lookup("data");
+ assertThat(SkylarkClassObjectConstructor.STRUCT.isExported()).isTrue();
+ assertThat(data.getConstructor()).isEqualTo(SkylarkClassObjectConstructor.STRUCT);
+ assertThat(data.getConstructor().getKey())
+ .isEqualTo(SkylarkClassObjectConstructor.STRUCT.getKey());
+ }
}