cosmos-sdk/types/errors_test.go

51 lines
912 B
Go
Raw Normal View History

2018-03-17 18:03:25 -07:00
package types
import (
"strings"
"testing"
"github.com/stretchr/testify/require"
2018-03-17 18:03:25 -07:00
)
var codeTypes = []CodeType{
CodeInternal,
CodeTxDecode,
2018-03-17 18:03:25 -07:00
CodeInvalidSequence,
CodeUnauthorized,
CodeInsufficientFunds,
CodeUnknownRequest,
2018-03-19 15:31:23 -07:00
CodeUnknownAddress,
2018-03-17 18:03:25 -07:00
CodeInvalidPubKey,
}
type errFn func(msg string) Error
var errFns = []errFn{
ErrInternal,
ErrTxDecode,
2018-03-17 18:03:25 -07:00
ErrInvalidSequence,
ErrUnauthorized,
ErrInsufficientFunds,
ErrUnknownRequest,
2018-03-19 15:31:23 -07:00
ErrUnknownAddress,
2018-03-17 18:03:25 -07:00
ErrInvalidPubKey,
}
func TestCodeType(t *testing.T) {
require.True(t, ABCICodeOK.IsOK())
2018-03-17 18:03:25 -07:00
for _, c := range codeTypes {
msg := CodeToDefaultMsg(c)
require.False(t, strings.HasPrefix(msg, "Unknown code"))
2018-03-17 18:03:25 -07:00
}
}
func TestErrFn(t *testing.T) {
for i, errFn := range errFns {
err := errFn("")
codeType := codeTypes[i]
require.Equal(t, err.Code(), codeType)
require.Equal(t, err.Result().Code, ToABCICode(CodespaceRoot, codeType))
2018-03-17 18:03:25 -07:00
}
}