github.com/KiraCore/sekai@v0.3.43/x/gov/keeper/proposal_duration_test.go (about)

     1  package keeper_test
     2  
     3  import (
     4  	"testing"
     5  
     6  	simapp "github.com/KiraCore/sekai/app"
     7  	kiratypes "github.com/KiraCore/sekai/types"
     8  	tmproto "github.com/cometbft/cometbft/proto/tendermint/types"
     9  	"github.com/stretchr/testify/require"
    10  )
    11  
    12  func TestProposalDurationSetGet(t *testing.T) {
    13  	app := simapp.Setup(false)
    14  	ctx := app.NewContext(false, tmproto.Header{})
    15  
    16  	// get not specifically define type
    17  	duration := app.CustomGovKeeper.GetProposalDuration(ctx, kiratypes.ProposalTypeSetProposalDurations)
    18  	require.Equal(t, duration, uint64(0))
    19  
    20  	// try to set correct value
    21  	err := app.CustomGovKeeper.SetProposalDuration(ctx, kiratypes.ProposalTypeSetProposalDurations, 2400)
    22  	require.NoError(t, err)
    23  
    24  	duration = app.CustomGovKeeper.GetProposalDuration(ctx, kiratypes.ProposalTypeSetProposalDurations)
    25  	require.Equal(t, duration, uint64(2400))
    26  
    27  	// try setting again with lower than minimum value
    28  	err = app.CustomGovKeeper.SetProposalDuration(ctx, kiratypes.ProposalTypeSetProposalDurations, 1)
    29  	require.Error(t, err)
    30  
    31  	duration = app.CustomGovKeeper.GetProposalDuration(ctx, kiratypes.ProposalTypeSetProposalDurations)
    32  	require.Equal(t, duration, uint64(2400))
    33  
    34  	// check get all functionality
    35  	allDurations := app.CustomGovKeeper.GetAllProposalDurations(ctx)
    36  	require.Equal(t, len(allDurations), 1)
    37  }