https://github.com/multiversx/mx-chain-scenario-go
MultiversX library for reading, writing and executing blockchain scenarios, especially designed for interactions with smart contracts
https://github.com/multiversx/mx-chain-scenario-go
Last synced: 8 months ago
JSON representation
MultiversX library for reading, writing and executing blockchain scenarios, especially designed for interactions with smart contracts
- Host: GitHub
- URL: https://github.com/multiversx/mx-chain-scenario-go
- Owner: multiversx
- License: gpl-3.0
- Created: 2023-02-14T08:37:12.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2025-09-30T18:18:25.000Z (9 months ago)
- Last Synced: 2025-09-30T20:14:48.491Z (9 months ago)
- Language: Go
- Size: 389 KB
- Stars: 1
- Watchers: 11
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# MultiversX blockchain scenarios: The Go framework
## Overview
Blockchain scenarios are interactions with the blockchain, real or imagined.
They help developers write tests and are able to document and replay interactions with smart contracts.
The format is described here: https://docs.multiversx.com/developers/scenario-reference/overview
## Scope
This Go framework deals with reading, writing, and controlling scenario runners.
Scenario runners are the routines that do something with these scenarios. Think of them as closures that receive the scenario steps.
The main example for such a runner can be found in the VM, here: https://github.com/multiversx/mx-chain-vm-go/tree/master/scenarioexec
However, more such runners are conceivable.
To implement such a runner, create an object that implements interface `ScenarioRunner`.
## Alternate implementation
There is an equivalent Rust implementation here: https://github.com/multiversx/mx-sdk-rs/tree/master/sdk/scenario-format
The Go implementation (this one) is older and generally tends to be better featured, altough they should be up-to-date with one another now.