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 bb4faee21e
Merge pull request #6509
9 years ago
..
test_framework Fix race condition on test node shutdown 9 years ago
.gitignore Python-based regression tests 11 years ago
README.md Remove bash test note from rpc-tests readme 9 years ago
bipdersig-p2p.py [QA] restructure rpc tests directory 10 years ago
bipdersig.py [QA] restructure rpc tests directory 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. 10 years ago
forknotify.py [QA] restructure rpc tests directory 10 years ago
fundrawtransaction.py Merge pull request #6415 9 years ago
getblocktemplate_longpoll.py [QA] restructure rpc tests directory 10 years ago
getblocktemplate_proposals.py [QA] restructure rpc tests directory 10 years ago
getchaintips.py [QA] restructure rpc tests directory 10 years ago
httpbasics.py add RPC tests for setban & disconnectnode 10 years ago
invalidateblock.py [QA] restructure rpc tests directory 10 years ago
invalidblockrequest.py [QA] restructure rpc tests directory 10 years ago
keypool.py rpc-tests: remove python-bitcoinrpc directory 10 years ago
listtransactions.py Add p2sh option to importaddress to import redeemScripts 9 years ago
maxblocksinflight.py [QA] restructure rpc tests directory 10 years ago
mempool_coinbase_spends.py [QA] restructure rpc tests directory 10 years ago
mempool_resurrect_test.py [QA] restructure rpc tests directory 10 years ago
mempool_spendcoinbase.py [QA] restructure rpc tests directory 10 years ago
merkle_blocks.py [QA] restructure rpc tests directory 10 years ago
nodehandling.py banlist.dat: store banlist on disk 10 years ago
p2p-acceptblock.py Replace sleep with syncing using pings 10 years ago
proxy_test.py tests: Extend RPC proxy tests 10 years ago
pruning.py [QA] restructure rpc tests directory 10 years ago
rawtransactions.py [QA] fix possible reorg issue in rawtransaction.py/fundrawtransaction.py RPC test 10 years ago
receivedby.py [QA] restructure rpc tests directory 10 years ago
reindex.py [QA] restructure rpc tests directory 10 years ago
rest.py Implement REST mempool API, add test and documentation. 9 years ago
rpcbind_test.py rpc-tests: remove python-bitcoinrpc directory 10 years ago
script_test.py [QA] restructure rpc tests directory 10 years ago
signrawtransactions.py pull-tester/rpc-tests.sh: allow passing throug of arguments 10 years ago
smartfees.py [QA] restructure rpc tests directory 10 years ago
txn_clone.py Fix intermittent test failure, reduce test time 10 years ago
txn_doublespend.py Merge pull request #5881 10 years ago
wallet.py [QA] add testcases for parsing strings as values 9 years ago
walletbackup.py Fix walletbackup.py after directory restructuring 10 years ago
zapwallettxes.py [QA] restructure rpc tests directory 10 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.

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