diff options
| author | Felix Hanley <felix@userspace.com.au> | 2018-11-20 13:33:48 +0000 |
|---|---|---|
| committer | Felix Hanley <felix@userspace.com.au> | 2018-11-20 13:36:23 +0000 |
| commit | 2b437d409dd576061db1bb1f92dc5ee159568a7e (patch) | |
| tree | 9f79c607b5e0d704df9be70e95a59abd95ae42aa | |
| parent | 3116a9fa1d92fbf8fa1f9d7295d2bc2bf72ef9f3 (diff) | |
| download | lexer-2b437d409dd576061db1bb1f92dc5ee159568a7e.tar.gz lexer-2b437d409dd576061db1bb1f92dc5ee159568a7e.tar.bz2 | |
Clean up tests
| -rw-r--r-- | lexer.go | 1 | ||||
| -rw-r--r-- | lexer_test.go | 76 |
2 files changed, 30 insertions, 47 deletions
@@ -216,6 +216,7 @@ func (l *Lexer) Error(format string, args ...interface{}) StateFunc { Type: ErrorToken, Value: fmt.Sprintf(format, args...), Position: l.position, + Line: l.line, } return nil } diff --git a/lexer_test.go b/lexer_test.go index 25da17f..1795f7b 100644 --- a/lexer_test.go +++ b/lexer_test.go @@ -78,13 +78,11 @@ func TestMovingThroughString(t *testing.T) { for _, test := range run { r := l.Next() if r != test.r { - t.Errorf("Expected %q but got %q", test.r, r) - return + t.Fatalf("Expected %q but got %q", test.r, r) } if l.Current() != test.s { - t.Errorf("Expected %q but got %q", test.s, l.Current()) - return + t.Fatalf("Expected %q but got %q", test.s, l.Current()) } } } @@ -94,29 +92,29 @@ func TestNumbers(t *testing.T) { l.Start() tok, done := l.NextToken() if done { - t.Error("Expected a token, but lexer was finished") - return + t.Fatal("Expected a token but lexer finished") } if tok.Type != NumberToken { - t.Errorf("Expected a %v but got %v", NumberToken, tok.Type) - return + t.Fatalf("Expected a %v but got %v", NumberToken, tok.Type) } if tok.Value != "123" { - t.Errorf("Expected %q but got %q", "123", tok.Value) - return + t.Fatalf("Expected %q but got %q", "123", tok.Value) + } + + s := "[0] 123" + if tok.String() != s { + t.Fatalf("Expected %q but got %q", s, tok.String()) } tok, done = l.NextToken() if !done { - t.Error("Expected the lexer to be done, but it wasn't.") - return + t.Fatal("Expected done but it wasn't.") } if tok != nil { - t.Errorf("Expected a nil token, but got %v", *tok) - return + t.Fatalf("Expected a nil token but got %v", *tok) } } @@ -128,18 +126,15 @@ func TestNewlines(t *testing.T) { l.Start() tok, done := l.NextToken() if done { - t.Error("Expected the lexer to not be done, but it was.") - return + t.Fatal("Expected done, but it wasn't.") } if tok.Type != NumberToken { - t.Errorf("Expected a number token but got %v", *tok) - return + t.Fatalf("Expected a number token but got %v", *tok) } if tok.Value != "123" { - t.Errorf("Expected 123 but got %q", tok.Value) - return + t.Fatalf("Expected 123 but got %q", tok.Value) } if tok.Line != 1 { @@ -148,18 +143,15 @@ func TestNewlines(t *testing.T) { tok, done = l.NextToken() if done { - t.Error("Expected the lexer to not be done, but it was.") - return + t.Fatal("Expected not done, but it was.") } if tok.Type != NumberToken { - t.Errorf("Expected a number token but got %v", *tok) - return + t.Fatalf("Expected a number token but got %v", *tok) } if tok.Value != "456" { - t.Errorf("Expected 456 but got %q", tok.Value) - return + t.Fatalf("Expected 456 but got %q", tok.Value) } if tok.Line != 2 { @@ -171,19 +163,16 @@ func TestBackup(t *testing.T) { l := New("1", nil) r := l.Next() if r != '1' { - t.Errorf("Expected %q but got %q", '1', r) - return + t.Fatalf("Expected %q but got %q", '1', r) } if l.Current() != "1" { - t.Errorf("Expected %q but got %q", "1", l.Current()) - return + t.Fatalf("Expected %q but got %q", "1", l.Current()) } l.Backup() if l.Current() != "" { - t.Errorf("Expected empty string, but got %q", l.Current()) - return + t.Fatalf("Expected empty string but got %q", l.Current()) } } @@ -198,7 +187,7 @@ func TestWhitespace(t *testing.T) { } if tok.Type != NumberToken { - t.Fatalf("Expected number token, but got %v", *tok) + t.Fatalf("Expected number token but got %v", *tok) } } @@ -221,30 +210,25 @@ func TestMultipleTokens(t *testing.T) { for _, c := range cases { tok, done := l.NextToken() if done { - t.Error("Expected there to be more tokens, but there weren't") - return + t.Fatal("Expected there to be more tokens but there weren't") } if c.tokType != tok.Type { - t.Errorf("Expected token type %v but got %v", c.tokType, tok.Type) - return + t.Fatalf("Expected token type %v but got %v", c.tokType, tok.Type) } if c.val != tok.Value { - t.Errorf("Expected %q but got %q", c.val, tok.Value) - return + t.Fatalf("Expected %q but got %q", c.val, tok.Value) } } tok, done := l.NextToken() if !done { - t.Error("Expected the lexer to be done, but it wasn't.") - return + t.Fatal("Expected the lexer to be done but it wasn't.") } if tok != nil { - t.Errorf("Did not expect a token, but got %v", *tok) - return + t.Fatalf("Did not expect a token, but got %v", *tok) } } @@ -254,12 +238,10 @@ func TestError(t *testing.T) { tok, done := l.NextToken() if done { - t.Error("Expected token to be !done, but it was.") - return + t.Fatal("Expected token to be !done but it was.") } if tok.Type != ErrorToken { - t.Errorf("Expected error token, but got %v", *tok) - return + t.Fatalf("Expected error token but got %v", *tok) } } |
