aboutsummaryrefslogtreecommitdiff
path: root/qa
AgeCommit message (Collapse)Author
2017-03-07Return correct error codes in fundrawtransaction().John Newbery
The fundrawtransaction() RPC was returning misleading or incorrect error codes (for example RPC_INTERNAL_ERROR when funding the transaction failed). This commit fixes those error codes: - RPC_INTERNAL_ERROR should not be returned for application-level errors, only for genuine internal errors such as corrupted data. That error code has been replaced with RPC_WALLET_ERROR. This commit also updates the test cases to explicitly test the error code.
2017-03-07Return correct error codes in setban().John Newbery
The setban() RPC was returning misleading or incorrect error codes (for example RPC_CLIENT_NODE_ALREADY_ADDED when an invalid IP address was entered). This commit fixes those error codes: - RPC_CLIENT_INVALID_IP_OR_SUBNET should be returned if the client enters an invalid IP address or subnet. This commit also updates the test cases to explicitly test the error code. This commit also adds a testcase for trying to setban on an invalid subnet.
2017-03-07Return correct error codes in removeprunedfunds().John Newbery
The removeprunedfunds() RPC was returning misleading or incorrect error codes (for example RPC_INTERNAL_ERROR when the transaction was not found in the wallet). This commit fixes those error codes: - RPC_INTERNAL_ERROR should not be returned for application-level errors, only for genuine internal errors such as corrupted data. This error code has been replaced with RPC_WALLET_ERROR. This commit also updates the test cases to explicitly test the error code.
2017-03-07Return correct error codes in blockchain.cpp.John Newbery
RPCs in blockchain.cpp were returning misleading or incorrect error codes (for example getblock() returning RPC_INTERNAL_ERROR when the block had been pruned). This commit fixes those error codes: - RPC_INTERNAL_ERROR should not be returned for application-level errors, only for genuine internal errors such as corrupted data. - RPC_METHOD_NOT_FOUND should not be returned in response to a JSON request for an existing method. Those error codes have been replaced with RPC_MISC_ERROR or RPC_INVALID_PARAMETER as appropriate.
2017-03-07Return correct error codes in bumpfee().John Newbery
The bumpfee() RPC was returning misleading or incorrect error codes (for example RPC_INVALID_ADDRESS_OR_KEY when the transaction was not BIP125 replacable). This commit fixes those error codes: - RPC_INVALID_ADDRESS_OR_KEY if an invalid address was provided: - Invalid change address given - RPC_INVALID_PARAMETER if a single (non-address/key) parameter is incorrect - confTarget and totalFee options should not both be set. - Invalid confTarget - Insufficient totalFee (cannot be less than required fee) - RPC_WALLET_ERROR for any other error - Transaction has descendants in the wallet - Transaction has descendants in the mempool - Transaction has been mined, or is conflicted with a mined transaction - Transaction is not BIP 125 replaceable - Transaction has already been bumped - Transaction contains inputs that don't belong to the wallet - Transaction has multiple change outputs - Transaction does not have a change output - Fee is higher than maxTxFee - New fee rate is less than the minimum fee rate - Change output is too small. This commit also updates the test cases to explicitly test the error code.
2017-03-07Merge #9602: Remove coin age priority and free transactions - implementationWladimir J. van der Laan
b421e6d Update example bitcoin.conf (Alex Morcos) 7d4e950 Allow setting minrelaytxfee to 0 (Alex Morcos) 359e8a0 [cleanup] Remove coin age priority completely. (Alex Morcos) f9b9371 [rpc] Remove priorityDelta from prioritisetransaction (Alex Morcos) 49be7e1 [rpc] Remove priority information from mempool RPC calls (Alex Morcos) 0315888 [test] Remove priority from tests (Alex Morcos) f838005 No longer allow "free" transactions (Alex Morcos) ad727f4 [rpc] sendrawtransaction no longer bypasses minRelayTxFee (Alex Morcos) fe282ac [cleanup] Remove estimatePriority and estimateSmartPriority (Alex Morcos) 400b151 [debug] Change -printpriority option (Alex Morcos) 272b25a [mining] Remove -blockprioritysize. (Alex Morcos) 12839cd [rpc] Remove estimatepriority and estimatesmartpriority. (Alex Morcos) ddf58c7 wallet: Remove sendfree (MarcoFalke) Tree-SHA512: a9a4499405923ce794ef18f9e334dbbd59dfc73a3dc2df6f85cc9c62af6f353ec2eed9c2d5e58e904f918d0d7ab738f403dd4939d9bc2276136864fe63710782
2017-03-06Merge #9929: tests: Delete unused function _rpchost_to_argsWladimir J. van der Laan
99fecf8 tests: Delete unused function _rpchost_to_args (Wladimir J. van der Laan) Tree-SHA512: 40911d048d3fd7b3ce83e9b3caf2a409d55b47cbe08ea4450a16ca72264300bb12d5ef7dbcf335885975119b5977f949e6879546840064138fb506e24494d849
2017-03-06Merge #9843: Fix segwit getblocktemplate testWladimir J. van der Laan
b23dcd2 Fix segwit getblocktemplate test. (John Newbery) Tree-SHA512: db87a99432397bd9aa3b66580a92a69467aa4c8a9e3a191629429f80137a59f6ecb13d129d880ebe404d903e13b153aca3ca99e3b1a94e171a4b8a50fb690f3f
2017-03-06tests: Delete unused function _rpchost_to_argsWladimir J. van der Laan
This function has been unused ever since the RPC tests no longer use `bitcoin-cli`.
2017-03-06Merge #9739: Fix BIP68 activation testWladimir J. van der Laan
f5aba8a Move tx version 2 standardness check to after bip68 activation (John Newbery) 99c0e81 Fix BIP68 activation test (John Newbery) Tree-SHA512: 3633d5359705b33a22cd3d8ea28f41abd93ccc6fe9943c8004f6149add991771df9ea12b4e14192e39e14b414bb5ecc7218e516cfeec97e4c5df29778ac57060
2017-03-06Merge #9832: [qa] assert_start_raises_init_errorWladimir J. van der Laan
025dec0 [qa] assert_start_raises_init_error (NicolasDorier) Tree-SHA512: 0fe3ecbd47625b181aed92f15445ac26993e1a8b9843bbc1088c4adcea774e503b870912a18e13dca3f255c22a9964c1c0ca92c758907538143f316c5272ea4a
2017-03-06[qa] assert_start_raises_init_errorNicolasDorier
2017-03-03[rpc] Remove priorityDelta from prioritisetransactionAlex Morcos
This a breaking API change to the prioritisetransaction RPC call which previously required exactly three arguments and now requires exactly two (hash and feeDelta). The function prioritiseTransaction is also updated.
2017-03-03[test] Remove priority from testsAlex Morcos
Remove all coin age priority functionality from unit tests and RPC tests.
2017-03-03No longer allow "free" transactionsAlex Morcos
Remove -limitfreerelay and always enforce minRelayTxFee in the mempool (except from disconnected blocks) Remove -relaypriority, the option was only used for the ability to allow free transactions to be relayed regardless of their priority. Both notions no longer apply.
2017-03-03Define 7200 second timestamp window constantRussell Yanofsky
2017-02-27[rpc] sendrawtransaction no longer bypasses minRelayTxFeeAlex Morcos
The prioritisetransaction API can always be used if a transaction needs to be submitted that bypasses minRelayTxFee.
2017-02-27[mining] Remove -blockprioritysize.Alex Morcos
Remove ability of mining code to fill part of a block with transactions sorted by coin age.
2017-02-27Merge #9839: [qa] Make import-rescan.py watchonly check reliableWladimir J. van der Laan
864890a [qa] Make import-rescan.py watchonly check reliable (Russell Yanofsky) Tree-SHA512: ea0e2b1d4fc8f35174c3d575fb751b428daf6ad3aa944fad4e3ddcc9195e4f17051473acabc54203b1d27cca64cf911b737ab92e986c40ef384410652e2dbea1
2017-02-23Fix segwit getblocktemplate test.John Newbery
2017-02-23[qa] Make import-rescan.py watchonly check reliableRussell Yanofsky
Send payments during the test from a different node than the node generating keys to be imported, so the spending node doesn't create transactions that inadvertently involve (spend funds from) the imported keys. Fixes #9826
2017-02-23Merge #9823: qa: Set correct path for binaries in rpc testsMarcoFalke
3333ad0 qa: Set correct path for binaries in rpc tests (MarcoFalke)
2017-02-23Merge #9577: Fix docstrings in qa testsMarcoFalke
3f95a80 Fix docstrings in qa tests (John Newbery)
2017-02-23Merge #9766: Add --exclude option to rpc-tests.pyMarcoFalke
c578408 Add exclude option to rpc-tests.py (John Newbery)
2017-02-23Fix docstrings in qa testsJohn Newbery
This commit fixes the module-level docstrings for the tests and helper modules in qa. Many of these tests were uncommented previously - this commit ensures that every test case has at least a minimum level of commenting.
2017-02-23Merge #9824: qa: Check return code when stopping nodesWladimir J. van der Laan
fa4cd2e qa: Check return code when stopping nodes (MarcoFalke)
2017-02-23Merge #9820: Fix pruning test broken by 2 hour manual prune windowWladimir J. van der Laan
874c736 Fix pruning test broken by 2 hour manual prune window (Russell Yanofsky)
2017-02-23qa: Check return code when stopping nodesMarcoFalke
This includes work by jnewbery
2017-02-22Move tx version 2 standardness check to after bip68 activationJohn Newbery
2017-02-22qa: Set correct path for binaries in rpc testsMarcoFalke
2017-02-22Merge #9807: RPC doc fix-ups.MarcoFalke
851f6a3 [qa][doc] Correct rpc test options in readme (fanquake) 41e7219 [trivial] Add tests_config.ini to .gitignore (fanquake)
2017-02-21Fix pruning test broken by 2 hour manual prune windowRussell Yanofsky
Regression happened in 91fb506 Add two hour buffer to manual pruning.
2017-02-20Add exclude option to rpc-tests.pyJohn Newbery
2017-02-20Merge #9619: Bugfix: RPC/Mining: GBT should return 1 MB sizelimit before ↵Wladimir J. van der Laan
segwit activates 279f944 QA: Test GBT size/weight limit values (Luke Dashjr) 9fc7f0b Bugfix: RPC/Mining: GBT should return 1 MB sizelimit before segwit activates (Luke Dashjr)
2017-02-20[qa][doc] Correct rpc test options in readmefanquake
2017-02-18Merge #9657: Improve rpc-tests.pyMarcoFalke
a6a3e58 Various review markups for rpc-tests.py improvements (John Newbery) 3de3ccd Refactor rpc-tests.py (John Newbery) afd38e7 Improve rpc-tests.py arguments (John Newbery) 91bffff Use argparse in rpc_tests.py (John Newbery) 1581ecb Use configparser in rpc-tests.py (John Newbery)
2017-02-18Merge #9744: Remove unused module from rpc-testsMarcoFalke
a432aa0 Remove unused module from rpc-tests (Takashi Mitsuta)
2017-02-17Various review markups for rpc-tests.py improvementsJohn Newbery
2017-02-16QA: Test GBT size/weight limit valuesLuke Dashjr
2017-02-16Use 2 hour grace period for key timestamps in importmulti rescansRussell Yanofsky
Gregory Maxwell <greg@xiph.org> pointed out the lack of grace period in https://github.com/bitcoin/bitcoin/pull/9490#issue-199407998. The importwallet RPC which uses key timestamps in a similar way already has a 2 hour grace period.
2017-02-16[qa] Extend import-rescan.py to test imports on pruned nodes.Russell Yanofsky
2017-02-16[qa] Extend import-rescan.py to test specific key timestampsRussell Yanofsky
2017-02-16[qa] Simplify import-rescan.pyRussell Yanofsky
Get rid of partial functions so the test can be more easily extended to add more variants of imports with options that affect rescanning (e.g. different key timestamps). Also change the second half of the test to send /to/ the imported addresses, instead of /from/ the imported addresses. The goal of this part of the test was to confirm that the wallet would pick up new transactions after an import regardless of whether or not a rescan happened during the import. But because the wallet can only do this reliably for incoming transactions and not outgoing transactions (which require the wallet to look up transaction inputs) the test previously was less meaningful than it should have been.
2017-02-16Merge #9765: Harden against mistakes handling invalid blocksWladimir J. van der Laan
ba803ef Harden against mistakes handling invalid blocks (Suhas Daftuar)
2017-02-15Merge #9756: Return error when importmulti called with invalid address.Wladimir J. van der Laan
9acf25c Return error when importmulti called with invalid address. (Russell Yanofsky)
2017-02-15Harden against mistakes handling invalid blocksSuhas Daftuar
Fixes a bug in AcceptBlock() in invoking CheckBlock() with incorrect arguments, and restores a call to CheckBlock() from ProcessNewBlock() as belt-and-suspenders. Updates the (overspecified) tests to match behavior.
2017-02-15Merge #9108: Use importmulti timestamp when importing watch only keys (on ↵Wladimir J. van der Laan
top of #9682) a80f98b Use importmulti timestamp when importing watch only keys (Russell Yanofsky) a58370e Dedup nTimeFirstKey update logic (Russell Yanofsky)
2017-02-14Merge #9720: net: fix banning and disallow sending messages before receiving ↵Wladimir J. van der Laan
verack d943491 qa: add a test to detect leaky p2p messages (Cory Fields) 8650bbb qa: Expose on-connection to mininode listeners (Matt Corallo) 5b5e4f8 qa: mininode learns when a socket connects, not its first action (Matt Corallo) cbfc5a6 net: require a verack before responding to anything else (Cory Fields) 8502e7a net: parse reject earlier (Cory Fields) c45b9fb net: correctly ban before the handshake is complete (Cory Fields)
2017-02-14Merge #9715: Disconnect peers which we do not receive VERACKs from within 60 secWladimir J. van der Laan
66f861a Add a test for P2P inactivity timeouts (Matt Corallo) b436f92 qa: Expose on-connection to mininode listeners (Matt Corallo) 8aaba7a qa: mininode learns when a socket connects, not its first action (Matt Corallo) 2cbd119 Disconnect peers which we do not receive VERACKs from within 60 sec (Matt Corallo)
2017-02-14Merge #9682: Require timestamps for importmulti keysWladimir J. van der Laan
266a811 Use MTP for importmulti "now" timestamps (Russell Yanofsky) 3cf9917 Add test to check new importmulti "now" value (Russell Yanofsky) 442887f Require timestamps for importmulti keys (Russell Yanofsky)