Commit Graph

476 Commits

Author SHA1 Message Date
Suhas Daftuar
5cb1d8a207 Tests: move get_bip9_status to util.py 2016-04-07 14:54:50 -04:00
Wladimir J. van der Laan
5078ca4543 tests: Check Content-Type header returned from RPC server
Check the Content-Type header that is returned from the RPC server. Only
if it is `application/json` the data is supposed to be parsed as JSON.

This gives better reporting if the HTTP server happens to return an error that is
not JSON-formatted, which is the case if it happens at a lower level
before JSON-RPC kicks in.

Before: `Unexpected exception caught during testing: No JSON object could be decoded`

After: `JSONRPC error: non-JSON HTTP response with '403 Forbidden' from server`
2016-04-07 15:40:17 +02:00
Wladimir J. van der Laan
3bc71e1572
Merge #7802: [qa] httpbasics: Actually test second connection
fa24456 [qa] httpbasics: Actually test second connection (MarcoFalke)
2016-04-06 14:14:14 +02:00
Wladimir J. van der Laan
401c65c6b3
Merge #7803: [qa] maxblocksinflight: Actually enable test
fac724c [qa] maxblocksinflight: Actually enable test (MarcoFalke)
2016-04-06 14:13:38 +02:00
Wladimir J. van der Laan
70ac71b877
Merge #7801: [qa] Remove misleading "errorString syntax"
ffff866 [qa] Remove misleading "errorString syntax" (MarcoFalke)
2016-04-06 14:12:44 +02:00
mruddy
92107d574d RPC: add versionHex in getblock and getblockheader JSON results; expand data in getblockchaininfo bip9_softforks field. 2016-04-04 22:21:00 +00:00
MarcoFalke
ffff866da8 [qa] Remove misleading "errorString syntax" 2016-04-03 21:33:56 +02:00
MarcoFalke
fac724c78f [qa] maxblocksinflight: Actually enable test 2016-04-03 20:49:32 +02:00
MarcoFalke
fa24456d0c [qa] httpbasics: Actually test second connection 2016-04-03 20:43:56 +02:00
Wladimir J. van der Laan
ff5874bcf7
Merge #7778: [qa] Bug fixes and refactor
4444806 [qa] mininode: Combine struct.pack format strings (MarcoFalke)
faaa3c9 [qa] mininode: Catch exceptions in got_data (MarcoFalke)
fa2cea1 [qa] rpc-tests: Properly use integers, floats (MarcoFalke)
fa524d9 [qa] Use python2/3 syntax (MarcoFalke)
2016-04-03 15:54:35 +02:00
MarcoFalke
444480649f [qa] mininode: Combine struct.pack format strings 2016-04-02 11:48:07 +02:00
MarcoFalke
faaa3c9b65 [qa] mininode: Catch exceptions in got_data 2016-04-01 21:23:49 +02:00
MarcoFalke
fa2cea163b [qa] rpc-tests: Properly use integers, floats 2016-04-01 21:23:30 +02:00
Wladimir J. van der Laan
e9723cb273
Merge #7489: tests: Make proxy_test work on travis servers without IPv6
7539f1a tests: Make proxy_test work on travis servers without IPv6 (Wladimir J. van der Laan)
2016-04-01 14:42:26 +02:00
MarcoFalke
fa524d9ddb [qa] Use python2/3 syntax 2016-03-31 18:35:17 +02:00
BtcDrak
40234ba89f Fix comments in tests 2016-03-30 19:38:02 +01:00
Wladimir J. van der Laan
e8a8f3d4b2
Merge #7648: BIP9 versionbits softfork for BIP68, BIP112 and BIP113
71527a0 Test of BIP9 fork activation of mtp, csv, sequence_lock (NicolasDorier)
19d73d5 Add RPC test for BIP 68/112/113 soft fork. (Alex Morcos)
12c89c9 Policy: allow transaction version 2 relay policy. (BtcDrak)
02c2435 Soft fork logic for BIP68 (BtcDrak)
478fba6 Soft fork logic for BIP113 (BtcDrak)
65751a3 Add CHECKSEQUENCEVERIFY softfork through BIP9 (Pieter Wuille)
2016-03-30 18:59:39 +02:00
Wladimir J. van der Laan
d8e862a5a7
Merge #7744: test_framework: detect failure of bitcoind startup
018b60c test_framework: detect failure of bitcoind startup (Wladimir J. van der Laan)
2016-03-29 17:16:30 +02:00
MarcoFalke
faa9f01461 [qa] Don't run pruning.py twice 2016-03-29 16:49:45 +02:00
Wladimir J. van der Laan
b35a591793
Merge #7558: [RPC] Add import/removeprunedfunds rpc call
f1bb13c Added companion removeprunedfunds call. (instagibbs)
7eb7029 Add importprunedfunds rpc call (instagibbs)
2016-03-29 11:15:02 +02:00
MarcoFalke
fa3fafc960 [qa] wallet: Wait for reindex to catch up 2016-03-28 21:47:42 +02:00
Luke Dashjr
e7e48ba66c test_framework: Py3.4 compat: Specify timeout parameter by name
Changed in version 3.4: The strict parameter was removed. HTTP 0.9-style
“Simple Responses” are not longer supported.
(https://docs.python.org/3/library/http.client.html)

Source: 7ebeebb4f6
2016-03-28 12:30:48 +02:00
Wladimir J. van der Laan
d7b80b54fb test_framework: Avoid infinite loop in encoding Decimal
Avoid an infinite loop in encoding, by ensuring EncodeDecimal
returns a string. round(Decimal) used to convert it to
float, but it no longer does in python 3.x. Strings are
supported since #6380, so just use that.
2016-03-28 12:20:13 +02:00
Wladimir J. van der Laan
018b60c5ea test_framework: detect failure of bitcoind startup
Replace the `bitcoin-cli -rpcwait` after spawning bitcoind
with our own loop that detects when bitcoind exits prematurely.

And if one node fails to start, stop the others.

This prevents a hang in such a case (see #7463).
2016-03-26 08:10:07 +01:00
instagibbs
f1bb13c93d Added companion removeprunedfunds call. 2016-03-23 10:40:38 -04:00
instagibbs
7eb702954e Add importprunedfunds rpc call 2016-03-23 10:40:38 -04:00
Wladimir J. van der Laan
3bdc583b3f
Merge #7715: Fix calculation of balances and available coins.
68d4282 Fix calculation of balances and available coins. (Alex Morcos)
2016-03-23 15:09:02 +01:00
Wladimir J. van der Laan
e2ebd259fb
Merge #7671: [RPC] Add generatetoaddress rpc to mine to an address
d5c5c71 RPC tests for generatetoaddress (Andrew C)
fe00ca7 Create generatetoaddress rpc (Andrew C)
2016-03-23 13:24:53 +01:00
Alex Morcos
b536a6fc83 Add p2p test for feefilter 2016-03-21 10:46:25 -04:00
Alex Morcos
5fa66e4682 Create SingleNodeConnCB class for RPC tests 2016-03-21 10:46:25 -04:00
Andrew C
d5c5c713e6 RPC tests for generatetoaddress
Adds two RPC tests for the generatetoaddress RPC, one in the wallet, and one when the wallet is disabled.

The wallet RPC Test mines Bitcoin to another node's address and checks that that node has received the Bitcoin.

The RPC test without the wallet mines Bitcoin to an arbitrary address and checks that it works. It then mines to an arbitrary invalid address and checks that that fails.
2016-03-21 10:22:29 -04:00
NicolasDorier
71527a0f31 Test of BIP9 fork activation of mtp, csv, sequence_lock 2016-03-21 09:07:34 +00:00
MarcoFalke
fab3890156 [qa] rpc-test: Normalize assert() 2016-03-19 19:07:08 +01:00
Alex Morcos
68d4282774 Fix calculation of balances and available coins.
No longer consider coins which aren't in our mempool.

Add test for regression in abandonconflict.py
2016-03-18 09:56:30 -04:00
Wladimir J. van der Laan
29e1131c46
Merge #7702: [qa] Add tests verifychain, lockunspent, getbalance, listsinceblock
fa4a522 [qa] Add tests verifychain, lockunspent, getbalance, listsinceblock (MarcoFalke)
2016-03-18 12:23:55 +01:00
Wladimir J. van der Laan
efde86b4aa
Merge #7709: Tests: fix missing import in mempool_packages
e38781d Tests: fix missing import in mempool_packages (Suhas Daftuar)
2016-03-18 11:09:03 +01:00
Alex Morcos
19d73d540c Add RPC test for BIP 68/112/113 soft fork.
This RPC test will test both the activation mechanism of the first versionbits soft fork as well as testing many code branches of the consensus logic for BIP's 68, 112, and 113.
2016-03-18 08:09:06 +00:00
Wladimir J. van der Laan
73b7eb501e
Merge #7575: Minimal BIP9 implementation
8c74ced RPC test for BIP9 warning logic (Suhas Daftuar)
7870deb Test versionbits deployments (Suhas Daftuar)
532cbb2 Add testing of ComputeBlockVersion (Suhas Daftuar)
d23f6c6 Softfork status report in RPC (Pieter Wuille)
732e774 Versionbits tests (Pieter Wuille)
6851107 BIP9 Implementation (Pieter Wuille)
2016-03-18 08:50:43 +01:00
Suhas Daftuar
e38781da40 Tests: fix missing import in mempool_packages 2016-03-17 20:23:29 -04:00
MarcoFalke
fa4a522541 [qa] Add tests verifychain, lockunspent, getbalance, listsinceblock 2016-03-17 11:21:34 +01:00
Suhas Daftuar
ec143391ef Tests: make prioritise_transaction.py more robust 2016-03-16 12:52:04 -04:00
Wladimir J. van der Laan
3d0dfdbf9f
Merge #7684: [qa] Extend tests
fad8cfb [qa] mininode: Add and use CONSTs (MarcoFalke)
fa8cd46 [qa] Move create_tx() to util.py (MarcoFalke)
fad7dc8 [qa] wallet: speed up tests (MarcoFalke)
fa3a81a [tests] Extend util_ParseMoney test case (MarcoFalke)
2016-03-16 17:32:05 +01:00
Suhas Daftuar
8c74cedef5 RPC test for BIP9 warning logic 2016-03-16 15:09:39 +01:00
MarcoFalke
fad8cfb893 [qa] mininode: Add and use CONSTs 2016-03-14 16:45:18 +01:00
MarcoFalke
fa8cd46f39 [qa] Move create_tx() to util.py 2016-03-14 16:45:04 +01:00
MarcoFalke
fad7dc8a6c [qa] wallet: speed up tests 2016-03-14 16:20:59 +01:00
Elliot Olds
2ab835ae6c Check if zmq is installed in tests, update docs
If ZMQ is enabled, check whether it's installed before running ZMQ tests.
If it isn't, disable ZMQ and print a warning.

Also add dependency info to test docs, so users know ZMQ is required
before running tests, and so they know how to install it.

When following the build instructions before this change then trying
to run the RPC tests, a unix user would get an error when python
tried to import zmq.

There may be other dependencies that should be added to the docs,
particularly ones for non-unix systems. This is the only unlisted
dependency I encountered using linux.
2016-03-10 15:41:13 -08:00
MarcoFalke
fa97f95c15 [doc] Fix markdown 2016-03-01 14:35:19 +01:00
BtcDrak
6ba8b2a6c4 Add bip68-sequence.py to extended rpc tests 2016-02-13 15:42:24 +00:00
Wladimir J. van der Laan
80d1f2e483
Merge #7184: Implement SequenceLocks functions for BIP 68
b043c4b fix sdaftuar's nits again (Alex Morcos)
a51c79b Bug fix to RPC test (Alex Morcos)
da6ad5f Add RPC test exercising BIP68 (mempool only) (Suhas Daftuar)
c6c2f0f Implement SequenceLocks functions (Alex Morcos)
2016-02-12 17:03:46 +01:00
Alex Morcos
a51c79be6b Bug fix to RPC test 2016-02-10 16:01:04 -05:00
Suhas Daftuar
da6ad5f684 Add RPC test exercising BIP68 (mempool only) 2016-02-10 15:35:33 -05:00
Wladimir J. van der Laan
7539f1aae3 tests: Make proxy_test work on travis servers without IPv6 2016-02-09 12:37:05 +01:00
mrbandrews
7689041c03 [rpc-tests] Change solve() to use rehash 2016-02-04 14:36:11 -05:00
Wladimir J. van der Laan
62f2d769e4
Merge #7348: MOVE ONLY: move rpc* to rpc/
d13f65e rpc: update inline comments to refer to new file paths (Daniel Cousens)
a0eaff8 move rpc* to rpc/ (Daniel Cousens)
2016-01-28 11:28:24 +01:00
Wladimir J. van der Laan
9189e30b12
Merge #7300: [trivial] Add missing copyright headers
fabcee1 Remove copyright header from autogenerated chainparamsseeds.h (MarcoFalke)
fa60d05 Add missing copyright headers (MarcoFalke)
fa7e4c0 Bump copyright headers to 2014 (MarcoFalke)
2016-01-27 12:06:31 +01:00
Wladimir J. van der Laan
02676c57ce
Merge #7236: Use createrawtx locktime parm in txn_clone
e279038 Use createrawtx locktime parm in txn_clone (Tom Harding)
2016-01-22 16:57:47 +01:00
Wladimir J. van der Laan
93b05764d5
Merge #7177: [qa] Change default block priority size to 0
fa8e2a6 [qa] Change default block priority size to 0 (MarcoFalke)
2016-01-22 13:26:49 +01:00
Daniel Cousens
d13f65ebac rpc: update inline comments to refer to new file paths 2016-01-21 08:39:04 +11:00
MarcoFalke
fa8e2a6925 [qa] Change default block priority size to 0 2016-01-20 16:58:43 +01:00
Suhas Daftuar
eaa8d2754b RPC: indicate which transactions are replaceable
Add "bip125-replaceable" output field to listtransactions and gettransaction
which indicates if an unconfirmed transaction, or any unconfirmed parent, is
signaling opt-in RBF according to BIP 125.
2016-01-19 08:30:04 -05:00
Wladimir J. van der Laan
3b43cad9d0
Merge pull request #7164: Do not download transactions during initial blockchain sync
39a525c Do not download transactions during inital sync (ptschip)
2016-01-19 12:58:15 +01:00
Wladimir J. van der Laan
21376af183
Merge pull request #7372
facd288 [qa] wallet: Print maintenance (MarcoFalke)
2016-01-18 16:24:14 +01:00
MarcoFalke
facd288c31 [qa] wallet: Print maintenance 2016-01-18 16:18:48 +01:00
Suhas Daftuar
4a04879378 Fix error in blockchain.py introduced in merge 2016-01-18 09:17:48 -05:00
Wladimir J. van der Laan
e4e77ee55d
Merge pull request #7194
135d6ec Add RPC tests for getblockheader. (James O'Beirne)
4745636 Add RPC documentation for getblockheader[chainwork]. (James O'Beirne)
16d4fce Add assert_is_hex_string and assert_is_hash_string to RPC test utils. (James O'Beirne)
2016-01-18 12:24:01 +01:00
Wladimir J. van der Laan
d3dfc6d7e1
Merge pull request #7320
fa1cb1a [qa] Test walletpassphrase timeout (MarcoFalke)
2016-01-18 10:56:00 +01:00
Wladimir J. van der Laan
3ec5bb0a6e
Merge pull request #7335
7777994 [qa] Fix pyton syntax in rpc tests (MarcoFalke)
2016-01-18 10:46:01 +01:00
Wladimir J. van der Laan
a8bd616fea
Merge pull request #7329
9d263bd Typo fixes in comments (Chris Wheeler)
2016-01-18 10:41:32 +01:00
Wladimir J. van der Laan
f2cf071e70
Merge pull request #7368
4d10d2e Eliminate race condition in mempool_packages test (Suhas Daftuar)
2016-01-18 10:26:48 +01:00
Chris Wheeler
9d263bd17c Typo fixes in comments 2016-01-17 11:03:56 +00:00
Suhas Daftuar
4d10d2e16f Eliminate race condition in mempool_packages test 2016-01-14 20:35:21 -05:00
MarcoFalke
7777994846 [qa] Fix pyton syntax in rpc tests 2016-01-13 20:31:03 +01:00
Wladimir J. van der Laan
be6d5a617d
Merge pull request #7312
d11fc16 [Wallet] Call notification signal when a transaction is abandoned (Jonas Schnelli)
df0e222 Add RPC test for abandoned and conflicted transactions. (Alex Morcos)
01e06d1 Add new rpc call: abandontransaction (Alex Morcos)
9e69717 Make wallet descendant searching more efficient (Alex Morcos)
2016-01-13 15:47:45 +01:00
Alex Morcos
df0e2226d9 Add RPC test for abandoned and conflicted transactions. 2016-01-13 08:42:04 -05:00
Wladimir J. van der Laan
c49551886a
Merge pull request #7296
bebe58b SQUASHME: Fix rpc tests that assumed fallback to minRelayTxFee (Alex Morcos)
e420a1b Add sane fallback for fee estimation (Alex Morcos)
995b9f3 Always respect GetRequiredFee for wallet txs (Alex Morcos)
2016-01-13 11:04:31 +01:00
MarcoFalke
fa1cb1ae15 [qa] Test walletpassphrase timeout 2016-01-09 16:54:04 +01:00
Wladimir J. van der Laan
93ca5a35b0
Merge pull request #7308
168915e Eliminate race condition in sendheaders.py test (Suhas Daftuar)
82a0ce0 Add race-condition debugging tool to mininode (Suhas Daftuar)
2016-01-09 16:30:33 +01:00
Suhas Daftuar
168915e6de Eliminate race condition in sendheaders.py test
Clear the last block announcement before mining new blocks.
2016-01-07 09:23:05 -05:00
Suhas Daftuar
82a0ce09b4 Add race-condition debugging tool to mininode 2016-01-07 09:22:20 -05:00
Wladimir J. van der Laan
d964b5bb1a
Merge pull request #7229
fa33d97 [walletdb] Add missing LOCK() in Recover() for dummyWallet (MarcoFalke)
fa14d99 [qa] check if wallet or blochchain maintenance changes the balance (MarcoFalke)
fa0765d [qa] Cleanup wallet.py test (MarcoFalke)
2016-01-07 09:17:11 +01:00
Alex Morcos
bebe58b748 SQUASHME: Fix rpc tests that assumed fallback to minRelayTxFee 2016-01-05 17:47:04 -05:00
MarcoFalke
fa60d05a4e Add missing copyright headers 2016-01-05 21:34:15 +01:00
Wladimir J. van der Laan
605c17844e
Merge pull request #7205
fa71669 [devtools] Use git pretty-format for year parsing (MarcoFalke)
fa24439 Bump copyright headers to 2015 (MarcoFalke)
fa6ad85 [devtools] Rewrite fix-copyright-headers.py (MarcoFalke)
2016-01-05 14:11:40 +01:00
Wladimir J. van der Laan
49a735cba4
Merge pull request #7250
fa0a974 [qa] Move gen_return_txouts() to util.py (MarcoFalke)
2016-01-04 11:58:12 +01:00
MarcoFalke
fa0a9749eb [qa] Move gen_return_txouts() to util.py 2015-12-24 12:26:36 +01:00
Wladimir J. van der Laan
97d83739db
Merge pull request #7153
7632cf6 [Tests] Refactor some shared functions (Jonas Schnelli)
110ff11 [Tests] Add mempool_limit.py test (Jonas Schnelli)
2015-12-22 14:06:50 +01:00
Wladimir J. van der Laan
595f93977c
Merge pull request #7213
37d271d Rename OP_NOP2 to OP_CHECKLOCKTIMEVERIFY. (mb300sd)
2015-12-22 11:37:11 +01:00
Wladimir J. van der Laan
ed095f0407
Merge pull request #7226
9b41a5f Add more tests to p2p-fullblocktest (Suhas Daftuar)
2015-12-22 09:54:27 +01:00
Wladimir J. van der Laan
c24337964f
Merge pull request #7062
901b01d Remove GetMinRelayFee (Suhas Daftuar)
27fae34 Use fee deltas for determining mempool acceptance (Suhas Daftuar)
9ef2a25 Update replace-by-fee logic to use fee deltas (Suhas Daftuar)
eb30666 Fix mempool limiting for PrioritiseTransaction (Suhas Daftuar)
2015-12-21 17:14:13 +01:00
Tom Harding
e279038e84 Use createrawtx locktime parm in txn_clone
Streamlines the test and serves as a test of the createrawtransaction
locktime parameter.
2015-12-20 15:41:20 -08:00
MarcoFalke
fa14d99484 [qa] check if wallet or blochchain maintenance changes the balance 2015-12-18 12:37:29 +01:00
MarcoFalke
fa0765d433 [qa] Cleanup wallet.py test
* Remove outdated comment
* Remove unneeded 0s
* Remove semicolons
2015-12-18 12:37:08 +01:00
Suhas Daftuar
9b41a5fba2 Add more tests to p2p-fullblocktest 2015-12-18 05:39:31 -05:00
ptschip
39a525c21f Do not download transactions during inital sync 2015-12-15 07:41:44 -08:00
mb300sd
37d271d7cc Rename OP_NOP2 to OP_CHECKLOCKTIMEVERIFY. 2015-12-15 02:01:45 -05:00
James O'Beirne
135d6ec8ce Add RPC tests for getblockheader. 2015-12-14 10:40:15 -08:00
James O'Beirne
16d4fce0b2 Add assert_is_hex_string and assert_is_hash_string to RPC test utils. 2015-12-14 10:40:11 -08:00
Wladimir J. van der Laan
83cdcbdca4 test: don't override BITCOIND and BITCOINCLI if they're set
In rpc-tests.py, don't override BITCOIND and BITCOINCLI if they're
already set. Makes it possible to run the tests with either another tree
or the GUI.
2015-12-14 14:18:12 +01:00
Jonas Schnelli
979698c171
[RPC-Tests] add option to run rpc test over QT clients 2015-12-14 12:54:55 +01:00