package octez-l2-libs
Defines a type scenario
and its constructors, how to run it on the PVM
val make_scenario_step :
string ->
Pvm_instance.Wasm.tree action ->
scenario_step
make_scenario_step step_name action
creates a scenario_step (1 action)
val make_scenario : string -> string -> scenario_step list -> scenario
make_scenario scenario_name kernel_path actions
creates a scenario with
- a
scenario_name
- the kernel stored at
kernel_path
- a list of
actions
ignore_scenario scenario
returns a scenario that will be ignored during a run. Can be used to reproduce part of run, ignoring some parts without having to delete anything.
val exec_slow :
reveal_builtins:Tezos_scoru_wasm.Builtins.reveals ->
Pvm_instance.Wasm.tree action
action corresponding to a top level call of PVM, in slow mode, including reboots if necessary.
val exec_fast :
reveal_builtins:Tezos_scoru_wasm.Builtins.reveals ->
Pvm_instance.Wasm.tree action
action corresponding to a top level call of PVM, using fast execution, including reboots if necessary.
val load_messages : int32 -> Exec.message list -> Pvm_instance.Wasm.tree action
load_messages level messages
returns the action corresponding to adding a list of messages
in the inbox at a given level
.
val apply_step :
?verbose:bool ->
?totals:bool ->
?irmin:bool ->
scenario_step ->
Pvm_instance.Wasm.tree ->
(Data.benchmark * Pvm_instance.Wasm.tree) Lwt.t
apply_step step tree
evaluate a scenario step
on a given tree
, returning the collected benchmark data and the new state as a tree.
val run_scenarios :
?verbose:bool ->
?totals:bool ->
?irmin:bool ->
string ->
scenario list ->
unit Lwt.t
run_scenarios filename benches
Execute a list of scenario with options:
- verbose: print info during execution
- totals: adds summary data point for each step
- irmin: adds data point for decoding / encoding the state and output the result in a csv format in a file with the provided name