github.com/Finschia/finschia-sdk@v0.48.1/x/capability/simulation/genesis.go (about)

     1  package simulation
     2  
     3  // DONTCOVER
     4  
     5  import (
     6  	"encoding/json"
     7  	"fmt"
     8  	"math/rand"
     9  
    10  	"github.com/Finschia/finschia-sdk/types/module"
    11  	"github.com/Finschia/finschia-sdk/x/capability/types"
    12  )
    13  
    14  // Simulation parameter constants
    15  const index = "index"
    16  
    17  // GenIndex returns a random global index between 1-1000
    18  func GenIndex(r *rand.Rand) uint64 {
    19  	return uint64(r.Int63n(1000)) + 1
    20  }
    21  
    22  // RandomizedGenState generates a random GenesisState for capability
    23  func RandomizedGenState(simState *module.SimulationState) {
    24  	var idx uint64
    25  
    26  	simState.AppParams.GetOrGenerate(
    27  		simState.Cdc, index, &idx, simState.Rand,
    28  		func(r *rand.Rand) { idx = GenIndex(r) },
    29  	)
    30  
    31  	capabilityGenesis := types.GenesisState{Index: idx}
    32  
    33  	bz, err := json.MarshalIndent(&capabilityGenesis, "", " ")
    34  	if err != nil {
    35  		panic(err)
    36  	}
    37  	fmt.Printf("Selected randomly generated %s parameters:\n%s\n", types.ModuleName, bz)
    38  	simState.GenState[types.ModuleName] = simState.Cdc.MustMarshalJSON(&capabilityGenesis)
    39  }