Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

qa-tests: use external shell script in rpc tests #12652

Merged
merged 7 commits into from
Nov 6, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 3 additions & 43 deletions .github/workflows/qa-rpc-integration-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -84,50 +84,10 @@ jobs:

cd ${{ runner.workspace }}/rpc-tests/integration
rm -rf ./mainnet/results/

# Run RPC integration test runner via http
python3 ./run_tests.py -p 8545 --continue -f --json-diff -x \
# Erigon2 and Erigon3 never supported this api methods
trace_rawTransaction,\
# false positives: Erigon return expected response. but rpc-test somehow doesn't see 1 field.
erigon_getHeaderByHash,erigon_getHeaderByNumber,eth_feeHistory,\
# total difficulty field was removed, then added back
eth_getBlockByHash,eth_getBlockByNumber,\
# Erigon bugs
debug_accountRange,debug_storageRangeAt,\
# need update rpc-test - because Erigon is correct (@AskAlexSharov will do after https://github.com/erigontech/erigon/pull/12634)
debug_getModifiedAccountsByHash,debug_getModifiedAccountsByNumber,\
# Erigon bug https://github.com/erigontech/erigon/issues/12603
erigon_getLatestLogs,erigon_getLogsByHash/test_04.json,\
# Erigon bug https://github.com/erigontech/erigon/issues/12637
debug_traceBlockByNumber/test_05.tar,debug_traceBlockByNumber/test_08.tar,debug_traceBlockByNumber/test_09.tar,debug_traceBlockByNumber/test_10.tar,debug_traceBlockByNumber/test_11.tar,debug_traceBlockByNumber/test_12.tar,\
# remove this line after https://github.com/erigontech/rpc-tests/pull/281
parity_getBlockReceipts,\
# to investigate
debug_traceBlockByHash,\
debug_traceCallMany/test_02.tar,debug_traceCallMany/test_04.tar,debug_traceCallMany/test_05.tar,debug_traceCallMany/test_06.tar,debug_traceCallMany/test_07.tar,debug_traceCallMany/test_09.json,debug_traceCallMany/test_10.tar,\
engine_exchangeCapabilities/test_1.json,\
engine_exchangeTransitionConfigurationV1/test_01.json,\
engine_getClientVersionV1/test_1.json,\
erigon_getBalanceChangesInBlock,\
eth_createAccessList/test_16.json,\
admin_nodeInfo/test_01.json,\
admin_peers/test_01.json,\
erigon_nodeInfo/test_1.json,\
eth_coinbase/test_01.json,\
eth_getTransactionByHash/test_02.json,\
eth_getWork/test_01.json,\
eth_mining/test_01.json,\
eth_protocolVersion/test_1.json,\
eth_submitHashrate/test_1.json,\
eth_submitWork/test_1.json,\
net_peerCount/test_1.json,\
net_version/test_1.json,\
txpool_content/test_01.json,\
txpool_status/test_1.json,\
web3_clientVersion/test_1.json,\
eth_estimateGas/test_14.json,\
trace_replayBlockTransactions/test_29.tar
chmod +x ${{ runner.workspace }}/erigon/.github/workflows/scripts/run_rpc_tests.sh
${{ runner.workspace }}/erigon/.github/workflows/scripts/run_rpc_tests.sh

# Capture test runner script exit status
test_exit_status=$?
Expand Down
98 changes: 98 additions & 0 deletions .github/workflows/scripts/run_rpc_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
#!/bin/bash

set +e # Disable exit on error

# Array of disabled tests
disabled_tests=(
# Erigon2 and Erigon3 never supported this api methods
trace_rawTransaction
# false positives: Erigon return expected response. but rpc-test somehow doesn't see 1 field.
erigon_getHeaderByHash,erigon_getHeaderByNumber,eth_feeHistory
# total difficulty field was removed, then added back
eth_getBlockByHash,eth_getBlockByNumber
# Erigon bugs
debug_accountRange,debug_storageRangeAt
# need update rpc-test - because Erigon is correct (@AskAlexSharov will do after https://github.com/erigontech/erigon/pull/12634)
debug_getModifiedAccountsByHash,debug_getModifiedAccountsByNumber
# Erigon bug https://github.com/erigontech/erigon/issues/12603
erigon_getLatestLogs,erigon_getLogsByHash/test_04.json
# Erigon bug https://github.com/erigontech/erigon/issues/12637
debug_traceBlockByNumber/test_05.tar
debug_traceBlockByNumber/test_08.tar
debug_traceBlockByNumber/test_09.tar
debug_traceBlockByNumber/test_10.tar
debug_traceBlockByNumber/test_11.tar
debug_traceBlockByNumber/test_12.tar
# remove this line after https://github.com/erigontech/rpc-tests/pull/281
parity_getBlockReceipts
# to investigate
debug_traceBlockByHash
debug_traceCallMany/test_02.tar
debug_traceCallMany/test_04.tar
debug_traceCallMany/test_05.tar
debug_traceCallMany/test_06.tar
debug_traceCallMany/test_07.tar
debug_traceCallMany/test_09.json
debug_traceCallMany/test_10.tar
engine_exchangeCapabilities/test_1.json
engine_exchangeTransitionConfigurationV1/test_01.json
engine_getClientVersionV1/test_1.json
erigon_getBalanceChangesInBlock
eth_createAccessList/test_16.json
admin_nodeInfo/test_01.json
admin_peers/test_01.json
erigon_nodeInfo/test_1.json
eth_coinbase/test_01.json
eth_getTransactionByHash/test_02.json
eth_getWork/test_01.json
eth_mining/test_01.json
eth_protocolVersion/test_1.json
eth_submitHashrate/test_1.json
eth_submitWork/test_1.json
net_peerCount/test_1.json
net_version/test_1.json
txpool_content/test_01.json
txpool_status/test_1.json
web3_clientVersion/test_1.json
eth_estimateGas/test_14.json
trace_replayBlockTransactions/test_29.tar
# recently started to fail
debug_traceTransaction/test_20.json
debug_traceTransaction/test_21.json
debug_traceTransaction/test_22.json
debug_traceTransaction/test_25.json
debug_traceTransaction/test_30.tar
debug_traceTransaction/test_33.json
debug_traceTransaction/test_35.tar
debug_traceTransaction/test_36.json
debug_traceTransaction/test_37.tar
debug_traceTransaction/test_38.tar
debug_traceTransaction/test_43.json
debug_traceTransaction/test_44.json
debug_traceTransaction/test_62.json
debug_traceTransaction/test_64.json
debug_traceTransaction/test_74.tar
debug_traceTransaction/test_75.tar
debug_traceTransaction/test_77.json
debug_traceTransaction/test_78.tar
debug_traceTransaction/test_79.tar
debug_traceTransaction/test_80.tar
debug_traceTransaction/test_81.tar
debug_traceTransaction/test_82.tar
debug_traceTransaction/test_83.tar
debug_traceTransaction/test_84.tar
debug_traceTransaction/test_85.tar
debug_traceTransaction/test_87.json
debug_traceTransaction/test_90.tar
debug_traceTransaction/test_91.tar
debug_traceTransaction/test_92.tar
debug_traceTransaction/test_93.json
debug_traceTransaction/test_96.json
trace_filter/test_16.json)

# Transform the array into a comma-separated string
disabled_test_list=$(IFS=,; echo "${disabled_tests[*]}")

python3 ./run_tests.py -p 8545 --continue -f --json-diff -x "$disabled_test_list"

exit $?
Loading