diff options
| author | Michael Williamson <mike@zwobble.org> | 2023-06-13 23:31:37 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2023-06-13 23:31:37 +0100 |
| commit | b003b9c7bad4126d7963d1a28ef46faeab4b4b6e (patch) | |
| tree | 4843e783dee5252589a94d3272a5a2c43eda2217 /src/test/java | |
| parent | ca6da7e84d372cb1922fac1a2b2513b7af6b975f (diff) | |
Store field names in typed namespace node
Diffstat (limited to 'src/test/java')
3 files changed, 14 insertions, 7 deletions
diff --git a/src/test/java/org/shedlang/compiler/ast/typed/Typed.java b/src/test/java/org/shedlang/compiler/ast/typed/Typed.java index a36c9679..ae709dd4 100644 --- a/src/test/java/org/shedlang/compiler/ast/typed/Typed.java +++ b/src/test/java/org/shedlang/compiler/ast/typed/Typed.java @@ -51,7 +51,7 @@ public class Typed { NamespaceName namespaceName, List<TypedNamespaceStatementNode> body ) { - return new TypedNamespaceNode(namespaceName, body, Sources.NULL); + return new TypedNamespaceNode(namespaceName, body, List.of(), Sources.NULL); } public static TypedStringLiteralNode stringLiteral(String value) { diff --git a/src/test/java/org/shedlang/compiler/ast/typed/TypedNodeMatchers.java b/src/test/java/org/shedlang/compiler/ast/typed/TypedNodeMatchers.java index dad777f6..26e6acbc 100644 --- a/src/test/java/org/shedlang/compiler/ast/typed/TypedNodeMatchers.java +++ b/src/test/java/org/shedlang/compiler/ast/typed/TypedNodeMatchers.java @@ -62,9 +62,13 @@ public class TypedNodeMatchers { } public static Matcher<TypedNamespaceNode> isTypedNamespaceNode( - Matcher<Iterable<? extends TypedNamespaceStatementNode>> body + Matcher<Iterable<? extends TypedNamespaceStatementNode>> body, + Matcher<Iterable<? extends String>> fieldNames ) { - return has("body", x -> x.body(), body); + return allOf( + has("body", x -> x.body(), body), + has("fieldNames", x -> x.fieldNames(), fieldNames) + ); } public static Matcher<TypedParamNode> isTypedParamNode( diff --git a/src/test/java/org/shedlang/compiler/typechecker/TypeCheckerNamespaceTests.java b/src/test/java/org/shedlang/compiler/typechecker/TypeCheckerNamespaceTests.java index 734ed89a..bbc4947c 100644 --- a/src/test/java/org/shedlang/compiler/typechecker/TypeCheckerNamespaceTests.java +++ b/src/test/java/org/shedlang/compiler/typechecker/TypeCheckerNamespaceTests.java @@ -28,7 +28,7 @@ public class TypeCheckerNamespaceTests { assertThat( result.value(), - isTypedNamespaceNode(isSequence()) + isTypedNamespaceNode(isSequence(), isSequence()) ); } @@ -47,9 +47,12 @@ public class TypeCheckerNamespaceTests { assertThat( result.value(), - isTypedNamespaceNode(isSequence( - isTypedFunctionDefinitionNode().withName("f") - )) + isTypedNamespaceNode( + isSequence( + isTypedFunctionDefinitionNode().withName("f") + ), + isSequence(equalTo("f")) + ) ); } |
