milvus/internal/util/errutil/errors_test.go
congqixia 51cb8590a1
Use errors.Wrap and Combine so retry error could check errors.Is (#22520)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2023-03-02 17:25:48 +08:00

44 lines
745 B
Go

package errutil
import (
"testing"
"github.com/cockroachdb/errors"
"github.com/stretchr/testify/suite"
)
type ErrSuite struct {
suite.Suite
}
func (s *ErrSuite) TestCombine() {
var (
errFirst = errors.New("first")
errSecond = errors.New("second")
errThird = errors.New("third")
)
err := Combine(errFirst, errSecond)
s.True(errors.Is(err, errFirst))
s.True(errors.Is(err, errSecond))
s.False(errors.Is(err, errThird))
s.Equal("first: second", err.Error())
}
func (s *ErrSuite) TestCombineWithNil() {
err := errors.New("non-nil")
err = Combine(nil, err)
s.NotNil(err)
}
func (s *ErrSuite) TestCombineOnlyNil() {
err := Combine(nil, nil)
s.Nil(err)
}
func TestErrors(t *testing.T) {
suite.Run(t, new(ErrSuite))
}