diff options
author | 2018-05-24 10:37:03 -0700 | |
---|---|---|
committer | 2018-05-24 10:38:19 -0700 | |
commit | 0c5c1c67da1d3c2d1c6fa76230ef0d41ce47e0c2 (patch) | |
tree | 453bc6c2732730fc043e09e89de86131c6071504 /src/test/java/com/google/devtools/build/lib | |
parent | bc32493847eb5670ed9fdf472abc3a70b1901999 (diff) |
Migrate struct() to skylarkbuildapi
RELNOTES: None.
PiperOrigin-RevId: 197915097
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib')
3 files changed, 19 insertions, 10 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"); + } } diff --git a/src/test/java/com/google/devtools/build/lib/syntax/EvalUtilsTest.java b/src/test/java/com/google/devtools/build/lib/syntax/EvalUtilsTest.java index a34eab24ba..4c1810aa16 100644 --- a/src/test/java/com/google/devtools/build/lib/syntax/EvalUtilsTest.java +++ b/src/test/java/com/google/devtools/build/lib/syntax/EvalUtilsTest.java @@ -21,7 +21,7 @@ import static org.junit.Assert.fail; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; -import com.google.devtools.build.lib.packages.NativeProvider; +import com.google.devtools.build.lib.packages.StructProvider; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; import com.google.devtools.build.lib.skylarkinterface.SkylarkPrinter; import com.google.devtools.build.lib.skylarkinterface.SkylarkValue; @@ -129,7 +129,7 @@ public class EvalUtilsTest extends EvaluationTestCase { SkylarkDict.of(env, "key", 123), SkylarkDict.of(env, 123, "value"), NestedSetBuilder.stableOrder().add(1).add(2).add(3).build(), - NativeProvider.STRUCT.create(ImmutableMap.of("key", (Object) "value"), "no field %s"), + StructProvider.STRUCT.create(ImmutableMap.of("key", (Object) "value"), "no field %s"), }; for (int i = 0; i < objects.length; ++i) { diff --git a/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java b/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java index 3e0db3dd03..422ac033a5 100644 --- a/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java +++ b/src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java @@ -24,6 +24,7 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable; import com.google.devtools.build.lib.events.Location; import com.google.devtools.build.lib.packages.NativeInfo; import com.google.devtools.build.lib.packages.NativeProvider; +import com.google.devtools.build.lib.packages.StructProvider; import com.google.devtools.build.lib.skylarkinterface.Param; import com.google.devtools.build.lib.skylarkinterface.ParamType; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; @@ -385,7 +386,7 @@ public class SkylarkEvaluationTest extends EvaluationTest { builder.put(nativeFunction, FuncallExpression.getBuiltinCallable(this, nativeFunction)); } - return NativeProvider.STRUCT.create(builder.build(), "no native callable '%s'"); + return StructProvider.STRUCT.create(builder.build(), "no native callable '%s'"); } @SkylarkCallable( |