✨ 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...)
|
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".
|
// Represents a 500 error. For this error, the user error is preset to "Unknown Error".
|
||||||
func NewInternalError(format string, parts ...any) SettableError {
|
func NewInternalError(format string, parts ...any) SettableError {
|
||||||
status := http.StatusInternalServerError
|
status := http.StatusInternalServerError
|
||||||
|
|
|
||||||
24
new_test.go
24
new_test.go
|
|
@ -18,16 +18,30 @@ type NewTestSuite struct {
|
||||||
func (s *NewTestSuite) TestNotFound() {
|
func (s *NewTestSuite) TestNotFound() {
|
||||||
msg := "I can't see you"
|
msg := "I can't see you"
|
||||||
var err ResponsableError = NewNotFound(msg)
|
var err ResponsableError = NewNotFound(msg)
|
||||||
s.Assert().NotNil(err)
|
s.Assert().Error(err)
|
||||||
s.Assert().Equal(http.StatusNotFound, err.Status())
|
s.Assert().Equal(http.StatusNotFound, err.Status())
|
||||||
s.Assert().Equal(msg, err.Msg())
|
s.Assert().Equal(msg, err.Msg())
|
||||||
s.Assert().Equal(msg, err.Error())
|
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() {
|
func (s *NewTestSuite) TestNotFoundDefaultMsg() {
|
||||||
msg := "Not Found"
|
msg := "Not Found"
|
||||||
var err ResponsableError = NewNotFound("")
|
var err ResponsableError = NewNotFound("")
|
||||||
s.Assert().NotNil(err)
|
s.Assert().Error(err)
|
||||||
s.Assert().Equal(msg, err.Msg())
|
s.Assert().Equal(msg, err.Msg())
|
||||||
s.Assert().Equal(msg, err.Error())
|
s.Assert().Equal(msg, err.Error())
|
||||||
}
|
}
|
||||||
|
|
@ -35,7 +49,7 @@ func (s *NewTestSuite) TestNotFoundDefaultMsg() {
|
||||||
func (s *NewTestSuite) TestBadRequest() {
|
func (s *NewTestSuite) TestBadRequest() {
|
||||||
msg := "I can't see you"
|
msg := "I can't see you"
|
||||||
var err ResponsableError = NewBadRequest(msg)
|
var err ResponsableError = NewBadRequest(msg)
|
||||||
s.Assert().NotNil(err)
|
s.Assert().Error(err)
|
||||||
s.Assert().Equal(http.StatusBadRequest, err.Status())
|
s.Assert().Equal(http.StatusBadRequest, err.Status())
|
||||||
s.Assert().Equal(msg, err.Msg())
|
s.Assert().Equal(msg, err.Msg())
|
||||||
s.Assert().Equal(msg, err.Error())
|
s.Assert().Equal(msg, err.Error())
|
||||||
|
|
@ -44,14 +58,14 @@ func (s *NewTestSuite) TestBadRequest() {
|
||||||
func (s *NewTestSuite) TestBadRequestDefaultMsg() {
|
func (s *NewTestSuite) TestBadRequestDefaultMsg() {
|
||||||
msg := "Bad Request"
|
msg := "Bad Request"
|
||||||
var err ResponsableError = NewBadRequest("")
|
var err ResponsableError = NewBadRequest("")
|
||||||
s.Assert().NotNil(err)
|
s.Assert().Error(err)
|
||||||
s.Assert().Equal(msg, err.Msg())
|
s.Assert().Equal(msg, err.Msg())
|
||||||
s.Assert().Equal(msg, err.Error())
|
s.Assert().Equal(msg, err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *NewTestSuite) TestInternal() {
|
func (s *NewTestSuite) TestInternal() {
|
||||||
var err ResponsableError = NewInternalError("%d > %d", 42, 13)
|
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("42 > 13", err.Error())
|
||||||
s.Assert().Equal("Unknown Error", err.Msg())
|
s.Assert().Equal("Unknown Error", err.Msg())
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue