aboutsummaryrefslogtreecommitdiff
path: root/driver
diff options
context:
space:
mode:
Diffstat (limited to 'driver')
-rw-r--r--driver/lexer_test.go28
1 files changed, 28 insertions, 0 deletions
diff --git a/driver/lexer_test.go b/driver/lexer_test.go
index 33edbc0..4dfed99 100644
--- a/driver/lexer_test.go
+++ b/driver/lexer_test.go
@@ -665,6 +665,34 @@ func TestLexer_Next(t *testing.T) {
return nil
},
},
+ {
+ lspec: &spec.LexSpec{
+ Entries: []*spec.LexEntry{
+ newLexEntryDefaultNOP("dot", spec.EscapePattern(`.`)),
+ newLexEntryDefaultNOP("star", spec.EscapePattern(`*`)),
+ newLexEntryDefaultNOP("plus", spec.EscapePattern(`+`)),
+ newLexEntryDefaultNOP("question", spec.EscapePattern(`?`)),
+ newLexEntryDefaultNOP("vbar", spec.EscapePattern(`|`)),
+ newLexEntryDefaultNOP("lparen", spec.EscapePattern(`(`)),
+ newLexEntryDefaultNOP("rparen", spec.EscapePattern(`)`)),
+ newLexEntryDefaultNOP("lbrace", spec.EscapePattern(`[`)),
+ newLexEntryDefaultNOP("backslash", spec.EscapePattern(`\`)),
+ },
+ },
+ src: `.*+?|()[\`,
+ tokens: []*Token{
+ newTokenDefault(1, "dot", newByteSequence([]byte(`.`))),
+ newTokenDefault(2, "star", newByteSequence([]byte(`*`))),
+ newTokenDefault(3, "plus", newByteSequence([]byte(`+`))),
+ newTokenDefault(4, "question", newByteSequence([]byte(`?`))),
+ newTokenDefault(5, "vbar", newByteSequence([]byte(`|`))),
+ newTokenDefault(6, "lparen", newByteSequence([]byte(`(`))),
+ newTokenDefault(7, "rparen", newByteSequence([]byte(`)`))),
+ newTokenDefault(8, "lbrace", newByteSequence([]byte(`[`))),
+ newTokenDefault(9, "backslash", newByteSequence([]byte(`\`))),
+ newEOFTokenDefault(),
+ },
+ },
}
for i, tt := range test {
for compLv := compiler.CompressionLevelMin; compLv <= compiler.CompressionLevelMax; compLv++ {