diff options
Diffstat (limited to 'errs/errors_test.go')
-rw-r--r-- | errs/errors_test.go | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/errs/errors_test.go b/errs/errors_test.go new file mode 100644 index 000000000..09f70eef5 --- /dev/null +++ b/errs/errors_test.go @@ -0,0 +1,46 @@ +package errs + +import ( + "fmt" + "testing" + + "github.com/ethereum/go-ethereum/logger" +) + +func testErrors() *Errors { + return &Errors{ + Package: "TEST", + Errors: map[int]string{ + 0: "zero", + 1: "one", + }, + Level: func(i int) (l logger.LogLevel) { + if i == 0 { + l = logger.ErrorLevel + } else { + l = logger.WarnLevel + } + return + }, + } +} + +func TestErrorMessage(t *testing.T) { + err := testErrors().New(0, "zero detail %v", "available") + message := fmt.Sprintf("%v", err) + exp := "[TEST] zero: zero detail available" + if message != exp { + t.Errorf("error message incorrect. expected %v, got %v", exp, message) + } +} + +func TestErrorSeverity(t *testing.T) { + err0 := testErrors().New(0, "zero detail") + if !err0.Fatal() { + t.Errorf("error should be fatal") + } + err1 := testErrors().New(1, "one detail") + if err1.Fatal() { + t.Errorf("error should not be fatal") + } +} |