The Raiden Scenario Player is an integration testing tool written in Python 3. It allows testing of various scenarios, and is an integral component of the Raiden test suite.
Using git
& pip
:
# Clone the scenario-player repository ~/ $git clone http://github.com/raiden-network/scenario-player # Install the scenario-player. ~/ $pip install ./scenario-player # Show available commands: ~/ $scenario_player --help # Show help for subcommand, e.g.: ~/ $scenario_player run --help
You can also use make:
make install
Or docker:
docker pull raidennetwork/scenario-player:<tag>
Where <tag>
may be a specific version, git branch or latest
for the last commit
on dev
, or stable
for the last release on master
.
make is your friend:
make install-dev
Note that this installs a pypi version of raiden - if you'd like to run the SP against the latest commit on the develop branch of the raiden repository, addtionally run this command:
make install-raiden-develop
For all other versions of raiden, you will have to manually install it.
Invoking the scenario-player from the cli can be done in one of the following ways, depending on how you installed the tool.
Invoke the command directly on the cli:
$ scenario-player run --chain=goerli:http://geth.goerli.ethnodes.brainbot.com:8545 \ --keystore-file=/path/to/keystore.file --password=${KEYSTORE_PW} \ /path/to/scenario.yaml
Reclaiming spent test ether:
$ scenario-player reclaim --chain=goerli:http://geth.goerli.ethnodes.brainbot.com:8545 \ --keystore-file=/path/to/keystore.file --password=${KEYSTORE_PW}
If you're using docker, use the docker run
command, like so:
docker run -i -t \ -v ${DATA_DIR}:/data \ -v ${WALLET_DIR}:${WALLET_DIR}:ro \ raidennetwork/scenario-player:${branch}
As you can see, you'll have to mount some local directories to the container, otherwise
the container will not run. DATA_DIR
is the location of your blockchain data,
and the WALLET_DIR
should point to the location of your wallet file.
For example scenarios have a look at the Raiden
repository's scenarios. These
can be found here.
With the Performance Analysis Tool the logs of the scenario player can be analyzed and visualized.