/
genesis.go
91 lines (83 loc) · 2.35 KB
/
genesis.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
package simulation
import (
"encoding/json"
"fmt"
"time"
"github.com/cometbft/cometbft/crypto"
sdk "github.com/cosmos/cosmos-sdk/types"
"github.com/cosmos/cosmos-sdk/types/module"
"github.com/irisnet/irismod/modules/htlc/types"
)
var (
MinTimeLock = uint64(50)
MaxTimeLock = uint64(34560)
Deputy = sdk.AccAddress(crypto.AddressHash([]byte("Deputy")))
)
const (
BNB_DENOM = "htltbnb"
OTHER_DENOM = "htltinc"
)
func RandomizedGenState(simState *module.SimulationState) {
htlcGenesis := &types.GenesisState{
Params: types.Params{
AssetParams: []types.AssetParam{
{
Denom: BNB_DENOM,
SupplyLimit: types.SupplyLimit{
Limit: sdk.NewInt(350000000000000),
TimeLimited: false,
TimeBasedLimit: sdk.ZeroInt(),
TimePeriod: time.Hour,
},
Active: true,
DeputyAddress: Deputy.String(),
FixedFee: sdk.NewInt(1000),
MinSwapAmount: sdk.NewInt(2000),
MaxSwapAmount: sdk.NewInt(1000000000000),
MinBlockLock: MinTimeLock,
MaxBlockLock: MaxTimeLock,
},
{
Denom: OTHER_DENOM,
SupplyLimit: types.SupplyLimit{
Limit: sdk.NewInt(100000000000000),
TimeLimited: true,
TimeBasedLimit: sdk.NewInt(50000000000),
TimePeriod: time.Hour,
},
Active: false,
DeputyAddress: Deputy.String(),
FixedFee: sdk.NewInt(1000),
MinSwapAmount: sdk.NewInt(2000),
MaxSwapAmount: sdk.NewInt(100000000000),
MinBlockLock: MinTimeLock,
MaxBlockLock: MaxTimeLock,
},
},
},
Htlcs: []types.HTLC{},
Supplies: []types.AssetSupply{
types.NewAssetSupply(
sdk.NewCoin("htltbnb", sdk.ZeroInt()),
sdk.NewCoin("htltbnb", sdk.ZeroInt()),
sdk.NewCoin("htltbnb", sdk.ZeroInt()),
sdk.NewCoin("htltbnb", sdk.ZeroInt()),
time.Duration(0),
),
types.NewAssetSupply(
sdk.NewCoin("htltinc", sdk.ZeroInt()),
sdk.NewCoin("htltinc", sdk.ZeroInt()),
sdk.NewCoin("htltinc", sdk.ZeroInt()),
sdk.NewCoin("htltinc", sdk.ZeroInt()),
time.Duration(0),
),
},
PreviousBlockTime: types.DefaultPreviousBlockTime,
}
bz, err := json.MarshalIndent(htlcGenesis, "", " ")
if err != nil {
panic(err)
}
fmt.Printf("Selected randomly generated %s parameters:\n%s\n", types.ModuleName, bz)
simState.GenState[types.ModuleName] = simState.Cdc.MustMarshalJSON(htlcGenesis)
}