Skip to content

Commit af493a9

Browse files
committed
update unit tests for observer migration script to improve coverage
1 parent 589bbbb commit af493a9

File tree

3 files changed

+79
-10
lines changed

3 files changed

+79
-10
lines changed

pkg/rpc/clients_test.go

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -453,6 +453,36 @@ func TestZetacore_GetNodeInfo(t *testing.T) {
453453
require.Equal(t, expectedOutput, *resp)
454454
}
455455

456+
func TestZetacore_GetSyncing(t *testing.T) {
457+
ctx := context.Background()
458+
459+
t.Run("node is syncing", func(t *testing.T) {
460+
expectedOutput := cmtservice.GetSyncingResponse{Syncing: true}
461+
input := cmtservice.GetSyncingRequest{}
462+
method := "/cosmos.base.tendermint.v1beta1.Service/GetSyncing"
463+
setupMockServer(t, cmtservice.RegisterServiceServer, method, input, expectedOutput)
464+
465+
client := setupZetacoreClients(t)
466+
467+
resp, err := client.GetSyncing(ctx)
468+
require.NoError(t, err)
469+
require.True(t, resp)
470+
})
471+
472+
t.Run("node is not syncing", func(t *testing.T) {
473+
expectedOutput := cmtservice.GetSyncingResponse{Syncing: false}
474+
input := cmtservice.GetSyncingRequest{}
475+
method := "/cosmos.base.tendermint.v1beta1.Service/GetSyncing"
476+
setupMockServer(t, cmtservice.RegisterServiceServer, method, input, expectedOutput)
477+
478+
client := setupZetacoreClients(t)
479+
480+
resp, err := client.GetSyncing(ctx)
481+
require.NoError(t, err)
482+
require.False(t, resp)
483+
})
484+
}
485+
456486
func TestZetacore_GetBaseGasPrice(t *testing.T) {
457487
ctx := context.Background()
458488

x/observer/migrations/v12/migrate.go

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,7 @@ func MigrateStore(ctx sdk.Context, observerKeeper observerKeeper) error {
2525
return err
2626
}
2727

28-
if err := UpdateCrosschainFlags(ctx, observerKeeper); err != nil {
29-
return err
30-
}
28+
UpdateCrosschainFlags(ctx, observerKeeper)
3129

3230
return nil
3331
}
@@ -60,16 +58,14 @@ func UpdateChainParams(ctx sdk.Context, observerKeeper observerKeeper) error {
6058
}
6159

6260
// UpdateCrosschainFlags disables V2 ZETA flows in the crosschain flags.
63-
func UpdateCrosschainFlags(ctx sdk.Context, observerKeeper observerKeeper) error {
61+
func UpdateCrosschainFlags(ctx sdk.Context, observerKeeper observerKeeper) {
6462
flags, found := observerKeeper.GetCrosschainFlags(ctx)
6563
if !found {
6664
flags = *types.DefaultCrosschainFlags()
6765
}
6866

6967
flags.IsV2ZetaEnabled = false
7068
observerKeeper.SetCrosschainFlags(ctx, flags)
71-
72-
return nil
7369
}
7470

7571
// GetGasPriceMultiplierForChain returns the gas price multiplier for the given chain

x/observer/migrations/v12/migrate_test.go

Lines changed: 47 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,51 @@ func TestMigrateStore(t *testing.T) {
5050
require.True(t, flags.IsInboundEnabled)
5151
require.True(t, flags.IsOutboundEnabled)
5252
})
53+
54+
t.Run("returns error when chain params not found", func(t *testing.T) {
55+
// ARRANGE
56+
k, ctx, _, _ := keepertest.ObserverKeeper(t)
57+
58+
// don't set any chain params
59+
60+
// ACT
61+
err := v12.MigrateStore(ctx, *k)
62+
63+
// ASSERT
64+
require.ErrorIs(t, err, types.ErrChainParamsNotFound)
65+
})
66+
67+
t.Run("returns error when chain not found in chain params", func(t *testing.T) {
68+
// ARRANGE
69+
k, ctx, _, _ := keepertest.ObserverKeeper(t)
70+
71+
// set chain params with invalid chain ID
72+
testChainParams := getTestChainParams()
73+
testChainParams.ChainParams[0].ChainId = 999999999
74+
k.SetChainParamsList(ctx, testChainParams)
75+
76+
// ACT
77+
err := v12.MigrateStore(ctx, *k)
78+
79+
// ASSERT
80+
require.ErrorIs(t, err, types.ErrSupportedChains)
81+
})
82+
83+
t.Run("returns error when chain params validation fails", func(t *testing.T) {
84+
// ARRANGE
85+
k, ctx, _, _ := keepertest.ObserverKeeper(t)
86+
87+
// set chain params with invalid values that will fail validation
88+
testChainParams := getTestChainParams()
89+
testChainParams.ChainParams[0].InboundTicker = 0
90+
k.SetChainParamsList(ctx, testChainParams)
91+
92+
// ACT
93+
err := v12.MigrateStore(ctx, *k)
94+
95+
// ASSERT
96+
require.ErrorIs(t, err, types.ErrInvalidChainParams)
97+
})
5398
}
5499

55100
func TestUpdateChainParams(t *testing.T) {
@@ -146,10 +191,9 @@ func TestUpdateCrosschainFlags(t *testing.T) {
146191
})
147192

148193
// ACT
149-
err := v12.UpdateCrosschainFlags(ctx, *k)
194+
v12.UpdateCrosschainFlags(ctx, *k)
150195

151196
// ASSERT
152-
require.NoError(t, err)
153197
flags, found := k.GetCrosschainFlags(ctx)
154198
require.True(t, found)
155199
require.False(t, flags.IsV2ZetaEnabled)
@@ -167,10 +211,9 @@ func TestUpdateCrosschainFlags(t *testing.T) {
167211
require.False(t, found)
168212

169213
// ACT
170-
err := v12.UpdateCrosschainFlags(ctx, *k)
214+
v12.UpdateCrosschainFlags(ctx, *k)
171215

172216
// ASSERT
173-
require.NoError(t, err)
174217
flags, found := k.GetCrosschainFlags(ctx)
175218
require.True(t, found)
176219
require.False(t, flags.IsV2ZetaEnabled)

0 commit comments

Comments
 (0)