aboutsummaryrefslogtreecommitdiff
path: root/qa/rpc-tests
AgeCommit message (Collapse)Author
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-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-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-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-14Fix CheckBlockIndex for reindex.mrbandrews
Some tests in CheckBlockIndex require chainActive.Tip(), but when reindexing, chainActive has not been set on the first call to CheckBlockIndex. reindex.py starts a node, mines 3 blocks, stops, and reindexes with CheckBlockIndex enabled.
2015-04-09Fix travis after merging #5957Wladimir J. van der Laan
New wallet tests have been added in the meantime and need to be updated to use `generate` instead of `setgenerate`.
2015-04-09Merge pull request #5957Wladimir J. van der Laan
e2edf95 Bugfix: make CreateNewBlock return pindexPrev (Pieter Wuille) 6b04508 Introduce separate 'generate' RPC call (Pieter Wuille) 0df67f1 Simplify hash loop code (Pieter Wuille)
2015-04-01Introduce separate 'generate' RPC callPieter Wuille
2015-04-01add -walletbroadcast=0 rpc testJonas Schnelli
2015-03-24Regression test for ResendWalletTransactionsGavin Andresen
Adds a regression test for the wallet's ResendWalletTransactions function, which uses a new, hidden RPC command "resendwallettransactions." I refactored main's Broadcast signal so it is passed the best-block time, which let me remove a global variable shared between main.cpp and the wallet (nTimeBestReceived). I also manually tested the "rebroadcast unconfirmed every half hour or so" functionality by: 1. Running bitcoind -connect=0.0.0.0:8333 2. Creating a couple of send-to-self transactions 3. Connect to a peer using -addnode 4. Waited a while, monitoring debug.log, until I see: ```2015-03-23 18:48:10 ResendWalletTransactions: rebroadcast 2 unconfirmed transactions``` One last change: don't bother putting ResendWalletTransactions messages in debug.log unless unconfirmed transactions were actually rebroadcast.
2015-03-24Merge pull request #5890Wladimir J. van der Laan
cd3d67c Fix InvalidateBlock to add chainActive.Tip to setBlockIndexCandidates (Alex Morcos)
2015-03-16Merge pull request #5831Wladimir J. van der Laan
1d9b378 qa/rpc-tests/wallet: Tests for sendmany (Luke Dashjr) 40a7573 rpcwallet/sendmany: Just take an array of addresses to subtract fees from, rather than an Object with all values being identical (Luke Dashjr) 292623a Subtract fee from amount (Cozz Lovan) 90a43c1 [Qt] Code-movement-only: Format confirmation message in sendcoinsdialog (Cozz Lovan)
2015-03-13Fix InvalidateBlock to add chainActive.Tip to setBlockIndexCandidatesAlex Morcos
2015-03-13qa/rpc-tests/wallet: Tests for sendmanyLuke Dashjr
2015-03-13Subtract fee from amountCozz Lovan
Fixes #2724 and #1570. Adds the automatically-subtract-the-fee-from-the-amount-and-send-whats-left feature to the GUI and RPC (sendtoaddress,sendmany).
2015-03-12add RPC test for InvalidateBlockAlex Morcos
2015-02-10Merge #5548: [REST] add /rest/chaininfosWladimir J. van der Laan
2c0f901 [REST] rest/chaininfos add documentation (Jonas Schnelli) 59582c8 [REST] add /rest/chaininfos (Jonas Schnelli)
2015-02-04Fix getblocktemplate_proposals test by mining one blockSuhas Daftuar
This triggers the tested node to no longer be in initial download, allowing the call to getblocktemplate() to succeed.
2015-02-03Merge pull request #5713Wladimir J. van der Laan
bf6cdeb Increase coverage of DERSIG edge cases (Pieter Wuille) 819bcf9 Add RPC test for DERSIG BIP switchover logic (Pieter Wuille) 5a47811 BIP66 changeover logic (Pieter Wuille) 092e9fe Example unit tests from BIP66 (Pieter Wuille) 80ad135 Change IsDERSignature to BIP66 implementation (Pieter Wuille)
2015-02-01Add RPC test for DERSIG BIP switchover logicPieter Wuille
2015-01-31Changed pronouns for correctness and inclusivitybikinibabe
2015-01-31Fix README link from util.sh -> util.py.Matt Bogosian
2015-01-17[QA] fix httpbasic keep-alive testJonas Schnelli
2015-01-14improve tests for #5655Jonas Schnelli
2015-01-14fix tests for #5655Wladimir J. van der Laan
2015-01-08Merge pull request #5612Wladimir J. van der Laan
84d9199 [QA] fix zapwallettxes test (Jonas Schnelli)
2015-01-07[QA] fix zapwallettxes testJonas Schnelli
- remove shell test script and add a python equivalent
2015-01-07Fix smartfees test for change to relay policySuhas Daftuar
2014-12-29[REST] add /rest/chaininfosJonas Schnelli
2014-12-25RPC test for immature balanceJonas Schnelli
2014-12-19Merge pull request #5470Wladimir J. van der Laan
78253fc Remove references to X11 licence (Michael Ford)
2014-12-17[QA] fix httpbasics RPC test typoJonas Schnelli
2014-12-16Remove references to X11 licenceMichael Ford
2014-12-12Add /rest/headersPieter Wuille
2014-12-11Merge pull request #5267Wladimir J. van der Laan
34318d7 RPC-test based on invalidateblock for mempool coinbase spends (Gavin Andresen) 7fd6219 Make CTxMemPool::remove more effecient by avoiding recursion (Matt Corallo) b7b4318 Make CTxMemPool::check more thourough by using CheckInputs (Matt Corallo) 723d12c Remove txn which are invalidated by coinbase maturity during reorg (Matt Corallo) 868d041 Remove coinbase-dependant transactions during reorg. (Matt Corallo)
2014-12-09[REST] /rest/block response with full tx detailsJonas Schnelli
- rest block request returns full unfolded tx details - /rest/block/notxdetails/<HASH> returns block where transactions are only represented by its hash
2014-12-09Port of walletbackup.sh to Python.mrbandrews
2014-12-08RPC-test based on invalidateblock for mempool coinbase spendsGavin Andresen
2014-12-06[RPC] add rpc-test for http keep-alive (persistent connections)Jonas Schnelli
2014-12-05Fix missing python2 in rpc-testsMatt Corallo
2014-12-03Merge pull request #5407Wladimir J. van der Laan
9e56532 Coinbases-in-mempool regression test (Gavin Andresen)
2014-12-02Coinbases-in-mempool regression testGavin Andresen
Immature coinbase spends are allowed in the memory pool if they can be mined in the next block. They are not allowed in the memory pool if they cannot be mined in the next block. This regression test tests those edge cases.
2014-12-02Merge pull request #5369Gavin Andresen
b2d0162 Test resurrecting memory pool transactions during chain re-org (Gavin Andresen) 3dd8ed7 Delay writing block indexes in invalidate/reconsider (Pieter Wuille) 798faec Add 'invalidateblock' and 'reconsiderblock' RPC commands. (Pieter Wuille)
2014-12-02Test resurrecting memory pool transactions during chain re-orgGavin Andresen
Builds on #5316.
2014-12-02Fix rest.py test after #5376Wladimir J. van der Laan
2014-12-01[REST] add REST interface tests in rpc-test sectionJonas Schnelli