diff options
author | cparsons <cparsons@google.com> | 2018-05-24 10:37:03 -0700 |
---|---|---|
committer | Copybara-Service <copybara-piper@google.com> | 2018-05-24 10:38:19 -0700 |
commit | 0c5c1c67da1d3c2d1c6fa76230ef0d41ce47e0c2 (patch) | |
tree | 453bc6c2732730fc043e09e89de86131c6071504 /src/test/java/com/google/devtools/build/lib/skylark | |
parent | bc32493847eb5670ed9fdf472abc3a70b1901999 (diff) |
Migrate struct() to skylarkbuildapi
RELNOTES: None.
PiperOrigin-RevId: 197915097
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib/skylark')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java | 22 |
1 files changed, 15 insertions, 7 deletions
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 debf9f5ab2..13d1997bec 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 @@ -35,7 +35,6 @@ import com.google.devtools.build.lib.packages.Attribute; import com.google.devtools.build.lib.packages.BuildType; import com.google.devtools.build.lib.packages.ImplicitOutputsFunction; import com.google.devtools.build.lib.packages.Info; -import com.google.devtools.build.lib.packages.NativeProvider; import com.google.devtools.build.lib.packages.PredicateWithMessage; import com.google.devtools.build.lib.packages.RequiredProviders; import com.google.devtools.build.lib.packages.RuleClass; @@ -45,6 +44,7 @@ import com.google.devtools.build.lib.packages.SkylarkDefinedAspect; import com.google.devtools.build.lib.packages.SkylarkInfo; import com.google.devtools.build.lib.packages.SkylarkProvider; import com.google.devtools.build.lib.packages.SkylarkProviderIdentifier; +import com.google.devtools.build.lib.packages.StructProvider; import com.google.devtools.build.lib.rules.cpp.transitions.DisableLipoTransition; import com.google.devtools.build.lib.skyframe.SkylarkImportLookupFunction; import com.google.devtools.build.lib.skylark.util.SkylarkTestCase; @@ -1180,17 +1180,17 @@ public class SkylarkRuleClassFunctionsTest extends SkylarkTestCase { } private static Info makeStruct(String field, Object value) { - return NativeProvider.STRUCT.create(ImmutableMap.of(field, value), "no field '%'"); + return StructProvider.STRUCT.create(ImmutableMap.of(field, value), "no field '%'"); } private static Info makeBigStruct(Environment env) { // struct(a=[struct(x={1:1}), ()], b=(), c={2:2}) - return NativeProvider.STRUCT.create( + return StructProvider.STRUCT.create( ImmutableMap.<String, Object>of( "a", MutableList.<Object>of( env, - NativeProvider.STRUCT.create( + StructProvider.STRUCT.create( ImmutableMap.<String, Object>of( "x", SkylarkDict.<Object, Object>of(env, 1, 1)), "no field '%s'"), @@ -1311,9 +1311,9 @@ public class SkylarkRuleClassFunctionsTest extends SkylarkTestCase { "data = struct(x = 1)" ); Info data = (Info) lookup("data"); - assertThat(NativeProvider.STRUCT.isExported()).isTrue(); - assertThat(data.getProvider()).isEqualTo(NativeProvider.STRUCT); - assertThat(data.getProvider().getKey()).isEqualTo(NativeProvider.STRUCT.getKey()); + assertThat(StructProvider.STRUCT.isExported()).isTrue(); + assertThat(data.getProvider()).isEqualTo(StructProvider.STRUCT); + assertThat(data.getProvider().getKey()).isEqualTo(StructProvider.STRUCT.getKey()); } @Test @@ -1656,4 +1656,12 @@ public class SkylarkRuleClassFunctionsTest extends SkylarkTestCase { assertThat(params.get(0)).isEqualTo("NoneType"); assertThat(params.get(1)).isEqualTo("NoneType"); } + + @Test + public void testTypeOfStruct() throws Exception { + eval("p = type(struct)", "s = type(struct())"); + + assertThat(lookup("p")).isEqualTo("Provider"); + assertThat(lookup("s")).isEqualTo("struct"); + } } |