This repository hosts integration tests and associated CI infrastructure for the Zcash ecosystem. The following tests are provided:
- Functional tests in Python of
zebrad,zainod, andzallet, using regtest mode and primarily their JSON-RPC interfaces.
The functional tests and CI workflows were originally part of the zcashd
codebase, with the Python test framework (and some of the tests) inherited from
Bitcoin Core.
- Clone the repository.
- Build
zebrad,zainod, andzalletbinaries, and place them in a folder./src/under the repository root. python3 -m venv venv. venv/bin/activatepip3 install asyncio base58 toml./qa/zcash/full_test_suite.py
See [the README for the functional tests][qa/README.md] for additional usage information.
- For new tests:
- Add a new file
NEW_TEST.pyto theqa/rpc-testsfolder. - Update
qa/pull-tester/rpc-tests.py, adding a new entry'NEW_TEST.py',to theBASE_SCRIPTSarray (either at the end of the array, or in the appropriate position based on how long the test takes to run).
- Add a new file
- Write your test (either new from scratch, or making changes to an existing test as appropriate).
- Open a pull request with your changes.
Participation in the Zcash project is subject to a Code of Conduct.
For license information see the file COPYING.
