diff --git a/protocol/x/perpetuals/keeper/perpetual_test.go b/protocol/x/perpetuals/keeper/perpetual_test.go index 0f9e7f6968..b6ee37171a 100644 --- a/protocol/x/perpetuals/keeper/perpetual_test.go +++ b/protocol/x/perpetuals/keeper/perpetual_test.go @@ -3542,3 +3542,35 @@ func TestModifyOpenInterest_store(t *testing.T) { require.Equal(t, perpetualObject.OpenInterest, serializedOpenInterest) } } + +func TestIsIsolatedPerpetual(t *testing.T) { + testCases := map[string]struct { + perp types.Perpetual + expected bool + }{ + "Isolated Perpetual": { + perp: *perptest.GeneratePerpetual( + perptest.WithMarketType(types.PerpetualMarketType_PERPETUAL_MARKET_TYPE_ISOLATED), + ), + expected: true, + }, + "Cross Perpetual": { + perp: *perptest.GeneratePerpetual( + perptest.WithMarketType(types.PerpetualMarketType_PERPETUAL_MARKET_TYPE_CROSS), + ), + expected: false, + }, + } + + for name, tc := range testCases { + t.Run( + name, func(t *testing.T) { + pc := keepertest.PerpetualsKeepers(t) + pc.PerpetualsKeeper.SetPerpetual(pc.Ctx, tc.perp) + isIsolated, err := pc.PerpetualsKeeper.IsIsolatedPerpetual(pc.Ctx, tc.perp.Params.Id) + require.NoError(t, err) + require.Equal(t, tc.expected, isIsolated) + }, + ) + } +}