Commit graph

138 commits

Author SHA1 Message Date
Suhas Daftuar 330b0f31ee [qa] p2p segwit tests
mininode now supports witness transactions/blocks, blocktools
has a helper for adding witness commitments to blocks, and script
has a function to calculate hashes for signature under sigversion
1, used by segwit.

Py3 conversion by Marco Falke

Test to make sure upgraded nodes don't ask for non-wit blocks by
Gregory Sanders.
2016-06-22 15:43:02 +02:00
Alex Morcos 4f7ff00497 [qa] Add rpc test for segwit
Amended by Pieter Wuille to use multisig 1-of-1 for P2WSH tests, and BIP9
based switchover logic.

Fixes and py3 conversion by Marco Falke.
2016-06-22 15:43:01 +02:00
MarcoFalke fa58f94ff7 [qa] pull-tester: Start longest test first 2016-06-20 11:19:34 +02:00
MarcoFalke fa3b379252 [qa] pull-tester: Fix assertion and check for run_parallel 2016-06-17 15:20:43 +02:00
Cory Fields ab95d5df3d build: a few ugly hacks to get the rpc tests working out-of-tree
- Link pull-tester/rpc-tests.py to the build dir
- Add the build-dir's config to the python path so that tests can find it
- The tests themselves are in srcdir
- Clean up __pycache__ in 'make clean'
2016-06-01 20:31:55 -04:00
MarcoFalke ccccc591a4 [qa] Add option --portseed to test_framework 2016-05-09 19:56:24 +02:00
MarcoFalke fa494dec79 [qa] pull-tester: Run rpc test in parallel 2016-05-09 19:56:16 +02:00
MarcoFalke 4e14afe42f
Merge #7971: [qa] Refactor test_framework and pull tester
fad3366 [qa] pull-tester: Adjust comment (MarcoFalke)
fafb33c [qa] Stop other nodes, even when one fails to stop (MarcoFalke)
2222dae [qa] Update README.md (MarcoFalke)
fabbf6b [qa] Refactor test_framework and pull tester (MarcoFalke)
2016-05-09 17:06:44 +02:00
Wladimir J. van der Laan 65fee8e699 test: Revert fatal-ness of missing python-zmq
It looks like travis is using the `travis.yml` from the branch, but runs
the test script from the branch merged into master. This causes
pull requests created before the QA tests python 3 transition to fail.

This temporarily reverts fa05e22e91
(#7851). It can be restored when this is no longer an issue.
2016-05-09 12:12:09 +02:00
MarcoFalke fad336648c [qa] pull-tester: Adjust comment 2016-05-08 14:09:14 +02:00
MarcoFalke fabbf6bd62 [qa] Refactor test_framework and pull tester
* log to stdout
* increase range for p2p and rpc ports
* UPPERCASE_CONSTANTS
* Stop nodes on CTRL+C
2016-05-06 12:43:34 +02:00
MarcoFalke fa389d4edc [qa] Switch to py3 2016-05-05 15:43:37 +02:00
Andrew Chow 7db0ecb90c Test for signing messages
New rpc test for signing and verifying messages.
2016-04-28 14:58:14 -04:00
MarcoFalke fae1f4ebfe [qa] rpc-tests: Fix link in comment and label error msg 2016-04-18 14:52:28 +02:00
MarcoFalke faa4f22342 [qa] pull-tester: Exit early when no tests are run 2016-04-09 23:08:29 +02:00
MarcoFalke fa05e22e91 [qa] pull-tester: Don't mute zmq ImportError 2016-04-09 21:21:56 +02:00
MarcoFalke fa524d9ddb [qa] Use python2/3 syntax 2016-03-31 18:35:17 +02: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
MarcoFalke faa9f01461 [qa] Don't run pruning.py twice 2016-03-29 16:49:45 +02:00
instagibbs 7eb702954e Add importprunedfunds rpc call 2016-03-23 10:40:38 -04:00
Alex Morcos b536a6fc83 Add p2p test for feefilter 2016-03-21 10:46:25 -04:00
NicolasDorier 71527a0f31 Test of BIP9 fork activation of mtp, csv, sequence_lock 2016-03-21 09:07:34 +00: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
Suhas Daftuar 8c74cedef5 RPC test for BIP9 warning logic 2016-03-16 15:09:39 +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
BtcDrak 6ba8b2a6c4 Add bip68-sequence.py to extended rpc tests 2016-02-13 15:42:24 +00: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 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 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 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
MarcoFalke fa24439ff3 Bump copyright headers to 2015 2015-12-13 18:08:39 +01:00
Wladimir J. van der Laan 20411903d7 test: Add basic test for reject code
Extend P2P test framework to make it possible to expect reject
codes for transactions and blocks.
2015-12-09 08:48:08 +01:00
Jonas Schnelli 110ff1142c
[Tests] Add mempool_limit.py test 2015-12-02 08:36:05 +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
Suhas Daftuar 2b31ab90c4 Add rpc test for prioritisetransaction 2015-12-01 11:03:57 +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
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
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
Gregory Sanders d52fbf00e3 Added additional config option for multiple RPC users. 2015-11-29 08:34:20 -05: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
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
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
Suhas Daftuar c800c95997 Remove unmaintained example test script_test.py 2015-11-16 09:50:50 -05:00
MarcoFalke 33b7f83c59 [qa] travis: cover *receivedby* rpcs 2015-11-14 22:33:13 +01:00
Wladimir J. van der Laan 5fcc14ee05
Merge pull request #6804
b5cbd39 Add basic coverage reporting for RPC tests (James O'Beirne)
2015-11-12 08:22:36 +01:00
James O'Beirne b5cbd396ca Add basic coverage reporting for RPC tests
Thanks to @MarcoFalke @dexX7 @laanwj for review.
2015-11-11 10:33:43 -08:00
Suhas Daftuar 97203f5606
Port test to rpc-test framework 2015-11-10 14:14:46 -05:00
Wladimir J. van der Laan 2980a18572 Fix crash in validateaddress with -disablewallet
Fix a null pointer dereference in validateaddress with -disablewallet. Also add a regression testcase.
2015-11-09 08:44:19 +01:00
Suhas Daftuar 17a073ae06
Add RPC test for -maxuploadtarget 2015-10-26 15:40:38 +01:00