refactor!: rm GetSignBytes (#16062)

This commit is contained in:
Matt Kocubinski
2023-05-30 19:34:35 +00:00
committed by GitHub
parent d1a337eb78
commit 737dcfd1a2
95 changed files with 968 additions and 1827 deletions
+15 -5
View File
@@ -7,6 +7,8 @@ import (
"testing"
"time"
gov_v1_api "cosmossdk.io/api/cosmos/gov/v1"
msgv1 "cosmossdk.io/api/cosmos/msg/v1"
"github.com/stretchr/testify/require"
"google.golang.org/protobuf/proto"
"google.golang.org/protobuf/types/known/anypb"
@@ -36,6 +38,7 @@ import (
"cosmossdk.io/x/tx/signing/aminojson"
signing_testutil "cosmossdk.io/x/tx/signing/testutil"
"cosmossdk.io/x/upgrade"
codectypes "github.com/cosmos/cosmos-sdk/codec/types"
ed25519types "github.com/cosmos/cosmos-sdk/crypto/keys/ed25519"
"github.com/cosmos/cosmos-sdk/crypto/keys/multisig"
@@ -64,6 +67,7 @@ import (
"github.com/cosmos/cosmos-sdk/x/distribution"
disttypes "github.com/cosmos/cosmos-sdk/x/distribution/types"
"github.com/cosmos/cosmos-sdk/x/gov"
gov_v1_types "github.com/cosmos/cosmos-sdk/x/gov/types/v1"
gov_v1beta1_types "github.com/cosmos/cosmos-sdk/x/gov/types/v1beta1"
groupmodule "github.com/cosmos/cosmos-sdk/x/group/module"
"github.com/cosmos/cosmos-sdk/x/mint"
@@ -94,10 +98,12 @@ func TestAminoJSON_Equivalence(t *testing.T) {
distribution.AppModuleBasic{}, evidence.AppModuleBasic{}, feegrantmodule.AppModuleBasic{},
gov.AppModuleBasic{}, groupmodule.AppModuleBasic{}, mint.AppModuleBasic{}, params.AppModuleBasic{},
slashing.AppModuleBasic{}, staking.AppModuleBasic{}, upgrade.AppModuleBasic{}, vesting.AppModuleBasic{})
legacytx.RegressionTestingAminoCodec = encCfg.Amino
aj := aminojson.NewEncoder(aminojson.EncoderOptions{})
for _, tt := range rapidgen.DefaultGeneratedTypes {
name := string(tt.Pulsar.ProtoReflect().Descriptor().FullName())
desc := tt.Pulsar.ProtoReflect().Descriptor()
name := string(desc.FullName())
t.Run(name, func(t *testing.T) {
gen := rapidproto.MessageGenerator(tt.Pulsar, tt.Opts)
fmt.Printf("testing %s\n", tt.Pulsar.ProtoReflect().Descriptor().FullName())
@@ -132,8 +138,7 @@ func TestAminoJSON_Equivalence(t *testing.T) {
require.Equal(t, string(legacyAminoJSON), string(aminoJSON))
// test amino json signer handler equivalence
gogoMsg, ok := gogo.(legacytx.LegacyMsg)
if !ok {
if !proto.HasExtension(desc.Options(), msgv1.E_Signer) {
// not signable
return
}
@@ -163,7 +168,7 @@ func TestAminoJSON_Equivalence(t *testing.T) {
legacyHandler := tx.NewSignModeLegacyAminoJSONHandler()
txBuilder := encCfg.TxConfig.NewTxBuilder()
require.NoError(t, txBuilder.SetMsgs([]types.Msg{gogoMsg}...))
require.NoError(t, txBuilder.SetMsgs([]types.Msg{tt.Gogo}...))
txBuilder.SetMemo(handlerOptions.Memo)
txBuilder.SetFeeAmount(types.Coins{types.NewInt64Coin("uatom", 1000)})
txBuilder.SetTip(&txtypes.Tip{
@@ -201,7 +206,8 @@ func newAny(t *testing.T, msg proto.Message) *anypb.Any {
func TestAminoJSON_LegacyParity(t *testing.T) {
encCfg := testutil.MakeTestEncodingConfig(auth.AppModuleBasic{}, authzmodule.AppModuleBasic{},
bank.AppModuleBasic{}, distribution.AppModuleBasic{}, slashing.AppModuleBasic{}, staking.AppModuleBasic{},
vesting.AppModuleBasic{})
vesting.AppModuleBasic{}, gov.AppModuleBasic{})
legacytx.RegressionTestingAminoCodec = encCfg.Amino
aj := aminojson.NewEncoder(aminojson.EncoderOptions{})
addr1 := types.AccAddress("addr1")
@@ -332,6 +338,10 @@ func TestAminoJSON_LegacyParity(t *testing.T) {
gogo: &banktypes.MsgMultiSend{},
pulsar: &bankapi.MsgMultiSend{},
},
"gov/v1_msg_submit_proposal": {
gogo: &gov_v1_types.MsgSubmitProposal{},
pulsar: &gov_v1_api.MsgSubmitProposal{},
},
"slashing/params/empty_dec": {
gogo: &slashingtypes.Params{DowntimeJailDuration: 1e9 + 7},
pulsar: &slashingapi.Params{DowntimeJailDuration: &durationpb.Duration{Seconds: 1, Nanos: 7}},
+10 -5
View File
@@ -3,6 +3,7 @@ package tx
import (
"testing"
msgv1 "cosmossdk.io/api/cosmos/msg/v1"
"github.com/cosmos/cosmos-proto/rapidproto"
gogoproto "github.com/cosmos/gogoproto/proto"
"github.com/stretchr/testify/require"
@@ -14,6 +15,7 @@ import (
"cosmossdk.io/x/tx/decode"
txsigning "cosmossdk.io/x/tx/signing"
"cosmossdk.io/x/upgrade"
"github.com/cosmos/cosmos-sdk/codec/legacy"
codectypes "github.com/cosmos/cosmos-sdk/codec/types"
"github.com/cosmos/cosmos-sdk/tests/integration/rapidgen"
@@ -44,6 +46,7 @@ func TestDecode(t *testing.T) {
distribution.AppModuleBasic{}, evidence.AppModuleBasic{}, feegrantmodule.AppModuleBasic{},
gov.AppModuleBasic{}, groupmodule.AppModuleBasic{}, mint.AppModuleBasic{}, params.AppModuleBasic{},
slashing.AppModuleBasic{}, staking.AppModuleBasic{}, upgrade.AppModuleBasic{}, vesting.AppModuleBasic{})
legacytx.RegressionTestingAminoCodec = encCfg.Amino
fee := sdk.NewCoins(sdk.NewCoin("stake", sdk.NewInt(100)))
gas := uint64(200)
@@ -74,7 +77,8 @@ func TestDecode(t *testing.T) {
require.NoError(t, err)
for _, tt := range rapidgen.SignableTypes {
name := string(tt.Pulsar.ProtoReflect().Descriptor().FullName())
desc := tt.Pulsar.ProtoReflect().Descriptor()
name := string(desc.FullName())
t.Run(name, func(t *testing.T) {
gen := rapidproto.MessageGenerator(tt.Pulsar, tt.Opts)
rapid.Check(t, func(t *rapid.T) {
@@ -102,10 +106,9 @@ func TestDecode(t *testing.T) {
Sequence: accSeq,
}
gogoMsg, ok := gogo.(legacytx.LegacyMsg)
require.True(t, ok)
require.True(t, proto.HasExtension(desc.Options(), msgv1.E_Signer))
err = txBuilder.SetMsgs(gogoMsg)
err = txBuilder.SetMsgs(tt.Gogo)
require.NoError(t, err)
txBuilder.SetFeeAmount(fee)
txBuilder.SetGasLimit(gas)
@@ -129,7 +132,7 @@ func TestDecode(t *testing.T) {
require.Equal(t, authInfoBytes, decodedTx.TxRaw.AuthInfoBytes)
anyGogoMsg, err := codectypes.NewAnyWithValue(gogoMsg)
anyGogoMsg, err := codectypes.NewAnyWithValue(tt.Gogo)
require.NoError(t, err)
txBody := &txtypes.TxBody{
@@ -145,6 +148,8 @@ func TestDecode(t *testing.T) {
})
})
}
legacytx.RegressionTestingAminoCodec = nil
}
type dummyAddressCodec struct{}