minirunner

package
v0.31.1 Latest Latest
Warning

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

Go to latest
Published: Mar 16, 2021 License: AGPL-3.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ActiveVU

type ActiveVU struct {
	*VU
	*lib.VUActivationParams
	// contains filtered or unexported fields
}

ActiveVU holds a VU and its activation parameters

func (*ActiveVU) RunOnce

func (vu *ActiveVU) RunOnce() error

RunOnce runs the mock default function once, incrementing its iteration.

type MiniRunner

type MiniRunner struct {
	Fn              func(ctx context.Context, out chan<- stats.SampleContainer) error
	SetupFn         func(ctx context.Context, out chan<- stats.SampleContainer) ([]byte, error)
	TeardownFn      func(ctx context.Context, out chan<- stats.SampleContainer) error
	HandleSummaryFn func(context.Context, *lib.Summary) (map[string]io.Reader, error)

	SetupData []byte

	NextVUID int64
	Group    *lib.Group
	Options  lib.Options
}

MiniRunner partially implements the lib.Runner interface, but instead of using a real JS runtime, it allows us to directly specify the options and functions with Go code.

func (MiniRunner) GetDefaultGroup

func (r MiniRunner) GetDefaultGroup() *lib.Group

GetDefaultGroup returns the default group.

func (MiniRunner) GetOptions

func (r MiniRunner) GetOptions() lib.Options

GetOptions returns the supplied options struct.

func (MiniRunner) GetSetupData

func (r MiniRunner) GetSetupData() []byte

GetSetupData returns json representation of the setup data if setup() is specified and was ran, nil otherwise.

func (*MiniRunner) HandleSummary added in v0.30.0

func (r *MiniRunner) HandleSummary(ctx context.Context, s *lib.Summary) (map[string]io.Reader, error)

HandleSummary calls the specified summary callback, if supplied.

func (MiniRunner) IsExecutable

func (r MiniRunner) IsExecutable(name string) bool

IsExecutable satisfies lib.Runner, but is mocked for MiniRunner since it doesn't deal with JS.

func (MiniRunner) MakeArchive

func (r MiniRunner) MakeArchive() *lib.Archive

MakeArchive isn't implemented, it always returns nil and is just here to satisfy the lib.Runner interface.

func (*MiniRunner) NewVU

func (r *MiniRunner) NewVU(id int64, out chan<- stats.SampleContainer) (lib.InitializedVU, error)

NewVU returns a new VU with an incremental ID.

func (*MiniRunner) SetOptions

func (r *MiniRunner) SetOptions(opts lib.Options) error

SetOptions allows you to override the runner options.

func (*MiniRunner) SetSetupData

func (r *MiniRunner) SetSetupData(data []byte)

SetSetupData saves the externally supplied setup data as JSON in the runner.

func (*MiniRunner) Setup

func (r *MiniRunner) Setup(ctx context.Context, out chan<- stats.SampleContainer) (err error)

Setup calls the supplied mock setup() function, if present.

func (MiniRunner) Teardown

func (r MiniRunner) Teardown(ctx context.Context, out chan<- stats.SampleContainer) error

Teardown calls the supplied mock teardown() function, if present.

type VU

type VU struct {
	R         *MiniRunner
	Out       chan<- stats.SampleContainer
	ID        int64
	Iteration int64
}

VU is a mock VU, spawned by a MiniRunner.

func (*VU) Activate

func (vu *VU) Activate(params *lib.VUActivationParams) lib.ActiveVU

Activate the VU so it will be able to run code.

func (*VU) GetID

func (vu *VU) GetID() int64

GetID returns the unique VU ID.

Jump to

Keyboard shortcuts

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