Commit Graph

551 Commits

Author SHA1 Message Date
Tim Flynn
9a8f2e4507 V0.12.1.x governance bugfix 1 (#952)
* Fix governance message handling bug

* Added a 2 second delay to the addressindex blockchain reorganization test
2016-08-20 20:51:01 +04:00
Tim Flynn
123aa04d5b Merge #950: V0.12.1.x governance pr 2
13316a4 Return true from IsBlockValueValid when masternode data is not synced
  - This restores behavior very close to that in 12.0
  - Needed to prevent the forking problem currently being seen on
    testnet between online and offline nodes
  - This is expected to be a temporary fix while we develop a
    long-term solution for this problem

427086e Restore miner payments for superblocks

794b90d Added IsSynced field to JSON output of mnsync status RPC command
  - This is needed to allow fixing RPC tests so that they wait until
    the nodes are fully synced before performing tests

a9ddf6f Wait for nodes to sync masternode data during p2p-fullblocktest
2016-08-19 05:53:49 -06:00
Evan Duffield
338b0ce934 Merge pull request #914 from UdjinM6/dashBitcore1
Merge Bitpay's version of Bitcoin Core (additional indexes)
2016-08-08 12:53:34 -07:00
Evan Duffield
dd539c3d69 Merge pull request #905 from UdjinM6/dashcoreDatadir
Change default datadir
2016-08-08 12:42:35 -07:00
UdjinM6
3e0eee4c84 Merge #921: Fix project name Dash -> Dash Core
ef1612a Fix project name Dash -> Dash Core
2016-07-29 07:30:19 +02:00
UdjinM6
1e1a02be36 fix tests 2016-07-19 11:15:54 +03:00
UdjinM6
48d0edcbdf Merge remote-tracking branch 'bitpay/0.12.1-bitcore' into dashBitcore1
Resolved Conflicts:
	.travis.yml (ignoring changes, leaving dash version)
	src/Makefile.am
	src/main.cpp
	src/main.h
	src/rpcclient.cpp
	src/rpcserver.cpp
	src/script/script.cpp
	src/script/script.h
2016-07-19 08:49:28 +03:00
BtcDrak
c4e5688230 Rename NOP3 to CHECSEQUENCEVERIFY in rpc tests 2016-07-08 11:44:16 +01:00
BtcDrak
ac5577b512 Rename OP_NOP3 to OP_CHECKSEQUENCEVERIFY 2016-07-08 11:44:16 +01:00
UdjinM6
dd5bd97561 change default datadir to DashCore(Win,Mac)/.dashcore(Linux) as discussed in #898 2016-07-06 23:26:21 +03:00
Holger Schinzel
f4e4dd65e7 Tag 0.12.1 final
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEbBAABCgAGBQJXD/i3AAoJEHSBCwEjRsmmOHsH+L5eRpiPeLhrDYyBFbp9RFKU
 TztyoeKAM4llEPmk6vAawgSL8HNY4va6lbY84sDfvCdLJqCxVR7MyiuQ4AQPXG4R
 Ke5DJ/G/K4ngyqruCBsSh2RJdVDrbE3zCmjN5gxPxrNKpi+mXs//A6gjvfxn4U1F
 WZepN3FzNFcqFG/ndKxptMYZoIuiK9JIhK7V/ksFKRPlUhipa1jh5sIWvCeFjiLT
 Wt8wGlHPHDFsPJW1o7EWMTHRhNCVqYhMDU7GT6FixIJFRGANIGlwfIUuqqUt0sil
 7YWIwD/+ai3dfeODazauqJAOEBXjoWCkuXn9IN/VhtvHOFR6AZO2aljS9ks6Cw==
 =6vRi
 -----END PGP SIGNATURE-----

Merge bitcoin tag 'v0.12.1' into dash v0.12.1.x

Merging Bitcoin 0.12.1 into Dash 0.12.1.x
2016-07-04 11:20:16 +02:00
Braydon Fuller
d28f886684 Revert "rpc: add input confirmations to getrawtransaction" 2016-06-15 20:22:35 -04:00
Chris Kleeschulte
645ae33bec Merge pull request #20 from braydonf/0.12.1-bitcore-inputconfs
rpc: add input confirmations to getrawtransaction
2016-06-15 13:36:31 -04:00
Braydon Fuller
c01f78375e mempool: same address and index for an input and output bug
fixes a bug that would happen when an output would match an input with
the same address and index, and would lead to the outputs not appearing
in results.
2016-06-13 11:23:30 -04:00
Braydon Fuller
4dcf3e821c mempool: fix bug with mempool address index iteration
fixes a minor bug where iteration would not end when there are matching
hashes for a p2sh and p2pkh address, and would return results for
both addresses
2016-06-13 11:23:30 -04:00
Braydon Fuller
809a8abff6 tests: expanded address index mempool testing 2016-06-13 11:23:30 -04:00
Braydon Fuller
fea930aa8c rpc: add input confirmations to getrawtransaction 2016-06-13 11:15:34 -04:00
MarcoFalke
dc38a53d56 [qa] Move create_tx() to util.py
(cherry picked from commit fa8cd46f39)
2016-06-10 00:33:26 +02:00
MarcoFalke
c0fe8b5c7d [qa] smartfees: Properly use ordered dict
Github-Pull: #7980
Rebased-From: fa17f93fbd 43bbcd0753
2016-06-10 00:25:22 +02:00
MarcoFalke
493b89e959 [qa] test_framework: Properly print exceptions and assert empty dict
Github-Pull: #7951
Rebased-From: 5555528b47 fada064f67
2016-06-10 00:22:41 +02:00
Suhas Daftuar
7a8348994b Tests: Fix deserialization of reject messages
Github-Pull: #7912
Rebased-From: 807fa47a1e
2016-06-10 00:20:33 +02:00
MarcoFalke
e0b1bbeae0 [qa] pull-tester: Don't mute zmq ImportError
Github-Pull: #7851
Rebased-From: fa05e22e91 faa4f22342 fae1f4ebfe
2016-06-10 00:11:51 +02:00
Elliot Olds
697ed8c827 Check if zmq is installed in tests, update docs
Github-Pull: #7635
Rebased-From: 2ab835ae6c
2016-06-10 00:07:50 +02:00
Wladimir J. van der Laan
d5a9de352c tests: Check Content-Type header returned from RPC server
Github-Pull: #7833
Rebased-From: 5078ca4543
2016-06-10 00:03:57 +02:00
MarcoFalke
ed2f0e3ac1 [qa] maxblocksinflight: Actually enable test
Github-Pull: #7803
Rebased-From: fac724c78f
2016-06-10 00:01:51 +02:00
MarcoFalke
3036282c7a [qa] httpbasics: Actually test second connection
Github-Pull: #7802
Rebased-From: fa24456d0c
2016-06-10 00:01:08 +02:00
Wladimir J. van der Laan
afbc000b0b test_framework: python3.4 authproxy compat
Github-Pull: #7751
Rebased-From: d7b80b54fb e7e48ba66c
2016-06-09 23:55:27 +02:00
Wladimir J. van der Laan
80b6bfaeaa test_framework: detect failure of bitcoind startup
Github-Pull: #7744
Rebased-From: 018b60c5ea
2016-06-09 23:51:53 +02:00
Alex Morcos
4ffd309b25 Create SingleNodeConnCB class for RPC tests
(cherry picked from commit 5fa66e4682)
2016-06-09 23:44:55 +02:00
Braydon Fuller
55fa4798eb main: spentindex for the mempool 2016-06-02 12:15:59 -04:00
Braydon Fuller
4c7dc871d1 rpc: add input value and address to getrawtransaction if spentindex enabled 2016-06-02 12:15:38 -04:00
Braydon Fuller
87dfd13694 rpc: include satoshis in verbose raw transaction 2016-06-02 12:15:38 -04:00
Braydon Fuller
1c022b9fc2 rpc: add blockindex to getaddressdeltas method
for the purposes of secondary sorting by block order
2016-06-02 12:15:37 -04:00
Wladimir J. van der Laan
9c5b709c6f tests: Make proxy_test work on travis servers without IPv6
Github-Pull: #7489
Rebased-From: 7539f1aae3
Cherry-picked-From: 9ca957bcd4
2016-06-02 12:15:37 -04:00
Braydon Fuller
98f8fdddc8 rpc: optional "start" and "end" params for getaddressdeltas 2016-06-02 12:15:37 -04:00
Braydon Fuller
8391ff0b0a rpc: include base58check encoded address in results 2016-06-02 12:15:37 -04:00
Braydon Fuller
28f9ae7853 test: test for getaddressmempool prevhash and prevout values 2016-06-02 12:15:37 -04:00
Braydon Fuller
94ea69a4d5 rpc: fix issue with querying txids by block heights 2016-06-02 12:15:37 -04:00
Braydon Fuller
96d8307b55 rpc: query txids for addresses within block height range 2016-06-02 12:15:37 -04:00
Braydon Fuller
abe40712ce rpc: include height in spentinfo 2016-06-02 12:15:37 -04:00
Braydon Fuller
b752fbe09e rpc: include spent info if spentindex enabled with getrawtransaction verbose 2016-06-02 12:15:37 -04:00
Braydon Fuller
e3d9207e5a main: add spentindex option 2016-06-02 12:15:37 -04:00
Braydon Fuller
b66eff47cf main: mempool address index 2016-06-02 12:15:14 -04:00
Braydon Fuller
1bd65a5c4b main: sort address index utxos by height 2016-06-02 12:15:14 -04:00
Braydon Fuller
d0483c9aa0 main: remove spent address utxo indexes 2016-06-02 12:15:14 -04:00
Braydon Fuller
24894cb748 main: update unspent address index during reorgs 2016-06-02 12:15:14 -04:00
Braydon Fuller
0b42ba227a main: index unspent outputs by address 2016-06-02 12:15:14 -04:00
Braydon Fuller
186e11fde7 main: update address index during reorgs 2016-06-02 12:15:14 -04:00
Braydon Fuller
cad092aebb main: get address deltas between range of block heights 2016-06-02 12:15:14 -04:00
Braydon Fuller
206882cd4b main: fixed bug with overlapping address index keys
There was a bug where the spending address index could have the same key
as the receiving address index if the input and output indexes matched. This lead
to the output always overwriting the input index leading to incorrect balances
with missing spent amounts. This patch separates the two so that they have unique
keys so balances will be correctly calculated.
2016-06-02 12:15:14 -04:00
Braydon Fuller
f76c2585f0 test: added to for balance after spending 2016-06-02 12:15:13 -04:00
Braydon Fuller
935ca8f832 main: add block timestamp index 2016-06-02 12:15:13 -04:00
Braydon Fuller
5bb6d69ff8 rpc: added getaddressbalance method using addressindex 2016-06-02 12:15:13 -04:00
Braydon Fuller
5b5f3f7d00 rpc: sort txids by height for multiple addresses 2016-06-02 12:15:13 -04:00
Braydon Fuller
f4d11ffc7c rpc: query for multiple addresses txids 2016-06-02 12:15:13 -04:00
Braydon Fuller
2500d1d115 rpc: update getaddresstxids for uniqueness 2016-06-02 12:15:13 -04:00
Braydon Fuller
fcac6bcdc8 rpc: fix issue for querying txids for p2sh addresses 2016-06-02 12:15:13 -04:00
Braydon Fuller
18ea599a71 main: index address index sorted by height 2016-06-02 12:15:13 -04:00
Braydon Fuller
4d46195634 qa: started test for addressindex rpc getaddresstxids 2016-06-02 12:15:13 -04:00
Wladimir J. van der Laan
bf35424406 test: test utf-8 for labels in wallet 2016-05-31 04:31:20 +03:00
Wladimir J. van der Laan
5e02722d56 test: add ensure_ascii setting to AuthServiceProxy
Add a setting ensure_ascii to AuthServiceProxy. This setting,
defaulting to True (backwards compatible),
is passed through to json.dumps. If set to False, non-ASCII characters
>0x80 are not escaped. This is useful for testing server
input processing, as well as slightly more bandwidth friendly in case of
heavy unicode usage.
2016-05-31 04:31:15 +03:00
UdjinM6
6698d2ce89 Re-enable FillBlockPayee for mnpayments, fix CreateNewBlock calculations (#811)
* Reenable FillBlockPayee for mnpayments, fix CreateNewBlock calculations

* revert blockchain.py fix #772
2016-05-27 00:04:15 +02:00
UdjinM6
d11c6e7151 fix blockchain.py 2016-05-10 16:13:37 +03:00
UdjinM6
a4c098141a fix tests to follow #767 2016-05-10 16:12:21 +03:00
ptschip
90955940d5 Do not download transactions during inital sync
Github-Pull: #7164
Rebased-From: 39a525c21f
2016-04-27 22:34:47 +02:00
Wladimir J. van der Laan
9ca957bcd4 tests: Make proxy_test work on travis servers without IPv6
Github-Pull: #7489
Rebased-From: 7539f1aae3
2016-04-27 12:29:56 +02:00
MarcoFalke
89ae85484c
Merge #7811: [0.12.2] qa Backports
6862627 Add listunspent() test for spendable/unspendable UTXO (Joao Fonseca)
28ba22c [qa] Remove misleading "errorString syntax" (MarcoFalke)
f1f1b82 [qa] py2: Unfiddle strings into bytes explicitly (MarcoFalke)
c0d9e31 Tests: make prioritise_transaction.py more robust (Suhas Daftuar)
ff9b436 [qa] Bug fixes and refactor (MarcoFalke)
b1dd64b [qa] wallet: Wait for reindex to catch up (MarcoFalke)
f23cb7c [qa] Add tests verifychain, lockunspent, getbalance, listsinceblock (MarcoFalke)
3316552 [qa] Test walletpassphrase timeout (MarcoFalke)
6aae129 [qa] wallet: Print maintenance (MarcoFalke)
ad8c743 [qa] Extend tests (MarcoFalke)
d89fbfe [qa] rpc-test: Normalize assert() (MarcoFalke)
2016-04-25 14:59:52 +02:00
Joao Fonseca
6862627ce6 Add listunspent() test for spendable/unspendable UTXO
Github-Pull: #7822
Rebased-From: fa942c755a 5d217decc1
2016-04-19 16:37:14 +02:00
MarcoFalke
28ba22c202 [qa] Remove misleading "errorString syntax"
Github-Pull: #7801
Rebased-From: ffff866da8
2016-04-19 16:36:41 +02:00
MarcoFalke
f1f1b82033 [qa] py2: Unfiddle strings into bytes explicitly
Github-Pull: #7853
Rebased-From: faa41ee204, fa7abe0a00

 Conflicts:
	qa/rpc-tests/invalidtxrequest.py
	qa/rpc-tests/p2p-feefilter.py
	qa/rpc-tests/proxy_test.py
	qa/rpc-tests/test_framework/mininode.py
	qa/rpc-tests/test_framework/netutil.py
	src/test/bctest.py
2016-04-15 09:55:12 +02:00
Suhas Daftuar
c0d9e31611 Tests: make prioritise_transaction.py more robust
Github-Pull: #7697
Rebased-From: ec143391ef
2016-04-10 11:46:16 +02:00
Suhas Daftuar
46898e7e94
Version 2 transactions remain non-standard until CSV activates
Before activation, such transactions might not be mined, so don't
allow into the mempool.

- Tests: move get_bip9_status to util.py

- Test relay of version 2 transactions

Github-Pull: #7835
Rebased-From: e4ba9f6b04 5cb1d8a207 da5fdbb3a2
2016-04-08 14:22:04 +02:00
MarcoFalke
ff9b436163 [qa] Bug fixes and refactor
Github-Pull: #7778
Rebased-From: fa524d9ddb fa2cea163b faaa3c9b65 444480649f
2016-04-05 11:55:07 +02:00
MarcoFalke
b1dd64bffe [qa] wallet: Wait for reindex to catch up
Github-Pull: #7757
Rebased-From: fa3fafc960
2016-04-05 11:53:51 +02:00
MarcoFalke
f23cb7c944 [qa] Add tests verifychain, lockunspent, getbalance, listsinceblock
Github-Pull: #7702
Rebased-From: fa4a522541
2016-04-05 11:53:50 +02:00
MarcoFalke
331655253d [qa] Test walletpassphrase timeout
Github-Pull: #7320
Rebased-From: fa1cb1ae15
2016-04-05 11:53:50 +02:00
MarcoFalke
6aae129a60 [qa] wallet: Print maintenance
Github-Pull: #7372
Rebased-From: facd288c31
2016-04-05 11:53:50 +02:00
MarcoFalke
ad8c743421 [qa] Extend tests
Github-Pull: #7684
Rebased-From: fa3a81af18 fad7dc8a6c fad8cfb893
2016-04-05 11:53:50 +02:00
MarcoFalke
d89fbfe899 [qa] rpc-test: Normalize assert()
Github-Pull: #7720
Rebased-From: fab3890156
2016-04-05 11:53:50 +02:00
Wladimir J. van der Laan
834aaef7bd
Merge #7543: [0.12] Backport BIP9, BIP68 and BIP112 with softfork
640666b [qa] rpc-tests: Properly use integers, floats (BtcDrak)
c270b62 Fix comments in tests (BtcDrak)
caf1381 Add bip68-sequence.py to extended rpc tests (BtcDrak)
26e9a05 Test of BIP9 fork activation of mtp, csv, sequence_lock (NicolasDorier)
3a99feb Add RPC test for BIP 68/112/113 soft fork. (Alex Morcos)
159ee3d Policy: allow transaction version 2 relay policy. (BtcDrak)
9713ed3 Soft fork logic for BIP68 (BtcDrak)
648be9b Soft fork logic for BIP113 (BtcDrak)
ee40924 Add CHECKSEQUENCEVERIFY softfork through BIP9 (Pieter Wuille)
6ff0b9f RPC test for BIP9 warning logic (Suhas Daftuar)
0710b30 Test versionbits deployments (Suhas Daftuar)
8ebc6f2 Add testing of ComputeBlockVersion (Suhas Daftuar)
0bdaacd Softfork status report in RPC (Pieter Wuille)
5f90d4e Versionbits tests (Pieter Wuille)
6f83cf2 BIP9 Implementation (Pieter Wuille)
ade85e1 Add LockPoints (Alex Morcos)
c8d309e Code style fix. (BtcDrak)
6170506 Separate CheckLockTime() and CheckSequence() logic (BtcDrak)
c0c5e09 BIP112: Implement CHECKSEQUENCEVERIFY (Mark Friedenbach)
197c376 fix sdaftuar's nits again (Alex Morcos)
0a79c04 Bug fix to RPC test (Alex Morcos)
0d09af7 Add RPC test exercising BIP68 (mempool only) (Suhas Daftuar)
15ba08c Implement SequenceLocks functions (Alex Morcos)
2016-04-04 13:08:29 +02:00
BtcDrak
640666b22f [qa] rpc-tests: Properly use integers, floats
partial backport from #7778 using fa2cea1
2016-04-03 18:06:06 +01:00
BtcDrak
c270b62cc2 Fix comments in tests 2016-03-31 10:28:57 +01:00
BtcDrak
caf138122d Add bip68-sequence.py to extended rpc tests 2016-03-29 10:34:07 +01:00
NicolasDorier
26e9a05cc3 Test of BIP9 fork activation of mtp, csv, sequence_lock 2016-03-26 04:05:42 +00:00
Alex Morcos
19866c1ffc
Fix calculation of balances and available coins.
No longer consider coins which aren't in our mempool.

Add test for regression in abandonconflict.py

Github-Pull: #7715
Rebased-From: 68d4282774
2016-03-23 15:11:22 +01:00
Alex Morcos
3a99feba85 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 09:28:41 +00:00
Suhas Daftuar
6ff0b9f96e RPC test for BIP9 warning logic 2016-03-18 09:14:53 +00:00
Alex Morcos
0a79c04af3 Bug fix to RPC test 2016-03-18 09:14:52 +00:00
Suhas Daftuar
0d09af77b7 Add RPC test exercising BIP68 (mempool only) 2016-03-18 09:14:52 +00:00
MarcoFalke
f04f4fd2ee
[doc/log] Fix markdown syntax and line terminate LogPrint
- Fix doxygen comment for payTxFee
- [doc] Fix markdown
- Make sure LogPrintf strings are line-terminated

Github-Pull: #7617
Rebased-From: fa06ce0949 fa97f95c15 fa26652459
2016-03-11 09:44:17 +01:00
UdjinM6
31ff9c2ff8 Fix rpc-tests, relies on PRs #715-#719
Closes #720
2016-03-06 18:16:02 +01:00
UdjinM6
b3d1140800 more bitcoin->dash 2016-03-04 12:09:03 +03:00
UdjinM6
6ec64f8ff6 Merge remote-tracking branch 'bitcoin/0.12' into mergebtc0.12 2016-02-21 04:09:11 +03:00
mrbandrews
947c4ff724
[rpc-tests] Change solve() to use rehash
Github-Pull: #7468
Rebased-From: 7689041c03
2016-02-10 20:39:52 +01:00
UdjinM6
a5ac60b868 Merge remote-tracking branch 'bitcoin/0.12' into HEAD
+ merge fixes
+ keepass on evhttp
2016-02-06 16:48:04 +03:00
Holger Schinzel
756c2d7a0d make RPC tests pass 2016-01-30 12:55:07 +01:00
Holger Schinzel
66ce5f1d60 fix test suite 2016-01-29 23:35:23 +01:00
Suhas Daftuar
e25b158ab8
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.

Github-Pull: #7286
Rebased-From: eaa8d2754b
2016-01-20 13:50:58 +01:00
Suhas Daftuar
51af87f078
Fix error in blockchain.py introduced in merge
Github-Pull: #7373
Rebased-From: 4a04879378
2016-01-18 16:01:31 +01:00
James O'Beirne
351ffd8482
Fix help, add RPC tests for getblockheader
- Add assert_is_hex_string and assert_is_hash_string to RPC test utils.
- Add RPC documentation for getblockheader[chainwork].
- Add RPC tests for getblockheader.

Github-Pull: #7194
Rebased-From: 16d4fce0b2 4745636126 135d6ec8ce
2016-01-18 12:25:50 +01:00
MarcoFalke
d8b062d752
[qa] Fix pyton syntax in rpc tests
Github-Pull: #7335
Rebased-From: 7777994846
2016-01-18 10:46:46 +01:00
Wladimir J. van der Laan
1709cc5cb0
Merge pull request #7338
f17b00b release-notes: Combine NOP2->CLTV asm change into "RPC: Low-level API changes" section (Luke Dashjr)
e20704b Replace some instances of formatWithUnit with formatHtmlWithUnit (fanquake)
6f8346d qt5: Use the fixed font the system recommends (MarcoFalke)
605de4a Rename OP_NOP2 to OP_CHECKLOCKTIMEVERIFY. (mb300sd)
6191a9b [RPC-Tests] add option to run rpc test over QT clients (Jonas Schnelli)
6307beb Note that reviewers should mention the commit hash of the commits they reviewed. (Patrick Strateman)
6092ff2 Set link from http:// to https:// (Suriyaa Kudo)
2016-01-18 10:36:57 +01:00
Suhas Daftuar
1488fc8eac
Eliminate race condition in mempool_packages test
Github-Pull: #7368
Rebased-From: 4d10d2e16f
2016-01-18 10:29:32 +01:00
Cory Fields
5cdb69ca91 rpc-tests: re-enable rpc-tests for Windows 2016-01-16 17:04:06 +01:00
mb300sd
605de4a88a Rename OP_NOP2 to OP_CHECKLOCKTIMEVERIFY.
Github-Pull: #7213
Rebased-From: 37d271d7cc
2016-01-13 21:25:36 +00:00
Jonas Schnelli
6191a9b628 [RPC-Tests] add option to run rpc test over QT clients
Github-Pull: #7068
Rebased-From: 979698c171
2016-01-13 21:25:35 +00:00
Alex Morcos
fd4bd5009e
Add RPC call abandontransaction
- Make wallet descendant searching more efficient
- Add new rpc call: abandontransaction

Unconfirmed transactions that are not in your mempool either due to eviction or other means may be unlikely to be mined.  abandontransaction gives the wallet a way to no longer consider as spent the coins that are inputs to such a transaction.  All dependent transactions in the wallet will also be marked as abandoned.

- Add RPC test for abandoned and conflicted transactions.
- [Wallet] Call notification signal when a transaction is abandoned

Github-Pull: #7312
Rebased-From: 9e69717254 01e06d1fa3 df0e2226d9 d11fc1695c
2016-01-13 15:55:00 +01:00
Alex Morcos
a36d79bfe2
Add sane fallback for fee estimation
- Always respect GetRequiredFee for wallet txs
- Add sane fallback for fee estimation
- SQUASHME: Fix rpc tests that assumed fallback to minRelayTxFee

Add new commandline option "-fallbackfee" to use when fee estimation does not have sufficient data.

Github-Pull: #7296
Rebased-From: 995b9f3 e420a1b bebe58b
2016-01-13 11:06:17 +01:00
Suhas Daftuar
d513405cb7
[Tests] Eliminate intermittent failures in sendheaders.py
- Add race-condition debugging tool to mininode
- Eliminate race condition in sendheaders.py test

Clear the last block announcement before mining new blocks.

Github-Pull: #7308
Rebased-From: 82a0ce09b4 168915e6de
2016-01-09 16:32:30 +01:00
MarcoFalke
1ed938b5fe
[qa] wallet: Check if maintenance changes the balance
- [qa] Cleanup wallet.py test
- [qa] check if wallet or blochchain maintenance changes the balance
- [walletdb] Add missing LOCK() in Recover() for dummyWallet

Github-Pull: #7229
Rebased-From: fa0765d433 fa14d99484 fa33d9740c
2016-01-07 09:19:25 +01:00
MarcoFalke
333e1eaeea
Bump copyright headers to 2015
- Bump copyright headers to 2015
- [devtools] Rewrite fix-copyright-headers.py
- [devtools] Use git pretty-format for year parsing

Github-Pull: #7205
Rebased-From: fa6ad855e9 fa24439ff3 fa71669452
2016-01-05 14:13:33 +01:00
MarcoFalke
bdd0f9e286
[qa] Move gen_return_txouts() to util.py
Github-Pull: #7250
Rebased-From: fa0a9749eb
2016-01-04 11:58:36 +01:00
Wladimir J. van der Laan
453c56701a
tests: Disable Tor interaction
This is unnecessary during the current tests (any test for Tor
interaction can explicitly enable it) and interferes with the proxy
test.

Github-Pull: #7170
Rebased-From: 4c40ec0451
2015-12-22 16:45:56 +01:00
Jonas Schnelli
9ef7c54ef0 [Tests] Add mempool_limit.py test
- [Tests] Add mempool_limit.py test
- [Tests] Refactor some shared functions

Github-Pull: #7153
Rebased-From: 110ff1142c 7632cf689a
2015-12-22 14:08:22 +01:00
Suhas Daftuar
301f16ad1c
Add more tests to p2p-fullblocktest
Github-Pull: #7226
Rebased-From: 9b41a5fba2
2015-12-22 09:54:52 +01:00
Suhas Daftuar
12c469b236
[Mempool] Fix mempool limiting and replace-by-fee for PrioritiseTransaction
1) Fix mempool limiting for PrioritiseTransaction

Redo the feerate index to be based on mining score, rather than fee.

Update mempool_packages.py to test prioritisetransaction's effect on
package scores.

2) Update replace-by-fee logic to use fee deltas

