diff options
Diffstat (limited to 'driver/lexer_test.go')
-rw-r--r-- | driver/lexer_test.go | 39 |
1 files changed, 21 insertions, 18 deletions
diff --git a/driver/lexer_test.go b/driver/lexer_test.go index e48c12f..1f3841b 100644 --- a/driver/lexer_test.go +++ b/driver/lexer_test.go @@ -2,6 +2,7 @@ package driver import ( "bytes" + "fmt" "strings" "testing" @@ -409,27 +410,29 @@ func TestLexer_Next(t *testing.T) { }, }, } - for _, tt := range test { - clspec, err := compiler.Compile(tt.lspec) - if err != nil { - t.Fatalf("unexpected error occurred: %v", err) - } - lexer, err := NewLexer(clspec, strings.NewReader(tt.src)) - if err != nil { - t.Fatalf("unexpecated error occurred; %v", err) - } - for _, eTok := range tt.tokens { - tok, err := lexer.Next() + for i, tt := range test { + t.Run(fmt.Sprintf("#%v", i), func(t *testing.T) { + clspec, err := compiler.Compile(tt.lspec) + if err != nil { + t.Fatalf("unexpected error occurred: %v", err) + } + lexer, err := NewLexer(clspec, strings.NewReader(tt.src)) if err != nil { - t.Log(err) - break + t.Fatalf("unexpecated error occurred; %v", err) } - testToken(t, eTok, tok) - // t.Logf("token: ID: %v, Match: %+v Text: \"%v\", EOF: %v, Invalid: %v", tok.ID, tok.Match, string(tok.Match), tok.EOF, tok.Invalid) - if tok.EOF { - break + for _, eTok := range tt.tokens { + tok, err := lexer.Next() + if err != nil { + t.Log(err) + break + } + testToken(t, eTok, tok) + // t.Logf("token: ID: %v, Match: %+v Text: \"%v\", EOF: %v, Invalid: %v", tok.ID, tok.Match, string(tok.Match), tok.EOF, tok.Invalid) + if tok.EOF { + break + } } - } + }) } } |