responsable-errors/new_test.go

72 lines
1.7 KiB
Go
Raw Permalink Normal View History

2024-01-17 15:52:08 -06:00
package errors
import (
"net/http"
"testing"
"github.com/stretchr/testify/suite"
)
func TestNew(t *testing.T) {
suite.Run(t, new(NewTestSuite))
}
type NewTestSuite struct {
suite.Suite
}
func (s *NewTestSuite) TestNotFound() {
msg := "I can't see you"
var err ResponsableError = NewNotFound(msg)
2024-02-07 08:57:14 -06:00
s.Assert().Error(err)
s.Assert().Equal(http.StatusNotFound, err.Status())
s.Assert().Equal(msg, err.Msg())
2024-01-17 15:52:08 -06:00
s.Assert().Equal(msg, err.Error())
}
2024-02-07 08:57:14 -06:00
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())
}
2024-01-17 15:52:08 -06:00
func (s *NewTestSuite) TestNotFoundDefaultMsg() {
msg := "Not Found"
var err ResponsableError = NewNotFound("")
2024-02-07 08:57:14 -06:00
s.Assert().Error(err)
s.Assert().Equal(msg, err.Msg())
2024-01-17 15:52:08 -06:00
s.Assert().Equal(msg, err.Error())
}
func (s *NewTestSuite) TestBadRequest() {
msg := "I can't see you"
var err ResponsableError = NewBadRequest(msg)
2024-02-07 08:57:14 -06:00
s.Assert().Error(err)
s.Assert().Equal(http.StatusBadRequest, err.Status())
s.Assert().Equal(msg, err.Msg())
2024-01-17 15:52:08 -06:00
s.Assert().Equal(msg, err.Error())
}
func (s *NewTestSuite) TestBadRequestDefaultMsg() {
msg := "Bad Request"
var err ResponsableError = NewBadRequest("")
2024-02-07 08:57:14 -06:00
s.Assert().Error(err)
s.Assert().Equal(msg, err.Msg())
2024-01-17 15:52:08 -06:00
s.Assert().Equal(msg, err.Error())
}
func (s *NewTestSuite) TestInternal() {
var err ResponsableError = NewInternalError("%d > %d", 42, 13)
2024-02-07 08:57:14 -06:00
s.Assert().Error(err)
2024-01-17 15:52:08 -06:00
s.Assert().Equal("42 > 13", err.Error())
s.Assert().Equal("Unknown Error", err.Msg())
2024-01-17 15:52:08 -06:00
}