3) Use fee deltas for determining mempool acceptance

4) Remove GetMinRelayFee

One test in AcceptToMemoryPool was to compare a transaction's fee
agains the value returned by GetMinRelayFee. This value was zero for
all small transactions.  For larger transactions (between
DEFAULT_BLOCK_PRIORITY_SIZE and MAX_STANDARD_TX_SIZE), this function
was preventing low fee transactions from ever being accepted.

With this function removed, we will now allow transactions in that range
with fees (including modifications via PrioritiseTransaction) below
the minRelayTxFee, provided that they have sufficient priority.

Github-Pull: #7062
Rebased-From: eb306664e7 9ef2a25603 27fae3484c 901b01d674
2015-12-21 17:19:53 +01:00
Wladimir J. van der Laan
f3ad812208
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.

Github-Pull: #7209
Rebased-From: 83cdcbdca4
2015-12-17 10:58:33 +01:00
Wladimir J. van der Laan
44fef99e66 net: Fix sent reject messages for blocks and transactions
Ever since we #5913 have been sending invalid reject messages
for transactions and blocks.

test: Add basic test for `reject` code

Extend P2P test framework to make it possible to expect reject
codes for transactions and blocks.

Github-Pull: #7179
Rebased-From: 9fc6ed6003 20411903d7
2015-12-10 11:59:34 +01:00
Wladimir J. van der Laan
b2d7ada372
test: remove necessity to call create_callback_map
Remove necessity to call create_callback_map (as well as the function
itself) from the Python P2P test framework. Invoke the appropriate
methods directly.

- Easy to forget to call it and wonder why it doesn't work
- Simplifies the code
- This makes it easier to handle new messages in subclasses

Github-Pull: #7171
Rebased-From: 2f601d215d
2015-12-07 12:45:14 +01:00
Gregory Maxwell
f31955d9da
Replace setInventoryKnown with a rolling bloom filter.
Github-Pull: #7133
Rebased-From: ec73ef37ec e20672479e 6b849350ab b6a0da45db d41e44c9ac aa4b0c26b0
2015-12-04 15:01:09 +01:00
Peter Todd
092e9ad7d9
Remove old replace-by-fee tests
Made redundant by tests in qa/rpc-tests/replace-by-fee.py
2015-12-02 18:26:53 +08:00
Wladimir J. van der Laan
16f4a6e0fe
Merge pull request #7137
cfdc662 Explicitly set chain limits in replace-by-fee test (Suhas Daftuar)
2015-12-01 13:32:21 +01:00
Wladimir J. van der Laan
2ef5ffa59a
Merge pull request #6915
2d8860e Fix removeForReorg to use MedianTimePast (Suhas Daftuar)
b7fa4aa Don't call removeForReorg if DisconnectTip fails (Suhas Daftuar)
7e49f5f Track coinbase spends in CTxMemPoolEntry (Suhas Daftuar)
bb8ea1f removeForReorg calls once-per-disconnect-> once-per-reorg (Matt Corallo)
474b84a Make indentation in ActivateBestChainStep readable (Matt Corallo)
b0a064c Fix comment in removeForReorg (Matt Corallo)
9b060e5 Fix removal of time-locked transactions during reorg (Matt Corallo)
0c9959a Add failing test checking timelocked-txn removal during reorg (Matt Corallo)
2015-12-01 13:17:34 +01:00
Wladimir J. van der Laan
9afbd96919
Merge pull request #7022
50947ef Change default block priority size to 0 (Alex Morcos)
2015-12-01 12:39:34 +01:00
Suhas Daftuar
2b31ab90c4 Add rpc test for prioritisetransaction 2015-12-01 11:03:57 +01:00
Suhas Daftuar
6e8b07f5f3 Add rounding helper function to util.py 2015-12-01 11:03:37 +01:00
Wladimir J. van der Laan
eb3d1b3487
Merge pull request #7135
fa3a38a [qa] pull-tester: Cleanup (run keypool, tidy stdout) (MarcoFalke)
2015-12-01 09:56:09 +01:00
Wladimir J. van der Laan
30c2d8c635
Merge pull request #7105
9ac63d6 Keep track of explicit wallet conflicts instead of using mempool (Pieter Wuille)
2015-12-01 09:22:08 +01:00
Alex Morcos
50947ef23f Change default block priority size to 0
Make RPC tests have a default block priority size of 50000 (the old default) so we can still use free transactions in RPC tests.  When priority is eliminated, we will have to make a different change if we want to continue allowing free txs.
2015-11-30 16:16:24 -05:00
Gregory Maxwell
438ee59839
Merge pull request #7044
d52fbf0 Added additional config option for multiple RPC users. (Gregory Sanders)
2015-11-30 12:25:28 -08:00
Matt Corallo
0c9959a308 Add failing test checking timelocked-txn removal during reorg 2015-11-30 13:02:04 -05:00
Suhas Daftuar
cfdc66280f Explicitly set chain limits in replace-by-fee test 2015-11-30 12:35:24 -05:00
MarcoFalke
fa3a38a7f2 [qa] pull-tester: Cleanup (run keypool, tidy stdout)
* Run keypool (takes 6 seconds)
* Print duration of each rpc test
* Structure output (bold, new lines)
2015-11-30 16:01:57 +01:00
Wladimir J. van der Laan
a7751824ce
Merge pull request #7103
fa506c0 [wallet] Add rpc tests to verify fee calculations (MarcoFalke)
4b89f01 Default fPayAtLeastCustomFee to false (Ryan Havar)
2015-11-30 12:18:20 +01:00
Wladimir J. van der Laan
6fc287f2df
Merge pull request #7027
4ea1790 [qa] keypool: DRY: Use test framework (MarcoFalke)
c6973ca [qa] keypool: Fix white space to prepare transition to test framework (MarcoFalke)
2015-11-30 12:15:21 +01:00
Gregory Sanders
d52fbf00e3 Added additional config option for multiple RPC users. 2015-11-29 08:34:20 -05:00
Pieter Wuille
9ac63d6d30 Keep track of explicit wallet conflicts instead of using mempool 2015-11-29 13:24:02 +01:00
Suhas Daftuar
50262d8953 Allow block announcements with headers
This replaces using inv messages to announce new blocks, when a peer requests
(via the new "sendheaders" message) that blocks be announced with headers
instead of inv's.

Since headers-first was introduced, peers send getheaders messages in response
to an inv, which requires generating a block locator that is large compared to
the size of the header being requested, and requires an extra round-trip before
a reorg can be relayed.  Save time by tracking headers that a peer is likely to
know about, and send a headers chain that would connect to a peer's known
headers, unless the chain would be too big, in which case we revert to sending
an inv instead.

Based off of @sipa's commit to announce all blocks in a reorg via inv,
which has been squashed into this commit.

Rebased-by: Pieter Wuille
2015-11-29 11:59:23 +01:00
MarcoFalke
fa506c0c9b [wallet] Add rpc tests to verify fee calculations 2015-11-28 22:52:13 +01:00
Wladimir J. van der Laan
0e935865b9
Merge pull request #6871
63b5840 Fix usage of local python-bitcoinlib (Peter Todd)
16a2f93 Fix incorrect locking of mempool during RBF replacement (Peter Todd)
97203f5 Port test to rpc-test framework (Suhas Daftuar)
20367d8 Add test for max replacement limit (Suhas Daftuar)
73d9040 Improve RBF replacement criteria (Suhas Daftuar)
b272ecf Reject replacements that add new unconfirmed inputs (Peter Todd)
fc8c19a Prevent low feerate txs from (directly) replacing high feerate txs (Peter Todd)
0137e6f Add tests for transaction replacement (Peter Todd)
5891f87 Add opt-in full-RBF to mempool (Peter Todd)
2015-11-27 13:20:39 +01:00
Wladimir J. van der Laan
e92377fa7f
Merge pull request #6134
e304432 Pass reference to estimateSmartFee and cleanup whitespace (Suhas Daftuar)
56106a3 Expose RPC calls for estimatesmart functions (Alex Morcos)
e93a236 add estimateSmartFee to the unit test (Alex Morcos)
6303051 EstimateSmart functions consider mempool min fee (Alex Morcos)
f22ac4a Increase success threshold for fee estimation to 95% (Alex Morcos)
4fe2823 Change wallet and GUI code to use new smart fee estimation calls. (Alex Morcos)
22eca7d Add smart fee estimation functions (Alex Morcos)
2015-11-27 12:59:37 +01:00
Wladimir J. van der Laan
ed34e0577e
Merge pull request #7052
a0953cd [qa] python-bitcoinrpc is no longer a subtree (MarcoFalke)
2015-11-24 09:29:46 +01:00
Gregory Maxwell
0b0fc179ab
Merge pull request #7028
e16ee1c [qa] Extend README.md (MarcoFalke)
cc97574 [qa] Split README.md to /qa and /qa/rpc-tests (MarcoFalke)
2015-11-22 14:51:30 -08:00
Gregory Maxwell
9cdd407ca5
Merge pull request #7029
c800c95 Remove unmaintained example test script_test.py (Suhas Daftuar)
2015-11-22 14:47:40 -08:00
Peter Todd
63b5840257
Fix usage of local python-bitcoinlib
Previously was using the system-wide python-bitcoinlib, if it existed,
rather than the local copy that you check out in the README.
2015-11-20 16:23:01 -05:00
Wladimir J. van der Laan
07b770caf3
Merge pull request #7019
33b7f83 [qa] travis: cover *receivedby* rpcs (MarcoFalke)
2015-11-20 09:01:07 +01:00
MarcoFalke
a0953cdf07 [qa] python-bitcoinrpc is no longer a subtree
* Only authproxy.py is taken from the python-bitcoinrpc
2015-11-19 12:39:49 +01:00
MarcoFalke
e16ee1cd1e [qa] Extend README.md 2015-11-18 11:59:12 +01:00
MarcoFalke
cc975745d5 [qa] Split README.md to /qa and /qa/rpc-tests
+ Update with new -help message
2015-11-17 13:03:59 +01:00
Alex Morcos
56106a3300 Expose RPC calls for estimatesmart functions
Also add testing for estimatesmartfee in smartfees.py
2015-11-16 15:42:31 -05:00