From 1491de4522cba07d267f909bc97c991fa3bca2ea Mon Sep 17 00:00:00 2001 From: Ethan Buchman Date: Sun, 18 Mar 2018 02:03:25 +0100 Subject: [PATCH] types/errors_test.go --- types/errors_test.go | 53 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 types/errors_test.go diff --git a/types/errors_test.go b/types/errors_test.go new file mode 100644 index 000000000..7ca78e726 --- /dev/null +++ b/types/errors_test.go @@ -0,0 +1,53 @@ +package types + +import ( + "strings" + "testing" + + "github.com/stretchr/testify/assert" +) + +var codeTypes = []CodeType{ + CodeInternal, + CodeTxParse, + CodeInvalidSequence, + CodeUnauthorized, + CodeInsufficientFunds, + CodeUnknownRequest, + CodeUnrecognizedAddress, + CodeInvalidPubKey, + CodeGenesisParse, +} + +type errFn func(msg string) Error + +var errFns = []errFn{ + ErrInternal, + ErrTxParse, + ErrInvalidSequence, + ErrUnauthorized, + ErrInsufficientFunds, + ErrUnknownRequest, + ErrUnrecognizedAddress, + ErrInvalidPubKey, + ErrGenesisParse, +} + +func TestCodeType(t *testing.T) { + assert.True(t, CodeOK.IsOK()) + + for _, c := range codeTypes { + assert.False(t, c.IsOK()) + msg := CodeToDefaultMsg(c) + assert.False(t, strings.HasPrefix(msg, "Unknown code")) + } +} + +func TestErrFn(t *testing.T) { + for i, errFn := range errFns { + err := errFn("") + codeType := codeTypes[i] + assert.Equal(t, err.ABCICode(), codeType) + assert.Equal(t, err.Result().Code, codeType) + } +}