diff options
| author | Michael Williamson <mike@zwobble.org> | 2026-04-18 13:29:07 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2026-04-18 13:29:07 +0100 |
| commit | acda00f5659990a23114f9b006f52498f01b25a4 (patch) | |
| tree | 3ca85087b8ded0039225af27b87d472feda25147 /src | |
| parent | dda81e22bd1274d54e627e284c49ded9aa1c0b04 (diff) | |
Add test for whitespace separation
Diffstat (limited to 'src')
| -rw-r--r-- | src/test/java/org/zwobble/hobgoblin/parser/TokenizerTests.java | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/test/java/org/zwobble/hobgoblin/parser/TokenizerTests.java b/src/test/java/org/zwobble/hobgoblin/parser/TokenizerTests.java index 67ecc1e..aa6dbe4 100644 --- a/src/test/java/org/zwobble/hobgoblin/parser/TokenizerTests.java +++ b/src/test/java/org/zwobble/hobgoblin/parser/TokenizerTests.java @@ -51,6 +51,19 @@ public class TokenizerTests { )); } + @Test + public void whitespaceSeparatesOtherTokens() { + var sourceText = SourceText.fromString("<string>", "one two \t three"); + + var tokens = Tokenizer.tokenize(sourceText); + + assertThat(tokens, isSequence( + equalTo(new Token(TokenType.IDENTIFIER, sourceRange(sourceText, 0, 3))), + equalTo(new Token(TokenType.IDENTIFIER, sourceRange(sourceText, 4, 7))), + equalTo(new Token(TokenType.IDENTIFIER, sourceRange(sourceText, 10, 15))) + )); + } + private static SourceRange sourceRange(SourceText sourceText, int fromCharacterIndex, int toCharacterIndex) { return sourceText.characterPosition(fromCharacterIndex).to(sourceText.characterPosition(toCharacterIndex)); } |
