summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2026-04-18 13:29:07 +0100
committerMichael Williamson <mike@zwobble.org>2026-04-18 13:29:07 +0100
commitacda00f5659990a23114f9b006f52498f01b25a4 (patch)
tree3ca85087b8ded0039225af27b87d472feda25147
parentdda81e22bd1274d54e627e284c49ded9aa1c0b04 (diff)
Add test for whitespace separation
-rw-r--r--src/test/java/org/zwobble/hobgoblin/parser/TokenizerTests.java13
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));
}