diff --git a/app.go b/app.go index ee695a1223..0882cc38f5 100644 --- a/app.go +++ b/app.go @@ -84,8 +84,8 @@ type ErrorHandler = func(*Ctx, error) error // Error represents an error that occurred while handling a request. type Error struct { - Code int `json:"code"` - Message interface{} `json:"message"` + Code int `json:"code"` + Message string `json:"message"` } // App denotes the Fiber application. @@ -722,31 +722,19 @@ func (app *App) Route(prefix string, fn func(router Router), name ...string) Rou // Error makes it compatible with the `error` interface. func (e *Error) Error() string { - return fmt.Sprint(e.Message) + return e.Message } // NewError creates a new Error instance with an optional message -func NewError(code int, message ...interface{}) *Error { - e := &Error{ +func NewError(code int, message ...string) *Error { + err := &Error{ Code: code, Message: utils.StatusMessage(code), } if len(message) > 0 { - e.Message = message[0] + err.Message = message[0] } - return e -} - -// NewErrors creates multiple new Error messages -func NewErrors(code int, messages ...interface{}) *Error { - e := &Error{ - Code: code, - Message: utils.StatusMessage(code), - } - if len(messages) > 0 { - e.Message = messages - } - return e + return err } // Listener can be used to pass a custom listener. diff --git a/app_test.go b/app_test.go index d33994e861..67cca54967 100644 --- a/app_test.go +++ b/app_test.go @@ -1230,17 +1230,9 @@ func Benchmark_App_ETag_Weak(b *testing.B) { // go test -run Test_NewError func Test_NewError(t *testing.T) { - e := NewError(StatusForbidden, "permission denied") - utils.AssertEqual(t, StatusForbidden, e.Code) - utils.AssertEqual(t, "permission denied", fmt.Sprint(e.Message)) -} - -func Test_NewErrors(t *testing.T) { - e := NewErrors(StatusBadRequest, "error 1", "error 2") - messages := e.Message.([]interface{}) - utils.AssertEqual(t, StatusBadRequest, e.Code) - utils.AssertEqual(t, "error 1", fmt.Sprint(messages[0])) - utils.AssertEqual(t, "error 2", fmt.Sprint(messages[1])) + err := NewError(StatusForbidden, "permission denied") + utils.AssertEqual(t, StatusForbidden, err.Code) + utils.AssertEqual(t, "permission denied", err.Message) } // go test -run Test_Test_Timeout