diff --git a/src/test/java/com/github/nilstrieb/grsbpl/LexerTest.java b/src/test/java/com/github/nilstrieb/grsbpl/LexerTest.java index 4d3f3e9..f1e0393 100644 --- a/src/test/java/com/github/nilstrieb/grsbpl/LexerTest.java +++ b/src/test/java/com/github/nilstrieb/grsbpl/LexerTest.java @@ -112,6 +112,24 @@ class LexerTest { } + @Test + void alternativeNumbers() { + String withHex = "0xFFF 0xa4 0x10 1_000"; + List expected = List.of(0xFFF, 0xA4, 0x10, 1000); + assertEquals(expected, getValues(lex(withHex))); + } + + @Test + void string() { + String strings = "\"hallo\" \"test\" 't' \"hallo\\\"test\\n\""; + List tokens = lex(strings); + List expected = List.of(STRING, STRING, CHAR, STRING, EOF); + assertEquals(expected, getTypes(tokens)); + assertEquals("hallo", tokens.get(0).getStringValue()); + assertEquals("hallo\"test\n", tokens.get(3).getStringValue()); + } + + List lex(String program) { return lexer.lex(program.toCharArray()); }