Skip to content

Commit dd9cddf

Browse files
committed
fix(rollapp): make genesis info nullable (#1263)
(cherry picked from commit 68f4a75)
1 parent 678e567 commit dd9cddf

20 files changed

+211
-135
lines changed

app/apptesting/test_suite.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ func (s *KeeperTestHelper) CreateRollappByName(name string) {
5656
InitialSequencer: "*",
5757
Alias: strings.ToLower(rand.Str(7)),
5858
VmType: rollapptypes.Rollapp_EVM,
59-
GenesisInfo: rollapptypes.GenesisInfo{
59+
GenesisInfo: &rollapptypes.GenesisInfo{
6060
Bech32Prefix: strings.ToLower(rand.Str(3)),
6161
GenesisChecksum: "1234567890abcdefg",
6262
InitialSupply: sdk.NewInt(1000),

ibctesting/utils_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ func (s *utilSuite) createRollapp(transfersEnabled bool, channelID *string) {
135135
Telegram: "https://t.me/rolly",
136136
X: "https://x.dymension.xyz",
137137
},
138-
rollapptypes.GenesisInfo{
138+
&rollapptypes.GenesisInfo{
139139
GenesisChecksum: "somechecksum",
140140
Bech32Prefix: "eth",
141141
NativeDenom: &rollapptypes.DenomMetadata{

proto/dymensionxyz/dymension/rollapp/tx.proto

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ message MsgCreateRollapp {
3737
// metadata is the rollapp metadata
3838
RollappMetadata metadata = 13;
3939
// genesis_info is the genesis information
40-
GenesisInfo genesis_info = 14 [(gogoproto.nullable) = false ];
40+
GenesisInfo genesis_info = 14 [(gogoproto.nullable) = true ];
4141
// vm_type is the type of rollapp machine: EVM or WASM
4242
Rollapp.VMType vm_type = 15;
4343
}
@@ -59,7 +59,7 @@ message MsgUpdateRollappInformation {
5959
// metadata is the rollapp metadata
6060
RollappMetadata metadata = 5 [(gogoproto.nullable) = true ];
6161
// genesis_info is the genesis information
62-
GenesisInfo genesis_info = 6 [(gogoproto.nullable) = false ];
62+
GenesisInfo genesis_info = 6 [(gogoproto.nullable) = true ];
6363
}
6464

6565
message MsgUpdateRollappInformationResponse {

x/denommetadata/ibc_middleware.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,10 @@ func (im IBCModule) OnRecvPacket(
9090
return uevent.NewErrorAcknowledgement(ctx, gerrc.ErrNotFound)
9191
}
9292

93+
if im.keeper.HasDenomMetadata(ctx, ibcDenom) {
94+
return im.IBCModule.OnRecvPacket(ctx, packet, relayer)
95+
}
96+
9397
dm.Base = ibcDenom
9498
dm.DenomUnits[0].Denom = dm.Base
9599

x/denommetadata/ibc_middleware_test.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -596,15 +596,19 @@ func (m *mockIBCModule) OnRecvPacket(_ sdk.Context, p channeltypes.Packet, _ sdk
596596
return emptyResult
597597
}
598598

599-
func (m *mockIBCModule) OnAcknowledgementPacket(_ sdk.Context, _ channeltypes.Packet, ack []byte, _ sdk.AccAddress) error {
599+
func (m *mockIBCModule) OnAcknowledgementPacket(sdk.Context, channeltypes.Packet, []byte, sdk.AccAddress) error {
600600
return nil
601601
}
602602

603603
type mockDenomMetadataKeeper struct {
604604
hasDenomMetaData, created bool
605605
}
606606

607-
func (m *mockDenomMetadataKeeper) CreateDenomMetadata(ctx sdk.Context, metadata banktypes.Metadata) error {
607+
func (m *mockDenomMetadataKeeper) HasDenomMetadata(sdk.Context, string) bool {
608+
return true
609+
}
610+
611+
func (m *mockDenomMetadataKeeper) CreateDenomMetadata(sdk.Context, banktypes.Metadata) error {
608612
m.created = true
609613
return nil
610614
}

x/denommetadata/types/expected_keepers.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package types
33
import (
44
sdk "github.com/cosmos/cosmos-sdk/types"
55
"github.com/cosmos/cosmos-sdk/x/bank/types"
6+
67
rollapptypes "github.com/dymensionxyz/dymension/v3/x/rollapp/types"
78
)
89

@@ -14,6 +15,7 @@ type BankKeeper interface {
1415

1516
type DenomMetadataKeeper interface {
1617
CreateDenomMetadata(ctx sdk.Context, metadata types.Metadata) error
18+
HasDenomMetadata(ctx sdk.Context, base string) bool
1719
}
1820

1921
type RollappKeeper interface {

x/incentives/client/cli/query_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ func (suite *QueryTestSuite) CreateDefaultRollapp() string {
3434
RollappId: urand.RollappID(),
3535
Alias: strings.ToLower(tmrand.Str(7)),
3636
VmType: rollapptypes.Rollapp_EVM,
37-
GenesisInfo: rollapptypes.GenesisInfo{
37+
GenesisInfo: &rollapptypes.GenesisInfo{
3838
Bech32Prefix: strings.ToLower(tmrand.Str(3)),
3939
},
4040
}

x/incentives/keeper/suite_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,7 @@ func (suite *KeeperTestSuite) CreateDefaultRollapp(addr sdk.AccAddress) string {
212212
InitialSequencer: addr.String(),
213213
Alias: strings.ToLower(tmrand.Str(7)),
214214
VmType: rollapptypes.Rollapp_EVM,
215-
GenesisInfo: rollapptypes.GenesisInfo{
215+
GenesisInfo: &rollapptypes.GenesisInfo{
216216
Bech32Prefix: strings.ToLower(tmrand.Str(3)),
217217
GenesisChecksum: "checksum",
218218
NativeDenom: &rollapptypes.DenomMetadata{

x/rollapp/client/cli/tx_create_rollapp.go

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -69,44 +69,43 @@ func CmdCreateRollapp() *cobra.Command {
6969
return cmd
7070
}
7171

72-
func parseGenesisInfo(cmd *cobra.Command) (types.GenesisInfo, error) {
72+
func parseGenesisInfo(cmd *cobra.Command) (*types.GenesisInfo, error) {
7373
var (
74-
genesisInfo types.GenesisInfo
74+
genesisInfo = &types.GenesisInfo{}
7575
err error
7676
ok bool
7777
)
7878

7979
genesisInfo.GenesisChecksum, err = cmd.Flags().GetString(FlagGenesisChecksum)
8080
if err != nil {
81-
return types.GenesisInfo{}, err
81+
return nil, err
8282
}
8383

8484
genesisInfo.Bech32Prefix, err = cmd.Flags().GetString(FlagBech32Prefix)
8585
if err != nil {
86-
return types.GenesisInfo{}, err
86+
return nil, err
8787
}
8888

8989
nativeDenomFlag, err := cmd.Flags().GetString(FlagNativeDenom)
9090
if err != nil {
91-
return types.GenesisInfo{}, err
91+
return nil, err
9292
}
9393

9494
if nativeDenomFlag != "" {
95-
genesisInfo.NativeDenom = new(types.DenomMetadata)
96-
if err = utils.ParseJsonFromFile(nativeDenomFlag, genesisInfo.NativeDenom); err != nil {
97-
return types.GenesisInfo{}, err
95+
if err = utils.ParseJsonFromFile(nativeDenomFlag, &genesisInfo.NativeDenom); err != nil {
96+
return nil, err
9897
}
9998
}
10099

101100
initialSupplyFlag, err := cmd.Flags().GetString(FlagInitialSupply)
102101
if err != nil {
103-
return types.GenesisInfo{}, err
102+
return nil, err
104103
}
105104

106105
if initialSupplyFlag != "" {
107106
genesisInfo.InitialSupply, ok = sdk.NewIntFromString(initialSupplyFlag)
108107
if !ok {
109-
return types.GenesisInfo{}, fmt.Errorf("invalid initial supply: %s", initialSupplyFlag)
108+
return nil, fmt.Errorf("invalid initial supply: %s", initialSupplyFlag)
110109
}
111110
}
112111

x/rollapp/keeper/msg_server_create_rollapp_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,7 @@ func (suite *RollappTestSuite) createRollappWithCreatorAndVerify(
351351
InitialSequencer: rollapp.GetInitialSequencer(),
352352
VmType: types.Rollapp_EVM,
353353
Metadata: rollapp.GetMetadata(),
354-
GenesisInfo: rollapp.GetGenesisInfo(),
354+
GenesisInfo: *rollapp.GetGenesisInfo(),
355355
}
356356
// create rollapp
357357
createResponse, err := suite.msgServer.CreateRollapp(goCtx, &rollapp)
@@ -383,7 +383,7 @@ var mockRollappMetadata = types.RollappMetadata{
383383
X: "https://x.dymension.xyz",
384384
}
385385

386-
var mockGenesisInfo = types.GenesisInfo{
386+
var mockGenesisInfo = &types.GenesisInfo{
387387
Bech32Prefix: "rol",
388388
GenesisChecksum: "checksum",
389389
NativeDenom: &types.DenomMetadata{

0 commit comments

Comments
 (0)