diff options
Diffstat (limited to 'src/test/java')
| -rw-r--r-- | src/test/java/org/shedlang/compiler/stackir/StackCompilerValTests.java | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerValTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerValTests.java index 3126c82b..a03e91b6 100644 --- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerValTests.java +++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerValTests.java @@ -9,7 +9,7 @@ import static org.zwobble.precisely.Matchers.isSequence; public class StackCompilerValTests { @Test - public void expressionIsEvaluatedAndStoredAsLocal() { + public void whenValIsFunctionStatementThenExpressionIsEvaluatedAndStoredAsLocal() { var node = Typed.val( Typed.targetVariable("x"), Typed.stringLiteral("hello") @@ -22,4 +22,19 @@ public class StackCompilerValTests { isLocalStoreInstruction("x") )); } + + @Test + public void whenValIsNamespaceStatementThenExpressionIsEvaluatedAndStoredAsLocal() { + var node = Typed.val( + Typed.targetVariable("x"), + Typed.stringLiteral("hello") + ); + + var instructions = StackCompiler.compileNamespaceStatement(node); + + assertThat(instructions, isSequence( + isPushStringInstruction("hello"), + isLocalStoreInstruction("x") + )); + } } |
