scenio

package
v0.0.2 Latest Latest
Warning

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

Go to latest
Published: Mar 22, 2024 License: GPL-3.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FormatAllInFolder

func FormatAllInFolder(path string) error

func NewDefaultFileResolver

func NewDefaultFileResolver() *fr.DefaultFileResolver

NewDefaultFileResolver yields a new DefaultFileResolver instance. Reexported here to avoid having all external packages importing the parser. DefaultFileResolver is in parse for local tests only.

func ParseScenariosScenario

func ParseScenariosScenario(parser scenjparse.Parser, scenFilePath string) (*scenmodel.Scenario, error)

ParseScenariosScenario reads and parses a Scenarios scenario from a JSON file.

func ParseScenariosScenarioDefaultParser

func ParseScenariosScenarioDefaultParser(scenFilePath string) (*scenmodel.Scenario, error)

ParseScenariosScenarioDefaultParser reads and parses a Scenarios scenario from a JSON file.

func WriteScenariosScenario

func WriteScenariosScenario(scenario *scenmodel.Scenario, toPath string) error

WriteScenariosScenario exports a Scenarios scenario to a file, using the default formatting.

Types

type RunScenarioOptions

type RunScenarioOptions struct {
	ForceTraceGas bool
}

RunScenarioOptions defines the scenario options component

func DefaultRunScenarioOptions

func DefaultRunScenarioOptions() *RunScenarioOptions

DefaultRunScenarioOptions creates a new RunScenarioOptions instance

type ScenarioController

type ScenarioController struct {
	Executor    ScenarioRunner
	RunsNewTest bool
	Parser      scenjparse.Parser
}

ScenarioController is a component that can run json scenarios, using a provided executor.

func NewScenarioController

func NewScenarioController(executor ScenarioRunner, fileResolver fr.FileResolver, vmType []byte) *ScenarioController

NewScenarioController creates new ScenarioController instance.

func (*ScenarioController) RunAllJSONScenariosInDirectory

func (r *ScenarioController) RunAllJSONScenariosInDirectory(
	generalTestPath string,
	specificTestPath string,
	allowedSuffix string,
	excludedFilePatterns []string,
	options *RunScenarioOptions) error

RunAllJSONScenariosInDirectory walks directory, parses and prepares all json scenarios, then calls ScenarioRunner for each of them.

func (*ScenarioController) RunSingleJSONScenario

func (r *ScenarioController) RunSingleJSONScenario(contextPath string, options *RunScenarioOptions) error

RunSingleJSONScenario parses and prepares test, then calls testCallback.

type ScenarioRunner

type ScenarioRunner interface {
	// Reset clears state/world.
	Reset()

	// RunScenario executes the scenario and checks if it passed. Failure is signaled by returning an error.
	// The FileResolver helps with resolving external steps.
	// TODO: group into a "execution context" param.
	RunScenario(*scenmodel.Scenario, fr.FileResolver) error
}

ScenarioRunner describes a component that can run a VM scenario.

Jump to

Keyboard shortcuts

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