pingpong

package
v0.0.0-...-76c1feb Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 1, 2021 License: AGPL-3.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

View Source
const ConfigFilename = "ppconfig.json"

ConfigFilename name of configuration file

Variables

View Source
var DefaultConfig = PpConfig{
	SrcAccount:      "",
	DelayBetweenTxn: 100,
	RandomizeFee:    false,
	RandomizeAmt:    false,
	RandomizeDst:    false,
	MaxFee:          10000,
	MinFee:          1000,
	MaxAmt:          1000,
	TxnPerSec:       200,
	NumPartAccounts: 10,
	RunTime:         10 * time.Second,
	RestTime:        1 * time.Hour,
	RefreshTime:     10 * time.Second,
	MinAccountFunds: 100000,
	GroupSize:       1,
	NumAsset:        0,
	MinAccountAsset: 10000000,
	NumApp:          0,
	AppProgOps:      0,
	AppProgHashes:   0,
	AppProgHashSize: "sha256",
	Rekey:           false,
	MaxRuntime:      0,

	NftAsaAccountInFlight: 5,
	NftAsaPerAccount:      900,
}

DefaultConfig object for Ping Pong

Functions

This section is empty.

Types

type CreatablesInfo

type CreatablesInfo struct {
	AssetParams map[uint64]v1.AssetParams
	AppParams   map[uint64]v1.AppParams
	OptIns      map[uint64][]string
}

CreatablesInfo has information about created assets, apps and opting in

type PpConfig

type PpConfig struct {
	SrcAccount      string
	DelayBetweenTxn time.Duration
	RandomizeFee    bool
	RandomizeAmt    bool
	RandomizeDst    bool
	MaxFee          uint64
	MinFee          uint64
	MaxAmt          uint64
	TxnPerSec       uint64
	NumPartAccounts uint32
	RunTime         time.Duration
	RestTime        time.Duration
	RefreshTime     time.Duration
	MinAccountFunds uint64
	Quiet           bool
	RandomNote      bool
	RandomLease     bool
	Program         []byte
	LogicArgs       [][]byte
	GroupSize       uint32
	NumAsset        uint32
	MinAccountAsset uint64
	NumApp          uint32
	NumAppOptIn     uint32
	AppProgOps      uint32
	AppProgHashes   uint32
	AppProgHashSize string
	AppGlobKeys     uint32
	AppLocalKeys    uint32
	Rekey           bool
	MaxRuntime      time.Duration

	// asset spam; make lots of NFT ASAs
	NftAsaPerSecond       uint32 // e.g. 100
	NftAsaPerAccount      uint32 // 0..999
	NftAsaAccountInFlight uint32
}

PpConfig defines configuration structure for

func LoadConfigFromFile

func LoadConfigFromFile(file string) (cfg PpConfig, err error)

LoadConfigFromFile reads and loads Ping Pong configuration

func (PpConfig) Dump

func (cfg PpConfig) Dump(stream io.Writer)

Dump configuration to output stream

func (PpConfig) Save

func (cfg PpConfig) Save(file string) error

Save writes configuration to a file

type WorkerState

type WorkerState struct {
	// contains filtered or unexported fields
}

WorkerState object holds a running pingpong worker

func NewPingpong

func NewPingpong(cfg PpConfig) *WorkerState

NewPingpong creates a new pingpong WorkerState

func (*WorkerState) PrepareAccounts

func (pps *WorkerState) PrepareAccounts(ac libgoal.Client) (err error)

PrepareAccounts to set up accounts and asset accounts required for Ping Pong run

func (*WorkerState) RunPingPong

func (pps *WorkerState) RunPingPong(ctx context.Context, ac libgoal.Client)

RunPingPong starts ping pong process

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL