aboutsummaryrefslogtreecommitdiff
path: root/qa/rpc-tests
AgeCommit message (Collapse)Author
2015-10-23Merge pull request #6707Wladimir J. van der Laan
6af25b0 Add BIP65 to getblockchaininfo softforks list (Peter Todd) ba1da90 Show softfork status in getblockchaininfo (Wladimir J. van der Laan) 70a427b CLTV: Add more tests to improve coverage (Esteban Ordano) c5a27f4 Add RPC tests for the CHECKLOCKTIMEVERIFY (BIP65) soft-fork (Peter Todd) 5e82e1c Add CHECKLOCKTIMEVERIFY (BIP65) soft-fork logic (Peter Todd) 6ea5ca4 Enable CHECKLOCKTIMEVERIFY as a standard script verify flag (Peter Todd) 4fa7a04 Replace NOP2 with CHECKLOCKTIMEVERIFY (BIP65) (Peter Todd) 6ec08db Move LOCKTIME_THRESHOLD to src/script/script.h (Peter Todd) 684636b Make CScriptNum() take nMaxNumSize as an argument (Peter Todd)
2015-10-20Make fee aware of min relay in pruning.py RPC testAlex Morcos
Rebased-From: b6d5e32e0e5b038c6ff7e2ab5221b10727722341 Github-Pull: #6841
2015-10-08Add RPC tests for the CHECKLOCKTIMEVERIFY (BIP65) soft-forkPeter Todd
bip65-cltv.py is based on the earlier BIP66 soft-fork RPC test implemented by Pieter Wuille's 819bcf9b9902319176cdb1d476cacfee9b3727ec bip65-cltv-p2p.py is based on the earlier BIP66 P2P test by Suhas Daftuar's d76412b068d95454732aa3def95decf35251759a Rebased-From: 308257856099e82e91881ba97f741d840184727c
2015-09-23Merge pull request #6703Wladimir J. van der Laan
45bfa13 PARTIAL: typofixes (found by misspell_fixer) (Veres Lajos) 21c406e add support for miniupnpc api version 14 (Pavel Vasin) 13bd5a7 rpc-tests: re-enable rpc-tests for Windows (Cory Fields) ccc4ad6 net: Set SO_REUSEADDR for Windows too (Cory Fields) 1f6772e add unit test for CNetAddr::GetGroup. (Alex Morcos) 13642a5 Fix masking of irrelevant bits in address groups. (Alex Morcos) 6b51b9b Replace boost::reverse_lock with our own. (Casey Rodarmor) 626c5e6 Make sure we re-acquire lock if a task throws (Casey Rodarmor) 4877053 Add missing files to files.md (fanquake) f171fee Handle leveldb::DestroyDB() errors on wipe failure (Adam Weiss) c5b89fe Fix race condition on test node shutdown (Casey Rodarmor) 4a37410 Handle no chain tip available in InvalidChainFound() (Ross Nicoll) f6d29a6 Use unique name for AlertNotify tempfile (Casey Rodarmor) e6adac7 Delay initial pruning until after wallet init (Adam Weiss) e0020d4 Make sure LogPrint strings are line-terminated (J Ross Nicoll) 7ff9d12 Make sure LogPrintf strings are line-terminated (Wladimir J. van der Laan) 5a39133 build: fix libressl detection (Cory Fields) f6355e6 Avoid leaking file descriptors in RegisterLoad (Casey Rodarmor) 60457d3 locking: fix a few small issues uncovered by -Wthread-safety (Cory Fields) a496e11 Remove bash test note from rpc-tests readme (fanquake) 49c6a64 tests: Remove old sh-based test framework (Wladimir J. van der Laan) a37567d Add autogen.sh to source tarball. (randy-waterhouse) 1f4d7cf travis: for travis generating an extra build (Cory Fields)
2015-09-22PARTIAL: typofixes (found by misspell_fixer)Veres Lajos
Upstream: 9f68ed6b6d1a9c6436ce37913666165f2b180ee3 (PR #6539)
2015-09-22Fix race condition on test node shutdownCasey Rodarmor
2015-09-22Remove bash test note from rpc-tests readmefanquake
2015-09-22tests: Remove old sh-based test frameworkWladimir J. van der Laan
This removes the `conflictedbalance.sh` test as well, but that test has been broken for a long time and isn't part of any scripts. What it does is, IMO, sufficiently tested by other tests.
2015-07-29Be even stricter in processing unrequested blocksSuhas Daftuar
Github-Pull: #6224 Rebased-From: bfc30b34374d71928acee5ff41282f09cedfd5e4 6b1066fab41523d25d75b45a10e4b0f61d7c61d0 04b5d235f1560b8285591b963d3636f7ddf74563 59b49cd07482494d9a99068af502be9ceda41ed2
2015-06-03P2P regression test for new AcceptBlock behaviorSuhas Daftuar
Github-Pull: #5875 Rebased-From: aa8c827968a68a3adc4df5f126635e37a71a7fbb
2015-06-01Merge pull request #6193Wladimir J. van der Laan
6e71efa [REST] remove json input for getutxos, limit to query max. 15 outpoints (Jonas Schnelli) 64b8027 rest.cpp: strip whitespace (Jonas Schnelli)
2015-05-27[REST] remove json input for getutxos, limit to query max. 15 outpointsJonas Schnelli
Remove possibility to send json encoded parameters to `/rest/getutxos/` to avoid possible DoS scenarios. The JSON output option is untouched.
2015-05-27Fix walletbackup.py after directory restructuringSuhas Daftuar
Also add walletbackup.py to rpc-tests.sh
2015-05-21rpc-tests: remove python-bitcoinrpc directoryJonas Schnelli
place authproxy.py at same level as other utility classes
2015-05-18pull-tester/rpc-tests.sh: allow passing throug of argumentsJonas Schnelli
2015-05-18update rpc-tests readme.mdJonas Schnelli
2015-05-18[QA] restructure rpc tests directoryJonas Schnelli
* move non-test classes to subdir `test-framework`
2015-05-13Increase timeouts in pruning.py and modify warning language.Alex Morcos
2015-05-13Merge pull request #5159Wladimir J. van der Laan
b649e03 Create new BlockPolicyEstimator for fee estimates (Alex Morcos)
2015-05-13Create new BlockPolicyEstimator for fee estimatesAlex Morcos
This class groups transactions that have been confirmed in blocks into buckets, based on either their fee or their priority. Then for each bucket, the class calculates what percentage of the transactions were confirmed within various numbers of blocks. It does this by keeping an exponentially decaying moving history for each bucket and confirm block count of the percentage of transactions in that bucket that were confirmed within that number of blocks. -Eliminate txs which didn't have all inputs available at entry from fee/pri calcs -Add dynamic breakpoints and tracking of confirmation delays in mempool transactions -Remove old CMinerPolicyEstimator and CBlockAverage code -New smartfees.py -Pass a flag to the estimation code, using IsInitialBlockDownload as a proxy for when we are still catching up and we shouldn't be counting how many blocks it takes for transactions to be included. -Add a policyestimator unit test
2015-05-11Merge pull request #6073Wladimir J. van der Laan
a681663 clarify that there are only two nodes (Jameson Lopp)
2015-05-07Merge pull request #5958Wladimir J. van der Laan
231072f [QA] add multisig rpc tests (Jonas Schnelli)
2015-05-07[QA] add multisig rpc testsJonas Schnelli
2015-05-06Merge pull request #5420Wladimir J. van der Laan
6b4feb8 [QA] rest.py RPC test: change setgenerate() to generate() (Jonas Schnelli) 97ee866 [REST] getutxos REST command (based on Bip64) (Jonas Schnelli)
2015-05-05QA: add RPC tests for error reporting of "signrawtransaction"dexX7
Tests error reporting of transaction signing via RPC call "signrawtransaction". Expected results: Test 1: create and sign a valid raw transaction with one input: - 1) The transaction has a complete set of signatures - 2) No script verification error occurred Test 2: create and sign a raw transaction with one valid, one invalid and one missing input script: - 3) The transaction has no complete set of signatures - 4) Two script verification errors occurred - 5) Script verification errors have certain properties ("txid", "vout", "scriptSig", "sequence", "error") - 6) The verification errors refer to the invalid (vin 1) and missing input (vin 2)
2015-05-04Merge pull request #5418Wladimir J. van der Laan
bba2216 RPC test for "#5418 Report missing inputs in sendrawtransaction" (Jonas Schnelli) de8e801 Report missing inputs in sendrawtransaction (Pieter Wuille)
2015-05-04Merge pull request #6085Wladimir J. van der Laan
b05a89b Non-grammatical language improvements (Luke Dashjr) 7e6d23b Bugfix: Grammar fixes (Corinne Dashjr)
2015-05-01Fix comptool send_message call when MAX_INV_SZ reachedSuhas Daftuar
2015-05-01Fix potential race conditions in p2p testing frameworkSuhas Daftuar
Previously, each NodeConnCB had its own lock to synchronize data structures used by the testing thread and the networking thread, and NodeConn provided a separate additional lock for synchronizing access to each send buffer. This commit replaces those locks with a single global lock (mininode_lock) that we use to synchronize access to all data structures shared by the two threads. Updates comptool and maxblocksinflight to use the new synchronization semantics, eliminating previous race conditions within comptool, and re-enables invalidblockrequest.py in travis.
2015-05-01RPC test for "#5418 Report missing inputs in sendrawtransaction"Jonas Schnelli
2015-05-01Bugfix: Grammar fixesCorinne Dashjr
2015-04-30Fix mininode disconnections to work with selectSuhas Daftuar
2015-04-30Merge pull request #5981Wladimir J. van der Laan
2703412 Fix default binary in p2p tests to use environment variable (Suhas Daftuar) 29bff0e Add some travis debugging for python scripts (Suhas Daftuar) d76412b Add script manipulation tools for use in mininode testing framework (Suhas Daftuar) b93974c Add comparison tool test runner, built on mininode (Suhas Daftuar) 6c1d1ba Python p2p testing framework (Suhas Daftuar)
2015-04-29Fix default binary in p2p tests to use environment variableSuhas Daftuar
2015-04-29Merge pull request #6032Wladimir J. van der Laan
688da79 QA: add --noshutdown option to prevent stopping nodes (dexX7) 2eadeb2 QA: stop nodes after RPC tests, even with --nocleanup (dexX7)
2015-04-28Add some travis debugging for python scriptsSuhas Daftuar
Adds printing to the console before/after calls to bitcoin-cli -rpcwait, if the PYTHON_DEBUG environment variable is initialized.
2015-04-28Add script manipulation tools for use in mininode testing frameworkSuhas Daftuar
script.py is modified from the code in python-bitcoinlib, and provides tools for manipulating and creating CScript objects. bignum.py is a dependency for script.py script_test.py is an example test that uses the script tools for running a test that compares the behavior of two nodes, in a comptool- style test, for each of the test cases in the bitcoin unit test script files, script_valid.json and script_invalid.json. (This test is very slow to run, but is a proof of concept for how we can write tests to compare consensus-critical behavior between different versions of bitcoind.) bipdersig-p2p.py is another example test in the comptool framework, which tests deployment of BIP DERSIG for a single node. It uses the script.py tools for manipulating signatures to be non-DER compliant.
2015-04-28Add comparison tool test runner, built on mininodeSuhas Daftuar
comptool.py creates a tool for running a test suite on top of the mininode p2p framework. It supports two types of tests: those for which we expect certain behavior (acceptance or rejection of a block or transaction) and those for which we are just comparing that the behavior of 2 or more nodes is the same. blockstore.py defines BlockStore and TxStore, which provide db-backed maps between block/tx hashes and the corresponding block or tx. blocktools.py defines utility functions for creating and manipulating blocks and transactions. invalidblockrequest.py is an example test in the comptool framework, which tests the behavior of a single node when sent two different types of invalid blocks (a block with a duplicated transaction and a block with a bad coinbase value).
2015-04-28Python p2p testing frameworkSuhas Daftuar
mininode.py provides a framework for connecting to a bitcoin node over the p2p network. NodeConn is the main object that manages connectivity to a node and provides callbacks; the interface for those callbacks is defined by NodeConnCB. Defined also are all data structures from bitcoin core that pass on the network (CBlock, CTransaction, etc), along with de-/serialization functions. maxblocksinflight.py is an example test using this framework that tests whether a node is limiting the maximum number of in-flight block requests. This also adds support to util.py for specifying the binary to use when starting nodes (for tests that compare the behavior of different bitcoind versions), and adds maxblocksinflight.py to the pull tester.
2015-04-28Merge pull request #5199Wladimir J. van der Laan
1ec900a Remove broken+useless lock/unlock log prints (Matt Corallo) 352ed22 Add merkle blocks test (Matt Corallo) 59ed61b Add RPC call to generate and verify merkle blocks (Matt Corallo) 30da90d Add CMerkleBlock constructor for tx set + block and an empty one (Matt Corallo)
2015-04-27clarify that there are only two nodesJameson Lopp
2015-04-24Merge pull request #6036Wladimir J. van der Laan
f89b092 add rpc test for listunspents support for zero value txouts (Jonas Schnelli) 219953c Show zero value txouts in listunspent. (Gregory Maxwell)
2015-04-23Add merkle blocks testMatt Corallo
2015-04-23QA: add --noshutdown option to prevent stopping nodesdexX7
With `--noshutdown`, the nodes are not stopped explicitly. `--noshutdown` implies `--nocleanup`, to prevent removing datadirs, which are still in use.
2015-04-22Add block pruning functionalitymrbandrews
This adds a -prune=N option to bitcoind, which if set to N>0 will enable block file pruning. When pruning is enabled, block and undo files will be deleted to try to keep total space used by those files to below the prune target (N, in MB) specified by the user, subject to some constraints: - The last 288 blocks on the main chain are always kept (MIN_BLOCKS_TO_KEEP), - N must be at least 550MB (chosen as a value for the target that could reasonably be met, with some assumptions about block sizes, orphan rates, etc; see comment in main.h), - No blocks are pruned until chainActive is at least 100,000 blocks long (on mainnet; defined separately for mainnet, testnet, and regtest in chainparams as nPruneAfterHeight). This unsets NODE_NETWORK if pruning is enabled. Also included is an RPC test for pruning (pruning.py). Thanks to @rdponticelli for earlier work on this feature; this is based in part off that work.
2015-04-21[QA] rest.py RPC test: change setgenerate() to generate()Jonas Schnelli
2015-04-21[REST] getutxos REST command (based on Bip64)Jonas Schnelli
has parts of @mhearn #4351 * allows querying the utxos over REST * same binary input and outputs as mentioned in Bip64 * input format = output format * various rpc/rest regtests
2015-04-21add rpc test for listunspents support for zero value txoutsJonas Schnelli
2015-04-20rpc-tests: Add proxy testWladimir J. van der Laan
Add test for -proxy, -onion and -proxyrandomize.
2015-04-20QA: stop nodes after RPC tests, even with --nocleanupdexX7
`--nocleanup` should provide a way to preserve test data, but should not have an impact on whether nodes are to be stopped after the test execution. In particular, when currently running RPC tests with `--nocleanup`, then it may result in several active `bitcoind` processes, which are not terminated properly.