x/auth: use validateMaxMemoCharacters() for memo fields (#5898)
Add test cases.
This commit is contained in:
parent
b239cc8bb4
commit
35e15521dc
|
@ -156,7 +156,7 @@ func (p Params) Validate() error {
|
|||
if err := validateSigVerifyCostSecp256k1(p.SigVerifyCostSecp256k1); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := validateSigVerifyCostSecp256k1(p.MaxMemoCharacters); err != nil {
|
||||
if err := validateMaxMemoCharacters(p.MaxMemoCharacters); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := validateTxSizeCostPerByte(p.TxSizeCostPerByte); err != nil {
|
||||
|
|
|
@ -1,16 +1,49 @@
|
|||
package types
|
||||
package types_test
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
|
||||
"github.com/cosmos/cosmos-sdk/x/auth/types"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestParamsEqual(t *testing.T) {
|
||||
p1 := DefaultParams()
|
||||
p2 := DefaultParams()
|
||||
p1 := types.DefaultParams()
|
||||
p2 := types.DefaultParams()
|
||||
require.Equal(t, p1, p2)
|
||||
|
||||
p1.TxSigLimit += 10
|
||||
require.NotEqual(t, p1, p2)
|
||||
}
|
||||
|
||||
func TestParams_Validate(t *testing.T) {
|
||||
tests := []struct {
|
||||
name string
|
||||
params types.Params
|
||||
wantErr error
|
||||
}{
|
||||
{"default params", types.DefaultParams(), nil},
|
||||
{"invalid tx signature limit", types.NewParams(types.DefaultMaxMemoCharacters, 0, types.DefaultTxSizeCostPerByte,
|
||||
types.DefaultSigVerifyCostED25519, types.DefaultSigVerifyCostSecp256k1), fmt.Errorf("invalid tx signature limit: 0")},
|
||||
{"invalid ED25519 signature verification cost", types.NewParams(types.DefaultMaxMemoCharacters, types.DefaultTxSigLimit, types.DefaultTxSizeCostPerByte,
|
||||
0, types.DefaultSigVerifyCostSecp256k1), fmt.Errorf("invalid ED25519 signature verification cost: 0")},
|
||||
{"invalid SECK256k1 signature verification cost", types.NewParams(types.DefaultMaxMemoCharacters, types.DefaultTxSigLimit, types.DefaultTxSizeCostPerByte,
|
||||
types.DefaultSigVerifyCostED25519, 0), fmt.Errorf("invalid SECK256k1 signature verification cost: 0")},
|
||||
{"invalid max memo characters", types.NewParams(0, types.DefaultTxSigLimit, types.DefaultTxSizeCostPerByte,
|
||||
types.DefaultSigVerifyCostED25519, types.DefaultSigVerifyCostSecp256k1), fmt.Errorf("invalid max memo characters: 0")},
|
||||
{"invalid tx size cost per byte", types.NewParams(types.DefaultMaxMemoCharacters, types.DefaultTxSigLimit, 0,
|
||||
types.DefaultSigVerifyCostED25519, types.DefaultSigVerifyCostSecp256k1), fmt.Errorf("invalid tx size cost per byte: 0")},
|
||||
}
|
||||
for _, tt := range tests {
|
||||
tt := tt
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
got := tt.params.Validate()
|
||||
if tt.wantErr == nil {
|
||||
require.NoError(t, got)
|
||||
return
|
||||
}
|
||||
require.Equal(t, tt.wantErr, got)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue