Skip to content

Commit

Permalink
Add FOK Market to loadtest
Browse files Browse the repository at this point in the history
  • Loading branch information
Cyson authored and Cyson committed May 23, 2023
1 parent 81b8af7 commit 8d720f2
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 3 deletions.
2 changes: 2 additions & 0 deletions loadtest/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -330,6 +330,8 @@ func sampleDexOrderType(config Config) (orderType dextypes.OrderType) {
orderType = dextypes.OrderType_LIMIT
case Market:
orderType = dextypes.OrderType_MARKET
case FOKMarket:
orderType = dextypes.OrderType_FOKMARKET
default:
panic(fmt.Sprintf("Unknown message type %s\n", msgType))
}
Expand Down
11 changes: 8 additions & 3 deletions loadtest/types.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ const (
Tokenfactory string = "tokenfactory"
Limit string = "limit"
Market string = "market"
FOKMarket string = "fok_market"
WasmMintNft string = "wasm_mint_nft"
Vortex string = "vortex"
)
Expand Down Expand Up @@ -88,8 +89,9 @@ func (d *NumericDistribution) InvalidSample() sdk.Dec {
}

type DexMsgTypeDistribution struct {
LimitOrderPct sdk.Dec `json:"limit_order_percentage"`
MarketOrderPct sdk.Dec `json:"market_order_percentage"`
LimitOrderPct sdk.Dec `json:"limit_order_percentage"`
MarketOrderPct sdk.Dec `json:"market_order_percentage"`
FOKMarketOrderPct sdk.Dec `json:"fok_market_order_percentage"`
}

type StakingMsgTypeDistribution struct {
Expand All @@ -115,12 +117,15 @@ type WasmMintNftType struct {
}

func (d *MsgTypeDistribution) SampleDexMsgs() string {
if !d.Dex.LimitOrderPct.Add(d.Dex.MarketOrderPct).Equal(sdk.OneDec()) {
if !d.Dex.LimitOrderPct.Add(d.Dex.MarketOrderPct).Add(d.Dex.FOKMarketOrderPct).Add(d.Dex.FOKBYVALUEMarketOrderPct).Equal(sdk.OneDec()) {
panic("Distribution percentages must add up to 1")
}
randNum := sdk.MustNewDecFromStr(fmt.Sprintf("%f", rand.Float64()))
fokThreshold := d.Dex.LimitOrderPct.Add(d.Dex.LimitOrderPct)
if randNum.LT(d.Dex.LimitOrderPct) {
return Limit
} else if randNum.LT(fokThreshold) {
return FOKMarket
}
return Market
}
Expand Down

0 comments on commit 8d720f2

Please sign in to comment.