✨ Add 401 and 403 default errors
This commit is contained in:
parent
bf9a0a1bfd
commit
0e12c479be
2 changed files with 29 additions and 5 deletions
10
new.go
10
new.go
|
|
@ -20,6 +20,16 @@ func NewBadRequest(format string, parts ...any) SettableError {
|
|||
return Errorf(http.StatusBadRequest, format, parts...)
|
||||
}
|
||||
|
||||
// A 401 error with the error message "Unauthorized"
|
||||
func NewUnauthorized() SettableError {
|
||||
return Errorf(http.StatusUnauthorized, "Unauthorized")
|
||||
}
|
||||
|
||||
// A 403 error with the error message "Forbidden"
|
||||
func NewForbidden() SettableError {
|
||||
return Errorf(http.StatusForbidden, "Forbidden")
|
||||
}
|
||||
|
||||
// Represents a 500 error. For this error, the user error is preset to "Unknown Error".
|
||||
func NewInternalError(format string, parts ...any) SettableError {
|
||||
status := http.StatusInternalServerError
|
||||
|
|
|
|||
24
new_test.go
24
new_test.go
|
|
@ -18,16 +18,30 @@ type NewTestSuite struct {
|
|||
func (s *NewTestSuite) TestNotFound() {
|
||||
msg := "I can't see you"
|
||||
var err ResponsableError = NewNotFound(msg)
|
||||
s.Assert().NotNil(err)
|
||||
s.Assert().Error(err)
|
||||
s.Assert().Equal(http.StatusNotFound, err.Status())
|
||||
s.Assert().Equal(msg, err.Msg())
|
||||
s.Assert().Equal(msg, err.Error())
|
||||
}
|
||||
|
||||
func (s *NewTestSuite) TestUnauthorized() {
|
||||
var err ResponsableError = NewUnauthorized()
|
||||
s.Assert().Error(err)
|
||||
s.Assert().Equal(http.StatusUnauthorized, err.Status())
|
||||
s.Assert().Equal("Unauthorized", err.Msg())
|
||||
}
|
||||
|
||||
func (s *NewTestSuite) TestForbidden() {
|
||||
var err ResponsableError = NewForbidden()
|
||||
s.Assert().Error(err)
|
||||
s.Assert().Equal(http.StatusForbidden, err.Status())
|
||||
s.Assert().Equal("Forbidden", err.Msg())
|
||||
}
|
||||
|
||||
func (s *NewTestSuite) TestNotFoundDefaultMsg() {
|
||||
msg := "Not Found"
|
||||
var err ResponsableError = NewNotFound("")
|
||||
s.Assert().NotNil(err)
|
||||
s.Assert().Error(err)
|
||||
s.Assert().Equal(msg, err.Msg())
|
||||
s.Assert().Equal(msg, err.Error())
|
||||
}
|
||||
|
|
@ -35,7 +49,7 @@ func (s *NewTestSuite) TestNotFoundDefaultMsg() {
|
|||
func (s *NewTestSuite) TestBadRequest() {
|
||||
msg := "I can't see you"
|
||||
var err ResponsableError = NewBadRequest(msg)
|
||||
s.Assert().NotNil(err)
|
||||
s.Assert().Error(err)
|
||||
s.Assert().Equal(http.StatusBadRequest, err.Status())
|
||||
s.Assert().Equal(msg, err.Msg())
|
||||
s.Assert().Equal(msg, err.Error())
|
||||
|
|
@ -44,14 +58,14 @@ func (s *NewTestSuite) TestBadRequest() {
|
|||
func (s *NewTestSuite) TestBadRequestDefaultMsg() {
|
||||
msg := "Bad Request"
|
||||
var err ResponsableError = NewBadRequest("")
|
||||
s.Assert().NotNil(err)
|
||||
s.Assert().Error(err)
|
||||
s.Assert().Equal(msg, err.Msg())
|
||||
s.Assert().Equal(msg, err.Error())
|
||||
}
|
||||
|
||||
func (s *NewTestSuite) TestInternal() {
|
||||
var err ResponsableError = NewInternalError("%d > %d", 42, 13)
|
||||
s.Assert().NotNil(err)
|
||||
s.Assert().Error(err)
|
||||
s.Assert().Equal("42 > 13", err.Error())
|
||||
s.Assert().Equal("Unknown Error", err.Msg())
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue