Skip to content

Tests & Testing

Unit tests

Run rostrum unit tests with cargo test.

Functional tests

Rostrum has a large set of functional tests that run in CI against multiple full nodes; BCHUnlimited, Nexa and BCHN.

The functional tests are located in the test/functionalfolder of the rostrum repo. They can be started individually or in batch by running test/functional/test_runner.py. The tests look for node software in environment variable NODE_PATH and rostrum in ROSTRUM_PATH.

In addition to being run in this repo to ensure no breaking changes, the tests are also run as part of Bitcoin Unlimited CI for nodes BCHUnlimited and Nexa to ensure any changes added there does not break rostrum integration.

Run tests from Bitcoin Unlimited

Clone and compile the Bitcoin Unlimited node software.

Start the electrum tests with ./qa/pull-tester/rpc-tests.py --electrum.exec="$HOME/rostrum/target/debug/rostrum" --electrum-only.

The --electrum.exec argument is the path to the rostrum binary. The --electrum-only parameter is to skip any non-electrum integration test.