aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java/com/google/devtools/build/lib/skylark
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/google/devtools/build/lib/skylark
parent8d76f0729ba3b6f12cf3546ab19a3437991315e3 (diff)
Native declared providers are automatically exported.
-- MOS_MIGRATED_REVID=134221884
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib/skylark')
-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
2 files changed, 15 insertions, 3 deletions
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());
+ }
}