diff options
| author | Michael Williamson <mike@zwobble.org> | 2023-07-05 21:15:51 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2023-07-05 21:15:51 +0100 |
| commit | 370e147a121a57ec9e14542a443ab96e3573d5d3 (patch) | |
| tree | 06e9f770ebdef5c9da7a0be7f2b2b65db0e19e3b /src/test/java/org | |
| parent | e35d7b64dc82864b88e7fe8041e1efd69aed144a (diff) | |
Parse negative ints
Diffstat (limited to 'src/test/java/org')
| -rw-r--r-- | src/test/java/org/shedlang/compiler/parser/ParserIntLiteralTests.java | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/test/java/org/shedlang/compiler/parser/ParserIntLiteralTests.java b/src/test/java/org/shedlang/compiler/parser/ParserIntLiteralTests.java index 61908772..bc0dcad9 100644 --- a/src/test/java/org/shedlang/compiler/parser/ParserIntLiteralTests.java +++ b/src/test/java/org/shedlang/compiler/parser/ParserIntLiteralTests.java @@ -7,7 +7,7 @@ import static org.shedlang.compiler.parser.ParserTesting.parseString; import static org.zwobble.precisely.AssertThat.assertThat; public class ParserIntLiteralTests { - // TODO: negatives + // TODO: forbid negative zero? // TODO: forbid leading zeroes? @Test @@ -36,4 +36,22 @@ public class ParserIntLiteralTests { assertThat(node, isUntypedIntLiteralNode(723)); } + + @Test + public void canParseSingleDigitNegativeInt() { + var source = "-7"; + + var node = parseString(source, Parser::parseTopLevelExpression); + + assertThat(node, isUntypedIntLiteralNode(-7)); + } + + @Test + public void canParseManyDigitNegativeInt() { + var source = "-723"; + + var node = parseString(source, Parser::parseTopLevelExpression); + + assertThat(node, isUntypedIntLiteralNode(-723)); + } } |
