Skip to content

Commit 68f4a75

Browse files
authored
fix(rollapp): make genesis info nullable (#1263)
1 parent 61d5018 commit 68f4a75

20 files changed

+223
-139
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
@@ -136,7 +136,7 @@ func (s *utilSuite) createRollapp(transfersEnabled bool, channelID *string) {
136136
Telegram: "https://t.me/rolly",
137137
X: "https://x.dymension.xyz",
138138
},
139-
rollapptypes.GenesisInfo{
139+
&rollapptypes.GenesisInfo{
140140
GenesisChecksum: "somechecksum",
141141
Bech32Prefix: "eth",
142142
NativeDenom: rollapptypes.DenomMetadata{

proto/dymensionxyz/dymension/rollapp/tx.proto

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

6666
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
@@ -214,7 +214,7 @@ func (suite *KeeperTestSuite) CreateDefaultRollapp(addr sdk.AccAddress) string {
214214
InitialSequencer: addr.String(),
215215
Alias: strings.ToLower(tmrand.Str(7)),
216216
VmType: rollapptypes.Rollapp_EVM,
217-
GenesisInfo: rollapptypes.GenesisInfo{
217+
GenesisInfo: &rollapptypes.GenesisInfo{
218218
Bech32Prefix: strings.ToLower(tmrand.Str(3)),
219219
GenesisChecksum: "checksum",
220220
NativeDenom: rollapptypes.DenomMetadata{

x/rollapp/client/cli/tx_create_rollapp.go

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -69,43 +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 != "" {
9595
if err = utils.ParseJsonFromFile(nativeDenomFlag, &genesisInfo.NativeDenom); err != nil {
96-
return types.GenesisInfo{}, err
96+
return nil, err
9797
}
9898
}
9999

100100
initialSupplyFlag, err := cmd.Flags().GetString(FlagInitialSupply)
101101
if err != nil {
102-
return types.GenesisInfo{}, err
102+
return nil, err
103103
}
104104

105105
if initialSupplyFlag != "" {
106106
genesisInfo.InitialSupply, ok = sdk.NewIntFromString(initialSupplyFlag)
107107
if !ok {
108-
return types.GenesisInfo{}, fmt.Errorf("invalid initial supply: %s", initialSupplyFlag)
108+
return nil, fmt.Errorf("invalid initial supply: %s", initialSupplyFlag)
109109
}
110110
}
111111

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
rollappExpect.GenesisState.TransfersEnabled = true
357357

@@ -385,7 +385,7 @@ var mockRollappMetadata = types.RollappMetadata{
385385
X: "https://x.dymension.xyz",
386386
}
387387

388-
var mockGenesisInfo = types.GenesisInfo{
388+
var mockGenesisInfo = &types.GenesisInfo{
389389
Bech32Prefix: "rol",
390390
GenesisChecksum: "checksum",
391391
NativeDenom: types.DenomMetadata{

0 commit comments

Comments
 (0)