summaryrefslogtreecommitdiff
path: root/src/test/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2026-11-06 15:45:55 +0000
committerMichael Williamson <mike@zwobble.org>2026-11-06 15:45:55 +0000
commit6a723906638ba29c0421c0fd7f83cf3d64d0adab (patch)
tree188391697cc4c167849cf3316bb4317b7d61061a /src/test/java
parentd4a9b9ec4805f07a3041699c5dd37984bc431beb (diff)
Parse number
Diffstat (limited to 'src/test/java')
-rw-r--r--src/test/java/org/zwobble/hobgoblin/compiler/parser/ParserNumberTests.java24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/test/java/org/zwobble/hobgoblin/compiler/parser/ParserNumberTests.java b/src/test/java/org/zwobble/hobgoblin/compiler/parser/ParserNumberTests.java
new file mode 100644
index 0000000..92f11ee
--- /dev/null
+++ b/src/test/java/org/zwobble/hobgoblin/compiler/parser/ParserNumberTests.java
@@ -0,0 +1,24 @@
+package org.zwobble.hobgoblin.compiler.parser;
+
+import org.junit.jupiter.api.Test;
+
+import java.math.BigDecimal;
+
+import static org.zwobble.hobgoblin.compiler.ast.untyped.UntypedNumberLiteralNodeMatcher.isUntypedNumberLiteralNode;
+import static org.zwobble.hobgoblin.compiler.parser.ParserTesting.parseString;
+import static org.zwobble.precisely.AssertThat.assertThat;
+import static org.zwobble.precisely.Matchers.equalTo;
+
+public class ParserNumberTests {
+ @Test
+ public void canParseNumber() {
+ var source = "42";
+
+ var node = parseString(source, Parser::parseTopLevelExpression);
+
+ assertThat(node, isUntypedNumberLiteralNode()
+ .withValue(equalTo(BigDecimal.valueOf(42)))
+ );
+ }
+}
+