-
Notifications
You must be signed in to change notification settings - Fork 89
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
3 changed files
with
55 additions
and
12 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,10 @@ | ||
jsonrpcclient | ||
pyyaml | ||
pysha3 | ||
coincurve | ||
eth-utils | ||
py-ecc | ||
web3 | ||
jsonrpcclient==4.0.3 | ||
pyyaml==6.0.1 | ||
pysha3==1.0.2 | ||
coincurve==18.0.0 | ||
eth-utils==3.0.0 | ||
py-ecc==7.0.0 | ||
web3==6.14.0 | ||
eth_tester | ||
rtoml | ||
cffi==1.16.0 | ||
rtoml==0.10.0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
# Python Tests for Storage node | ||
|
||
## Prerequisites | ||
|
||
1. Required python version: 3.8, 3.9, 3.10, higher version is not guaranteed (e.g. failed to install `pysha3`). | ||
|
||
2. Install dependencies under root folder: | ||
|
||
``` | ||
pip3 install -r requirements.txt | ||
``` | ||
|
||
## Dependent Binaries | ||
|
||
Python test framework will launch blockchain fullnodes at local for storage node to interact with. There are 2 kinds of fullnodes supported: | ||
|
||
- Conflux eSpace node (by default). | ||
- BSC node (geth). | ||
|
||
For Conflux eSpace node, the test framework will automatically compile the binary at runtime, and copy the binary to `tests/tmp` folder. For BSC node, the test framework will automatically download the latest version binary from [github](https://github.com/bnb-chain/bsc/releases) to `tests/tmp` folder. | ||
|
||
Alternatively, you could also manually copy specific versoin binaries (conflux or geth) to the `tests/tmp` folder. Note, do **NOT** copy released conflux binary on github, since block height of some CIPs are hardcoded. | ||
|
||
## Run Tests | ||
|
||
Go to the `tests` folder and run following command to run all tests: | ||
|
||
``` | ||
python test_all.py | ||
``` | ||
|
||
or, run any single test, e.g. | ||
|
||
``` | ||
python sync_test.py | ||
``` | ||
|
||
## Troubleshootings | ||
|
||
1. Test failed due to blockchain fullnode rpc inaccessible. | ||
* Traceback: `node.wait_for_rpc_connection()` | ||
* Solution: unset the `http_proxy` and `https_proxy` environment variables if configured. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters