aboutsummaryrefslogtreecommitdiff
path: root/driver/lexer_test.go
diff options
context:
space:
mode:
authorRyo Nihei <nihei.dev@gmail.com>2021-02-14 20:19:22 +0900
committerRyo Nihei <nihei.dev@gmail.com>2021-02-14 20:19:22 +0900
commit467f223668d13ffa42679e6c928d82d5d402d87d (patch)
treeb518082b8af4d79b19b41e8beacc085d6f0cf84f /driver/lexer_test.go
parentAdd dot symbol matching any single character (diff)
downloadtre-467f223668d13ffa42679e6c928d82d5d402d87d.tar.gz
tre-467f223668d13ffa42679e6c928d82d5d402d87d.tar.xz
Add bracket expression matching specified character
The bracket expression matches any single character specified in it. In the bracket expression, the special characters like ., *, and so on are also handled as normal characters.
Diffstat (limited to 'driver/lexer_test.go')
-rw-r--r--driver/lexer_test.go18
1 files changed, 18 insertions, 0 deletions
diff --git a/driver/lexer_test.go b/driver/lexer_test.go
index 1a46470..1c8d627 100644
--- a/driver/lexer_test.go
+++ b/driver/lexer_test.go
@@ -77,6 +77,24 @@ func TestLexer_Next(t *testing.T) {
newEOFToken(),
},
},
+ {
+ regexps: [][]byte{
+ []byte("[ab.*|()[\\]]"),
+ },
+ src: "ab.*|()[]",
+ tokens: []*Token{
+ newToken(1, []byte("a")),
+ newToken(1, []byte("b")),
+ newToken(1, []byte(".")),
+ newToken(1, []byte("*")),
+ newToken(1, []byte("|")),
+ newToken(1, []byte("(")),
+ newToken(1, []byte(")")),
+ newToken(1, []byte("[")),
+ newToken(1, []byte("]")),
+ newEOFToken(),
+ },
+ },
}
for _, tt := range test {
res := map[int][]byte{}