diff options
author | 2018-01-31 11:00:11 -0800 | |
---|---|---|
committer | 2018-01-31 11:01:53 -0800 | |
commit | aaab11fcf4eacfc17900daf11f35703fbef13194 (patch) | |
tree | 0199225322a1c20bc6e081307f8adc54a927ee12 /src/test/java | |
parent | 327b911f7830bbad5c51d57a86daebcb371250d8 (diff) |
Fix string_list_dict values to be skylark lists in all cases
RELNOTES: None.
PiperOrigin-RevId: 184016150
Diffstat (limited to 'src/test/java')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/syntax/SkylarkEvaluationTest.java | 19 |
1 files changed, 19 insertions, 0 deletions
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 34edf9e506..6baa230f79 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 @@ -35,6 +35,8 @@ import com.google.devtools.build.lib.skylarkinterface.SkylarkSignature; import com.google.devtools.build.lib.skylarkinterface.SkylarkValue; import com.google.devtools.build.lib.syntax.SkylarkList.MutableList; import com.google.devtools.build.lib.testutil.TestMode; +import java.util.List; +import java.util.Map; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -119,6 +121,10 @@ public class SkylarkEvaluationTest extends EvaluationTest { public String string() { return "a"; } + @SkylarkCallable(name = "string_list_dict", doc = "") + public Map<String, List<String>> stringListDict() { + return ImmutableMap.of("a", ImmutableList.of("b", "c")); + } @SkylarkCallable( name = "with_params", @@ -751,6 +757,18 @@ public class SkylarkEvaluationTest extends EvaluationTest { "type 'Mock' has no method isEmpty(string str)", "mock.isEmpty(str='abc')"); } + @Test + public void testStringListDictValues() throws Exception { + new SkylarkTest() + .update("mock", new Mock()) + .setUp( + "def func(mock):", + " for i, v in mock.string_list_dict().items():", + " modified_list = v + ['extra_string']", + " return modified_list", + "m = func(mock)") + .testLookup("m", MutableList.of(env, "b", "c", "extra_string")); + } @Test public void testJavaCallWithPositionalAndKwargs() throws Exception { @@ -1328,6 +1346,7 @@ public class SkylarkEvaluationTest extends EvaluationTest { "return_bad", "string", "string_list", + "string_list_dict", "struct_field", "struct_field_callable", "value_of", |