laconicd-deprecated/tests/integration_tests
Daniel Burckhardt 9bbf356c6b
tests(rpc): add filter tests (#1233)
* tests(rpc): add pending transaction filter test

* tests(rpc): add block filter and event log  test

* tests(rpc): simplify to cluster instead of comparing types

* tests(rpc): wip filter by address

* tests(rpc): add get_logs test

* fix flake8 linter

* fix flake8 linter

* add caching to readme

* add caching to readme

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2022-08-12 13:57:57 +00:00
..
configs feat!: Store eth tx index separately (#1121) 2022-08-11 22:49:05 +02:00
contracts tests(rpc): add filter tests (#1233) 2022-08-12 13:57:57 +00:00
__init__.py imp(tests): integration tests setup (#1196) 2022-07-27 13:27:07 +00:00
.isort.cfg imp(tests): prune node integration tests (#1212) 2022-08-08 10:17:10 +02:00
conftest.py feat!: Store eth tx index separately (#1121) 2022-08-11 22:49:05 +02:00
cosmoscli.py feat!: Apply feemarket to native cosmos tx (#1194) 2022-08-10 18:33:38 -04:00
expected_constants.py [ENG-626] Rpc types integration tests (#1207) 2022-08-08 09:01:42 -04:00
network.py feat!: Apply feemarket to native cosmos tx (#1194) 2022-08-10 18:33:38 -04:00
poetry.lock imp(tests): integration tests setup (#1196) 2022-07-27 13:27:07 +00:00
pyproject.toml imp(tests): integration tests setup (#1196) 2022-07-27 13:27:07 +00:00
README.md tests(rpc): add filter tests (#1233) 2022-08-12 13:57:57 +00:00
shell.nix fix: integration tests are not run in CI (#1221) 2022-08-02 08:21:03 +02:00
test_basic.py fix: integration tests are not run in CI (#1221) 2022-08-02 08:21:03 +02:00
test_filters.py tests(rpc): add filter tests (#1233) 2022-08-12 13:57:57 +00:00
test_priority.py feat!: Apply feemarket to native cosmos tx (#1194) 2022-08-10 18:33:38 -04:00
test_pruned_node.py imp(tests): prune node integration tests (#1212) 2022-08-08 10:17:10 +02:00
test_types.py fix(rpc): get_proof test fail because block numbers are not high enough (#1239) 2022-08-12 13:20:17 +02:00
utils.py tests(rpc): add filter tests (#1233) 2022-08-12 13:57:57 +00:00

RPC Integration tests

The RPC integration test suite uses nix for reproducible and configurable builds allowing to run integration tests using python web3 library against different Ethermint and Geth clients with multiple configurations.

Installation

Nix Multi-user installation:

sh <(curl -L https://nixos.org/nix/install) --daemon

Make sure the following line has been added to your shell profile (e.g. ~/.profile):

source ~/.nix-profile/etc/profile.d/nix.sh

Then re-login shell, the nix installation is completed.

For linux:

sh <(curl -L https://nixos.org/nix/install) --no-daemon

Run Local

First time run (can take a while):

make run-integration-tests

Once you've run them once and, you can run:

nix-shell tests/integration_tests/shell.nix
cd tests/integration_tests
pytest -s -vv

If you're changing anything on the ethermint rpc, rerun the first command.

Caching

You can enable Binary Cache to speed up the tests:

$ nix-env -iA cachix -f https://cachix.org/api/v1/install
$ cachix use ethermint