laconicd-deprecated/tests/integration_tests
yihuang 35850e620d
fix(rpc): fix gRPC query failure on legacy blocks (#1354)
* Problem: grpc query fail on legacy blocks

`BaseFee` and `EthCall`.

Solution:
- since grpc query handlers are used for all versions of the blocks, it need to be compatible with legacy formats.

debug

fix basefee fetch

Revert "debug"

This reverts commit 50ebaf697fc06b0d6e26abd8de8f89717e8a219d.

update gomod2nix

Update CHANGELOG.md

debug

fix panic

Revert "debug"

This reverts commit e08af04b0776bd390c42706cc9ec978e00bcb3bb.

* add upgrade integration test

* Update tests/integration_tests/configs/upgrade-test-package.nix

Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com>
2022-09-23 18:06:25 +02:00
..
configs fix(rpc): fix gRPC query failure on legacy blocks (#1354) 2022-09-23 18:06:25 +02:00
contracts build(deps): bump @openzeppelin/contracts (#1281) 2022-08-19 11:18:51 +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 fix(rpc): fix gRPC query failure on legacy blocks (#1354) 2022-09-23 18:06:25 +02:00
expected_constants.py [ENG-626] Rpc types integration tests (#1207) 2022-08-08 09:01:42 -04:00
network.py fix(rpc): fix gRPC query failure on legacy blocks (#1354) 2022-09-23 18:06:25 +02:00
poetry.lock build(deps): bump eth-account in /tests/integration_tests (#1317) 2022-08-31 17:39:09 +02: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 fix(test): priority test result affect by base fee dropping (#1238) 2022-08-12 15:51:20 +00:00
test_pruned_node.py imp(tests): prune node integration tests (#1212) 2022-08-08 10:17:10 +02:00
test_rollback.py test: add integration test for the rollback cmd (#1311) 2022-09-01 16:22:25 +02:00
test_types.py fix(rpc): estimate gas error response (#1340) 2022-09-17 07:57:58 +00:00
test_upgrade.py fix(rpc): fix gRPC query failure on legacy blocks (#1354) 2022-09-23 18:06:25 +02:00
utils.py fix(rpc): fix gRPC query failure on legacy blocks (#1354) 2022-09-23 18:06:25 +02: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