Kevacoin source tree
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Wladimir J. van der Laan 5121c68657
Merge pull request #6414
9 years ago
..
test_framework rpc-tests: remove python-bitcoinrpc directory 9 years ago
.gitignore Python-based regression tests 11 years ago
README.md Add paytxfee to getwalletinfo, warnings to getnetworkinfo 9 years ago
bipdersig-p2p.py [QA] restructure rpc tests directory 9 years ago
bipdersig.py [QA] restructure rpc tests directory 9 years ago
conflictedbalance.sh clarify that there are only two nodes 10 years ago
decodescript.py add tests for the decodescript rpc. add mention of the rpc regression tests to the testing seciton of the main readme. 9 years ago
forknotify.py [QA] restructure rpc tests directory 9 years ago
fundrawtransaction.py fundrawtransaction tests 9 years ago
getblocktemplate_longpoll.py [QA] restructure rpc tests directory 9 years ago
getblocktemplate_proposals.py [QA] restructure rpc tests directory 9 years ago
getchaintips.py [QA] restructure rpc tests directory 9 years ago
httpbasics.py add RPC tests for setban & disconnectnode 9 years ago
invalidateblock.py [QA] restructure rpc tests directory 9 years ago
invalidblockrequest.py [QA] restructure rpc tests directory 9 years ago
keypool.py rpc-tests: remove python-bitcoinrpc directory 9 years ago
listtransactions.py [QA] restructure rpc tests directory 9 years ago
maxblocksinflight.py [QA] restructure rpc tests directory 9 years ago
mempool_coinbase_spends.py [QA] restructure rpc tests directory 9 years ago
mempool_resurrect_test.py [QA] restructure rpc tests directory 9 years ago
mempool_spendcoinbase.py [QA] restructure rpc tests directory 9 years ago
merkle_blocks.py [QA] restructure rpc tests directory 9 years ago
nodehandling.py banlist.dat: store banlist on disk 9 years ago
p2p-acceptblock.py P2P regression test for new AcceptBlock behavior 9 years ago
proxy_test.py tests: Extend RPC proxy tests 9 years ago
pruning.py [QA] restructure rpc tests directory 9 years ago
rawtransactions.py pull-tester/rpc-tests.sh: allow passing throug of arguments 9 years ago
receivedby.py [QA] restructure rpc tests directory 9 years ago
reindex.py [QA] restructure rpc tests directory 9 years ago
rest.py [REST] add JSON support for /rest/headers/ 9 years ago
rpcbind_test.py rpc-tests: remove python-bitcoinrpc directory 9 years ago
script_test.py [QA] restructure rpc tests directory 9 years ago
send.sh Update license in pull-tester and rpc-tests 10 years ago
signrawtransactions.py pull-tester/rpc-tests.sh: allow passing throug of arguments 9 years ago
smartfees.py [QA] restructure rpc tests directory 9 years ago
txn_clone.py Fix intermittent test failure, reduce test time 9 years ago
txn_doublespend.py Merge pull request #5881 9 years ago
util.sh Update license in pull-tester and rpc-tests 10 years ago
wallet.py [QA] restructure rpc tests directory 9 years ago
walletbackup.py Fix walletbackup.py after directory restructuring 9 years ago
zapwallettxes.py [QA] restructure rpc tests directory 9 years ago

README.md

Regression tests of RPC interface

python-bitcoinrpc

Git subtree of https://github.com/jgarzik/python-bitcoinrpc. Changes to python-bitcoinrpc should be made upstream, and then pulled here using git subtree.

test_framework/test_framework.py

Base class for new regression tests.

test_framework/util.py

Generally useful functions.

Bash-based tests, to be ported to Python:

  • conflictedbalance.sh : More testing of malleable transaction handling

Notes

You can run a single test by calling qa/pull-tester/rpc-tests.sh <testname>.

Run all possible tests with qa/pull-tester/rpc-tests.sh -extended.

Possible options:

-h, --help       show this help message and exit
  --nocleanup      Leave bitcoinds and test.* datadir on exit or error
  --noshutdown     Don't stop bitcoinds after the test execution
  --srcdir=SRCDIR  Source directory containing bitcoind/bitcoin-cli (default:
                   ../../src)
  --tmpdir=TMPDIR  Root directory for datadirs
  --tracerpc       Print out all RPC calls as they are made

If you set the environment variable PYTHON_DEBUG=1 you will get some debug output (example: PYTHON_DEBUG=1 qa/pull-tester/rpc-tests.sh wallet).

A 200-block -regtest blockchain and wallets for four nodes is created the first time a regression test is run and is stored in the cache/ directory. Each node has 25 mature blocks (25*50=1250 BTC) in its wallet.

After the first run, the cache/ blockchain and wallets are copied into a temporary directory and used as the initial test state.

If you get into a bad state, you should be able to recover with:

rm -rf cache
killall bitcoind