diff options
author | 2016-01-29 21:51:19 +0000 | |
---|---|---|
committer | 2016-02-01 09:45:53 +0000 | |
commit | f941d56acfad5f8c819c81b494f806ea74ea7fd8 (patch) | |
tree | 7bd6f92a166ab198fe657d98a0b3029e08d6ac0c /src/test/java/com/google/devtools/build/lib/syntax/ValidationTest.java | |
parent | 2229c3b00ffcb9191949488d711056649085bd71 (diff) |
Reinstate mutable SkylarkDict
Add <String, Object> annotation to optionMap invocation in SkylarkAttr,
to make JDK 1.7 happy.
Give the visible name "aspect" to class SkylarkAspect.
--
MOS_MIGRATED_REVID=113394826
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib/syntax/ValidationTest.java')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/syntax/ValidationTest.java | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/ValidationTest.java b/src/test/java/com/google/devtools/build/lib/syntax/ValidationTest.java index 4c6eb6ac63..c44e5c918b 100644 --- a/src/test/java/com/google/devtools/build/lib/syntax/ValidationTest.java +++ b/src/test/java/com/google/devtools/build/lib/syntax/ValidationTest.java @@ -284,7 +284,7 @@ public class ValidationTest extends EvaluationTestCase { @Test public void testParentWithSkylarkModule() throws Exception { - Class<?> emptyTupleClass = Tuple.EMPTY.getClass(); + Class<?> emptyTupleClass = Tuple.empty().getClass(); Class<?> tupleClass = Tuple.of(1, "a", "b").getClass(); Class<?> mutableListClass = new MutableList(Tuple.of(1, 2, 3), env).getClass(); @@ -311,7 +311,7 @@ public class ValidationTest extends EvaluationTestCase { @Test public void testSkylarkTypeEquivalence() throws Exception { // All subclasses of SkylarkList are made equivalent - Class<?> emptyTupleClass = Tuple.EMPTY.getClass(); + Class<?> emptyTupleClass = Tuple.empty().getClass(); Class<?> tupleClass = Tuple.of(1, "a", "b").getClass(); Class<?> mutableListClass = new MutableList(Tuple.of(1, 2, 3), env).getClass(); @@ -322,8 +322,14 @@ public class ValidationTest extends EvaluationTestCase { // Also for ClassObject assertThat(SkylarkType.of(ClassObject.SkylarkClassObject.class)).isEqualTo(SkylarkType.STRUCT); - // TODO(bazel-team): fix that? - assertThat(SkylarkType.of(ClassObject.class)).isNotEqualTo(SkylarkType.STRUCT); + try { + SkylarkType.of(ClassObject.class); + throw new Exception("foo"); + } catch (Exception e) { + assertThat(e.getMessage()).contains( + "interface com.google.devtools.build.lib.syntax.ClassObject " + + "is not allowed as a Skylark value"); + } // Also test for these bazel classes, to avoid some regression. // TODO(bazel-team): move to some other place to remove dependency of syntax tests on Artifact? @@ -342,17 +348,17 @@ public class ValidationTest extends EvaluationTestCase { assertThat(SkylarkType.LIST.includes(combo1)).isTrue(); SkylarkType union1 = - SkylarkType.Union.of(SkylarkType.MAP, SkylarkType.LIST, SkylarkType.STRUCT); - assertThat(union1.includes(SkylarkType.MAP)).isTrue(); + SkylarkType.Union.of(SkylarkType.DICT, SkylarkType.LIST, SkylarkType.STRUCT); + assertThat(union1.includes(SkylarkType.DICT)).isTrue(); assertThat(union1.includes(SkylarkType.STRUCT)).isTrue(); assertThat(union1.includes(combo1)).isTrue(); assertThat(union1.includes(SkylarkType.STRING)).isFalse(); SkylarkType union2 = SkylarkType.Union.of( - SkylarkType.LIST, SkylarkType.MAP, SkylarkType.STRING, SkylarkType.INT); + SkylarkType.LIST, SkylarkType.DICT, SkylarkType.STRING, SkylarkType.INT); SkylarkType inter1 = SkylarkType.intersection(union1, union2); - assertThat(inter1.includes(SkylarkType.MAP)).isTrue(); + assertThat(inter1.includes(SkylarkType.DICT)).isTrue(); assertThat(inter1.includes(SkylarkType.LIST)).isTrue(); assertThat(inter1.includes(combo1)).isTrue(); assertThat(inter1.includes(SkylarkType.INT)).isFalse(); |